env.c (ba174a5e38b1ab764c4a36ef4dd83e80c4add148) | env.c (2966d28c322dcfa4b9db2558da0b91839e7798b9) |
---|---|
1/* 2 * Copyright (c) 1988, 1993, 1994 3 * The Regents of the University of California. All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 53 unchanged lines hidden (view full) --- 62static void usage(void); 63 64int 65main(int argc, char **argv) 66{ 67 char *altpath, **ep, *p, **parg; 68 char *cleanenv[1]; 69 int ch, want_clear; | 1/* 2 * Copyright (c) 1988, 1993, 1994 3 * The Regents of the University of California. All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 53 unchanged lines hidden (view full) --- 62static void usage(void); 63 64int 65main(int argc, char **argv) 66{ 67 char *altpath, **ep, *p, **parg; 68 char *cleanenv[1]; 69 int ch, want_clear; |
70 int rtrn; |
|
70 71 altpath = NULL; 72 want_clear = 0; 73 while ((ch = getopt(argc, argv, "-iP:S:v")) != -1) 74 switch(ch) { 75 case '-': 76 case 'i': 77 want_clear = 1; --- 22 unchanged lines hidden (view full) --- 100 environ = cleanenv; 101 cleanenv[0] = NULL; 102 if (env_verbosity) 103 fprintf(stderr, "#env clearing environ\n"); 104 } 105 for (argv += optind; *argv && (p = strchr(*argv, '=')); ++argv) { 106 if (env_verbosity) 107 fprintf(stderr, "#env setenv:\t%s\n", *argv); | 71 72 altpath = NULL; 73 want_clear = 0; 74 while ((ch = getopt(argc, argv, "-iP:S:v")) != -1) 75 switch(ch) { 76 case '-': 77 case 'i': 78 want_clear = 1; --- 22 unchanged lines hidden (view full) --- 101 environ = cleanenv; 102 cleanenv[0] = NULL; 103 if (env_verbosity) 104 fprintf(stderr, "#env clearing environ\n"); 105 } 106 for (argv += optind; *argv && (p = strchr(*argv, '=')); ++argv) { 107 if (env_verbosity) 108 fprintf(stderr, "#env setenv:\t%s\n", *argv); |
108 (void)setenv(*argv, ++p, 1); | 109 *p = '\0'; 110 rtrn = setenv(*argv, p + 1, 1); 111 *p = '='; 112 if (rtrn == -1) 113 err(EXIT_FAILURE, "setenv %s", *argv); |
109 } 110 if (*argv) { 111 if (altpath) 112 search_paths(altpath, argv); 113 if (env_verbosity) { 114 fprintf(stderr, "#env executing:\t%s\n", *argv); 115 for (parg = argv, argc = 0; *parg; parg++, argc++) 116 fprintf(stderr, "#env arg[%d]=\t'%s'\n", --- 20 unchanged lines hidden --- | 114 } 115 if (*argv) { 116 if (altpath) 117 search_paths(altpath, argv); 118 if (env_verbosity) { 119 fprintf(stderr, "#env executing:\t%s\n", *argv); 120 for (parg = argv, argc = 0; *parg; parg++, argc++) 121 fprintf(stderr, "#env arg[%d]=\t'%s'\n", --- 20 unchanged lines hidden --- |