diff options
Diffstat (limited to 'newlib/libc/argz/envz_add.c')
-rw-r--r-- | newlib/libc/argz/envz_add.c | 47 |
1 files changed, 0 insertions, 47 deletions
diff --git a/newlib/libc/argz/envz_add.c b/newlib/libc/argz/envz_add.c deleted file mode 100644 index 3e91a5867..000000000 --- a/newlib/libc/argz/envz_add.c +++ /dev/null @@ -1,47 +0,0 @@ -/* Copyright (C) 2002 by Red Hat, Incorporated. All rights reserved. - * - * Permission to use, copy, modify, and distribute this software - * is freely granted, provided that this notice is preserved. - */ - -#include <errno.h> -#include <sys/types.h> -#include <string.h> -#include <stdlib.h> -#include <argz.h> -#include <envz.h> - -error_t -_DEFUN (envz_add, (envz, envz_len, name, value), - char **envz _AND - size_t *envz_len _AND - const char *name _AND - const char *value) -{ - char *concat = NULL; - int name_len = 0; - int val_len = 0; - int retval = 0; - - envz_remove(envz, envz_len, name); - - if (value) - { - name_len = strlen(name); - val_len = strlen(value); - if(!(concat = (char *) malloc(name_len + val_len + 2))) - return ENOMEM; - - memcpy(concat, name, name_len); - concat[name_len] = '='; - memcpy(concat + name_len + 1, value, val_len + 1); - - retval = argz_add(envz, envz_len, concat); - free(concat); - } - else - { - retval = argz_add(envz, envz_len, name); - } - return retval; -} |