From edabf75a54424053dbed0b36f1977755f1a633f6 Mon Sep 17 00:00:00 2001 From: Herb Lewis Date: Tue, 29 Jul 2003 20:11:18 +0000 Subject: split replace into replace and replace1 to allow setenv to be used by nsswitch modules. Add required libraries to get rid of undefined functions for libns_winbind.so and libns_wins.so (This used to be commit cec5bf5f99ca98b0f5ee84636fc18f0cb3079683) --- source3/lib/replace.c | 18 ------------------ source3/lib/replace1.c | 42 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+), 18 deletions(-) create mode 100644 source3/lib/replace1.c (limited to 'source3/lib') diff --git a/source3/lib/replace.c b/source3/lib/replace.c index 0c62ec9bfa..cd48b8d160 100644 --- a/source3/lib/replace.c +++ b/source3/lib/replace.c @@ -447,21 +447,3 @@ char *rep_inet_ntoa(struct in_addr ip) return t; } #endif - -#ifndef HAVE_SETENV - int setenv(const char *name, const char *value, int overwrite) -{ - char *p = NULL; - int ret = -1; - - asprintf(&p, "%s=%s", name, value); - - if (overwrite || getenv(name)) { - if (p) ret = putenv(p); - } else { - ret = 0; - } - - return ret; -} -#endif diff --git a/source3/lib/replace1.c b/source3/lib/replace1.c new file mode 100644 index 0000000000..e1be56eb12 --- /dev/null +++ b/source3/lib/replace1.c @@ -0,0 +1,42 @@ +/* + Unix SMB/CIFS implementation. + replacement routines for broken systems + Copyright (C) Andrew Tridgell 1992-1998 + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program 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 General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +*/ + +#include "includes.h" + + void replace1_dummy(void); + void replace1_dummy(void) {} + +#ifndef HAVE_SETENV + int setenv(const char *name, const char *value, int overwrite) +{ + char *p = NULL; + int ret = -1; + + asprintf(&p, "%s=%s", name, value); + + if (overwrite || getenv(name)) { + if (p) ret = putenv(p); + } else { + ret = 0; + } + + return ret; +} +#endif -- cgit