00001 /* 00002 ** Copyright (C) 2005 by Kevin L. Mitchell <klmitch@mit.edu> 00003 ** 00004 ** This program is free software; you can redistribute it and/or modify 00005 ** it under the terms of the GNU General Public License as published by 00006 ** the Free Software Foundation; either version 2 of the License, or 00007 ** (at your option) any later version. 00008 ** 00009 ** This program is distributed in the hope that it will be useful, 00010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00012 ** GNU General Public License for more details. 00013 ** 00014 ** You should have received a copy of the GNU General Public License 00015 ** along with this program; if not, write to the Free Software 00016 ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00017 ** 00018 ** @(#)$Id: event_attr_init.c,v 1.4 2005/05/26 21:59:26 klmitch Exp $ 00019 */ 00027 #include "event_int.h" 00028 00029 #include <stdlib.h> 00030 00031 RCSTAG("@(#)$Id: event_attr_init.c,v 1.4 2005/05/26 21:59:26 klmitch Exp $"); 00032 00033 ev_err_t 00034 event_attr_init(ev_attr_t *attr) 00035 { 00036 ev_attr_t tmp; 00037 00038 ev_init(); /* initialize library... */ 00039 00040 if (!attr) /* gotta have a way to return it, ya know... */ 00041 ev_return(EINVAL); 00042 00043 if (!(tmp = (ev_attr_t)malloc(sizeof(_ev_attr_t)))) /* allocate memory */ 00044 ev_return(ENOMEM); 00045 00046 *tmp = *_ev_defattr; /* copy default attributes... */ 00047 00048 *attr = tmp; /* return the thing to the caller */ 00049 00050 ev_return(0); /* all done! */ 00051 }