diff options
author | Arthur de Jong <arthur@arthurdejong.org> | 2006-11-28 11:59:23 +0100 |
---|---|---|
committer | Arthur de Jong <arthur@arthurdejong.org> | 2006-11-28 11:59:23 +0100 |
commit | 742039b6ed98f637228575adb6217821ad3ea707 (patch) | |
tree | 576b47718a072a3f5326f7645fa9802a620283eb /server/xmalloc.c | |
parent | d524c2cfc47a4d5217957e8e910611de9fb5b0fd (diff) |
get as many files from the root directory as possible, moving all server related code to the server directory and moving and splitting the test code to the tests directory
git-svn-id: http://arthurdejong.org/svn/nss-pam-ldapd/libnss_ldapd@131 ef36b2f9-881f-0410-afb5-c4e39611909c
Diffstat (limited to 'server/xmalloc.c')
-rw-r--r-- | server/xmalloc.c | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/server/xmalloc.c b/server/xmalloc.c new file mode 100644 index 0000000..f316ad8 --- /dev/null +++ b/server/xmalloc.c @@ -0,0 +1,59 @@ +/* + xmalloc.c - malloc wrapper + + Copyright (C) 2002, 2003, 2006 Arthur de Jong. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public + License along with this library; if not, write to the Free + Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, + MA 02110-1301 USA +*/ + +#include "config.h" + +#include <stdlib.h> +#include <string.h> + +#include "xmalloc.h" +#include "log.h" + + +/* malloc wrapper */ +void *xmalloc(size_t size) +{ + void *tmp; + if ((tmp=malloc(size))==NULL) + { + log_log(LOG_CRIT,"malloc() failed"); + exit(1); + } + return tmp; +} + + +/* strdup wrapper */ +char *xstrdup(const char *s) +{ + char *tmp; + int l; + if (s==NULL) + { + log_log(LOG_CRIT,"xstrdup() called with NULL"); + exit(1); + } + l=strlen(s); + tmp=(char *)xmalloc((l+1)*sizeof(char)); + strncpy(tmp,s,l); + tmp[l]='\0'; + return tmp; +} |