2
0
mirror of https://github.com/sudo-project/sudo.git synced 2025-09-01 14:55:12 +00:00

now initializes some fields that weren't getting set to -1

pretty gross -- need a rewrite.
This commit is contained in:
Todd C. Miller
1996-07-07 20:01:38 +00:00
parent 6d7e5a3091
commit f52c2aa2ed

View File

@@ -229,11 +229,16 @@ hostspec : ALL {
} }
; ;
opcmndlist : opcmnd opcmndlist : {
| opcmndlist ',' opcmnd cmnd_matches = no_passwd = runas_matches = -1;
} opcmnd
| opcmndlist ',' {
cmnd_matches = no_passwd = runas_matches = -1;
} opcmnd
; ;
opcmnd : cmnd { opcmnd : cmnd {
if (strcmp("root", runas_user) == 0)
runas_matches = TRUE; runas_matches = TRUE;
} }
| '!' { | '!' {
@@ -295,17 +300,17 @@ runasuser : NAME {
chkcmnd : cmnd { chkcmnd : cmnd {
$$=$1; $$ = $1;
} }
| nopassreq { | nopassreq {
$$=$1; $$ = $1;
} }
; ;
nopassreq : NOPASSWD cmnd { nopassreq : NOPASSWD cmnd {
if (host_matches == TRUE && user_matches == TRUE && if (host_matches == TRUE && user_matches == TRUE &&
$2 == TRUE) { $2 == TRUE) {
no_passwd=TRUE; no_passwd = TRUE;
$$ = TRUE; $$ = TRUE;
} }
} }
@@ -317,7 +322,7 @@ cmnd : ALL {
(void) puts("ALL"); (void) puts("ALL");
cmnd_matches = TRUE; cmnd_matches = TRUE;
$$=TRUE; $$ = TRUE;
} }
| ALIAS { | ALIAS {
if (printmatches == TRUE && host_matches == TRUE && if (printmatches == TRUE && host_matches == TRUE &&
@@ -325,7 +330,7 @@ cmnd : ALL {
(void) puts($1); (void) puts($1);
if (find_alias($1, CMND)) { if (find_alias($1, CMND)) {
cmnd_matches = TRUE; cmnd_matches = TRUE;
$$=TRUE; $$ = TRUE;
} }
(void) free($1); (void) free($1);
} }
@@ -344,7 +349,7 @@ cmnd : ALL {
if (command_matches(cmnd, (NewArgc > 1) ? if (command_matches(cmnd, (NewArgc > 1) ?
&NewArgv[1] : NULL, $1.cmnd, $1.args)) { &NewArgv[1] : NULL, $1.cmnd, $1.args)) {
cmnd_matches = TRUE; cmnd_matches = TRUE;
$$=TRUE; $$ = TRUE;
} }
(void) free($1.cmnd); (void) free($1.cmnd);