Rev 8900 | Rev 11122 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 8900 | Rev 9336 | ||
---|---|---|---|
Line 197... | Line 197... | ||
197 | else { |
197 | else { |
198 | i=0; |
198 | i=0; |
199 | setreuid(getuid(),getuid());setregid(getgid(),getgid()); |
199 | setreuid(getuid(),getuid());setregid(getgid(),getgid()); |
200 | } |
200 | } |
201 | arg[i++]=cmdf; |
201 | arg[i++]=cmdf; |
202 | for(p=abuf; *p && i<1000; i++, p=find_word_start(p2)) |
202 | for(p=abuf; *p && i<1000; i++, p=find_word_start(p2)) |
- | 203 | if (*p=='\'') |
|
203 |
|
204 | {arg[i]=p2=++p; while(*p2 && *p2!='\'') p2++; if(*p2) *p2++=0;} |
204 |
|
205 | else |
- | 206 | { arg[i]=p; p2=find_word_end(p); if(*p2) *p2++=0; } |
|
205 | arg[i]=NULL; |
207 | arg[i]=NULL; |
206 | if(strchr(arg[0],'/')) execv(arg[0],arg); |
208 | if(strchr(arg[0],'/')) execv(arg[0],arg); |
207 | else execvp(arg[0],arg); |
209 | else execvp(arg[0],arg); |
208 | fprintf(stderr,"%s not_INStalled",progname); |
210 | fprintf(stderr,"%s not_INStalled",progname); |
209 | exit(127); |
211 | exit(127); |