exec.c (5070) | exec.c (17141) |
---|---|
1/*- 2 * Copyright (c) 1991, 1993 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 --- 91 unchanged lines hidden (view full) --- 100 int sverrno; 101 char **argv; 102 103#if __STDC__ 104 va_start(ap, arg); 105#else 106 va_start(ap); 107#endif | 1/*- 2 * Copyright (c) 1991, 1993 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 --- 91 unchanged lines hidden (view full) --- 100 int sverrno; 101 char **argv; 102 103#if __STDC__ 104 va_start(ap, arg); 105#else 106 va_start(ap); 107#endif |
108 if (argv = buildargv(ap, arg, NULL)) | 108 if ( (argv = buildargv(ap, arg, NULL)) ) |
109 (void)execve(name, argv, environ); 110 va_end(ap); 111 sverrno = errno; 112 free(argv); 113 errno = sverrno; 114 return (-1); 115} 116 --- 11 unchanged lines hidden (view full) --- 128 int sverrno; 129 char **argv, **envp; 130 131#if __STDC__ 132 va_start(ap, arg); 133#else 134 va_start(ap); 135#endif | 109 (void)execve(name, argv, environ); 110 va_end(ap); 111 sverrno = errno; 112 free(argv); 113 errno = sverrno; 114 return (-1); 115} 116 --- 11 unchanged lines hidden (view full) --- 128 int sverrno; 129 char **argv, **envp; 130 131#if __STDC__ 132 va_start(ap, arg); 133#else 134 va_start(ap); 135#endif |
136 if (argv = buildargv(ap, arg, &envp)) | 136 if ( (argv = buildargv(ap, arg, &envp)) ) |
137 (void)execve(name, argv, envp); 138 va_end(ap); 139 sverrno = errno; 140 free(argv); 141 errno = sverrno; 142 return (-1); 143} 144 --- 11 unchanged lines hidden (view full) --- 156 int sverrno; 157 char **argv; 158 159#if __STDC__ 160 va_start(ap, arg); 161#else 162 va_start(ap); 163#endif | 137 (void)execve(name, argv, envp); 138 va_end(ap); 139 sverrno = errno; 140 free(argv); 141 errno = sverrno; 142 return (-1); 143} 144 --- 11 unchanged lines hidden (view full) --- 156 int sverrno; 157 char **argv; 158 159#if __STDC__ 160 va_start(ap, arg); 161#else 162 va_start(ap); 163#endif |
164 if (argv = buildargv(ap, arg, NULL)) | 164 if ( (argv = buildargv(ap, arg, NULL)) ) |
165 (void)execvp(name, argv); 166 va_end(ap); 167 sverrno = errno; 168 free(argv); 169 errno = sverrno; 170 return (-1); 171} 172 --- 26 unchanged lines hidden (view full) --- 199 bp = buf; 200 201 /* Get the path we're searching. */ 202 if (!(path = getenv("PATH"))) 203 path = _PATH_DEFPATH; 204 cur = path = strdup(path); 205 206 eacces = etxtbsy = 0; | 165 (void)execvp(name, argv); 166 va_end(ap); 167 sverrno = errno; 168 free(argv); 169 errno = sverrno; 170 return (-1); 171} 172 --- 26 unchanged lines hidden (view full) --- 199 bp = buf; 200 201 /* Get the path we're searching. */ 202 if (!(path = getenv("PATH"))) 203 path = _PATH_DEFPATH; 204 cur = path = strdup(path); 205 206 eacces = etxtbsy = 0; |
207 while (p = strsep(&cur, ":")) { | 207 while ( (p = strsep(&cur, ":")) ) { |
208 /* 209 * It's a SHELL path -- double, leading and trailing colons 210 * mean the current directory. 211 */ 212 if (!*p) { 213 p = "."; 214 lp = 1; 215 } else --- 54 unchanged lines hidden --- | 208 /* 209 * It's a SHELL path -- double, leading and trailing colons 210 * mean the current directory. 211 */ 212 if (!*p) { 213 p = "."; 214 lp = 1; 215 } else --- 54 unchanged lines hidden --- |