diff options
Diffstat (limited to 'Modules/environment.c')
-rw-r--r-- | Modules/environment.c | 104 |
1 files changed, 0 insertions, 104 deletions
diff --git a/Modules/environment.c b/Modules/environment.c deleted file mode 100644 index 977e9172f4..0000000000 --- a/Modules/environment.c +++ /dev/null @@ -1,104 +0,0 @@ -/* -# Copyright 1995, InfoSeek Corporation -# All rights reserved. -# Written by Andy Bensky -# -# Permission to use, copy, modify, and distribute this Python software -# and its associated documentation for any purpose (subject to the -# restriction in the following sentence) without fee is hereby granted, -# provided that the above copyright notice appears in all copies, and -# that both that copyright notice and this permission notice appear in -# supporting documentation, and that the name of InfoSeek not be used in -# advertising or publicity pertaining to distribution of the software -# without specific, prior written permission. This permission is -# explicitly restricted to the copying and modification of the software -# to remain in Python, compiled Python, or other languages (such as C) -# wherein the modified or derived code is exclusively imported into a -# Python module. -# -# INFOSEEK CORPORATION DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS -# SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND -# FITNESS. IN NO EVENT SHALL INFOSEEK CORPORATION BE LIABLE FOR ANY -# DIRECT, SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN -# AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING -# OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE, -# EVEN IF INFOSEEK SHALL HAVE BEEN MADE AWARE OF THE POSSIBILITY OF SUCH -# DAMAGES. -*/ - -/* Hooks to call the Unix putenv() to modify the environment -*/ - -#include "allobjects.h" -#include <stdlib.h> -#include <assert.h> -#include <string.h> - -/* Error conditions that can be raised */ - -/* Headers for functions accessible from Python as module methods */ -static object *put_environ( object *self, object *args ); - -static struct methodlist environ_methods[] = { - {"putenv", put_environ}, - {NULL, NULL} -}; - - -/* - * Name: initenvironment - * Description: - * Initialzation function that Python will use to establish callbacks to - * the methods of this module. - * - * Returns: - * void - - * - * Notes: - */ -void initenvironment() -{ - object *m, *d; - - m = initmodule("environment", environ_methods); - d = getmoduledict(m); -} - -/* - * Name: put_environ - * Description: - * accepts 2 string objects as arguments and forms a string of the - * form string1=string2 that can be passed to the putenv() system call. - * - * Returns: - * None object if successfull, otherwise raises a SystemError exception - * - * - * Notes: - */ -static object *put_environ( object *self, object *args ) -{ - char *string1, *string2; - char *set_str; - object *return_object = None; - - if (args && getargs(args, "(ss)", &string1, &string2)) - { - set_str = malloc(strlen(string1) + strlen(string2) + 2); - assert( set_str ); - (void) sprintf(set_str, "%s=%s", string1, string2); - if ( putenv( set_str ) ) - { - err_setstr(SystemError, "Error in system putenv call."); - return_object = 0; - } - } - else - { - err_setstr(TypeError, "Usage: putenv(string1, string2)"); - return_object = 0; - } - - return( return_object ); -} |