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/replace1.c | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 source3/lib/replace1.c (limited to 'source3/lib/replace1.c') 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