From: Todd C. Miller Date: Fri, 13 Feb 2004 21:37:02 +0000 (+0000) Subject: regen X-Git-Tag: SUDO_1_6_8~161 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=a872ff0460fdab720502c026cc251710849a18a1;p=sudo regen --- diff --git a/lex.yy.c b/lex.yy.c index bfa2ae037..6be7f18d3 100644 --- a/lex.yy.c +++ b/lex.yy.c @@ -1,4 +1,4 @@ -/* $OpenBSD: flex.skl,v 1.6 2001/01/05 18:26:23 millert Exp $ */ +/* $OpenBSD: flex.skl,v 1.8 2004/02/09 11:38:31 espie Exp $ */ /* A lexical scanner generated by flex */ @@ -866,36 +866,18 @@ char *yytext; #line 2 "parse.lex" /* * Copyright (c) 1996, 1998-2004 Todd C. Miller - * All rights reserved. * - * This code is derived from software contributed by Chris Jepeway. + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. * - * This code is derived from software contributed by Chris Jepeway - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * 3. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * 4. Products derived from this software may not be called "Sudo" nor - * may "Sudo" appear in their names without specific prior written - * permission from the author. - * - * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, - * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY - * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL - * THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; - * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, 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. * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. @@ -974,7 +956,7 @@ extern void yyerror __P((char *)); #define INDEFS 5 -#line 978 "lex.yy.c" +#line 960 "lex.yy.c" /* Macros after this point can all be overridden by user definitions in * section 1. @@ -1128,9 +1110,9 @@ YY_DECL register char *yy_cp, *yy_bp; register int yy_act; -#line 117 "parse.lex" +#line 99 "parse.lex" -#line 1134 "lex.yy.c" +#line 1116 "lex.yy.c" if ( yy_init ) { @@ -1216,12 +1198,12 @@ do_action: /* This label is used only to access EOF actions. */ case 1: YY_RULE_SETUP -#line 118 "parse.lex" +#line 100 "parse.lex" BEGIN STARTDEFS; YY_BREAK case 2: YY_RULE_SETUP -#line 120 "parse.lex" +#line 102 "parse.lex" { BEGIN INDEFS; LEXTRACE("DEFVAR "); @@ -1232,7 +1214,7 @@ YY_RULE_SETUP case 3: YY_RULE_SETUP -#line 128 "parse.lex" +#line 110 "parse.lex" { BEGIN STARTDEFS; LEXTRACE(", "); @@ -1241,7 +1223,7 @@ YY_RULE_SETUP YY_BREAK case 4: YY_RULE_SETUP -#line 134 "parse.lex" +#line 116 "parse.lex" { LEXTRACE("= "); return('='); @@ -1249,7 +1231,7 @@ YY_RULE_SETUP YY_BREAK case 5: YY_RULE_SETUP -#line 139 "parse.lex" +#line 121 "parse.lex" { LEXTRACE("+= "); return('+'); @@ -1257,7 +1239,7 @@ YY_RULE_SETUP YY_BREAK case 6: YY_RULE_SETUP -#line 144 "parse.lex" +#line 126 "parse.lex" { LEXTRACE("-= "); return('-'); @@ -1265,7 +1247,7 @@ YY_RULE_SETUP YY_BREAK case 7: YY_RULE_SETUP -#line 149 "parse.lex" +#line 131 "parse.lex" { LEXTRACE("WORD(1) "); fill(yytext + 1, yyleng - 2); @@ -1274,7 +1256,7 @@ YY_RULE_SETUP YY_BREAK case 8: YY_RULE_SETUP -#line 155 "parse.lex" +#line 137 "parse.lex" { LEXTRACE("WORD(2) "); fill(yytext, yyleng); @@ -1285,7 +1267,7 @@ YY_RULE_SETUP case 9: YY_RULE_SETUP -#line 163 "parse.lex" +#line 145 "parse.lex" { LEXTRACE("QUOTEDCHAR "); fill_args(yytext + 1, 1, sawspace); @@ -1294,7 +1276,7 @@ YY_RULE_SETUP YY_BREAK case 10: YY_RULE_SETUP -#line 169 "parse.lex" +#line 151 "parse.lex" { BEGIN INITIAL; unput(*yytext); @@ -1303,7 +1285,7 @@ YY_RULE_SETUP YY_BREAK case 11: YY_RULE_SETUP -#line 175 "parse.lex" +#line 157 "parse.lex" { LEXTRACE("ARG "); fill_args(yytext, yyleng, sawspace); @@ -1313,7 +1295,7 @@ YY_RULE_SETUP case 12: YY_RULE_SETUP -#line 182 "parse.lex" +#line 164 "parse.lex" { BEGIN GOTDEFS; switch (yytext[8]) { @@ -1334,7 +1316,7 @@ YY_RULE_SETUP YY_BREAK case 13: YY_RULE_SETUP -#line 200 "parse.lex" +#line 182 "parse.lex" { fill(yytext, yyleng); switch (*yytext) { @@ -1356,7 +1338,7 @@ YY_RULE_SETUP YY_BREAK case 14: YY_RULE_SETUP -#line 219 "parse.lex" +#line 201 "parse.lex" { /* cmnd does not require passwd for this user */ LEXTRACE("NOPASSWD "); @@ -1365,7 +1347,7 @@ YY_RULE_SETUP YY_BREAK case 15: YY_RULE_SETUP -#line 225 "parse.lex" +#line 207 "parse.lex" { /* cmnd requires passwd for this user */ LEXTRACE("PASSWD "); @@ -1374,7 +1356,7 @@ YY_RULE_SETUP YY_BREAK case 16: YY_RULE_SETUP -#line 231 "parse.lex" +#line 213 "parse.lex" { LEXTRACE("NOEXEC "); return(NOEXEC); @@ -1382,7 +1364,7 @@ YY_RULE_SETUP YY_BREAK case 17: YY_RULE_SETUP -#line 236 "parse.lex" +#line 218 "parse.lex" { LEXTRACE("EXEC "); return(EXEC); @@ -1390,7 +1372,7 @@ YY_RULE_SETUP YY_BREAK case 18: YY_RULE_SETUP -#line 241 "parse.lex" +#line 223 "parse.lex" { /* netgroup */ fill(yytext, yyleng); @@ -1400,7 +1382,7 @@ YY_RULE_SETUP YY_BREAK case 19: YY_RULE_SETUP -#line 248 "parse.lex" +#line 230 "parse.lex" { /* UN*X group */ fill(yytext, yyleng); @@ -1410,7 +1392,7 @@ YY_RULE_SETUP YY_BREAK case 20: YY_RULE_SETUP -#line 255 "parse.lex" +#line 237 "parse.lex" { fill(yytext, yyleng); LEXTRACE("NTWKADDR "); @@ -1419,7 +1401,7 @@ YY_RULE_SETUP YY_BREAK case 21: YY_RULE_SETUP -#line 261 "parse.lex" +#line 243 "parse.lex" { fill(yytext, yyleng); LEXTRACE("NTWKADDR "); @@ -1428,7 +1410,7 @@ YY_RULE_SETUP YY_BREAK case 22: YY_RULE_SETUP -#line 267 "parse.lex" +#line 249 "parse.lex" { BEGIN GOTRUNAS; LEXTRACE("RUNAS "); @@ -1437,7 +1419,7 @@ YY_RULE_SETUP YY_BREAK case 23: YY_RULE_SETUP -#line 273 "parse.lex" +#line 255 "parse.lex" { if (strcmp(yytext, "ALL") == 0) { LEXTRACE("ALL "); @@ -1451,7 +1433,7 @@ YY_RULE_SETUP YY_BREAK case 24: YY_RULE_SETUP -#line 284 "parse.lex" +#line 266 "parse.lex" { /* username/uid that user can run command as */ fill(yytext, yyleng); @@ -1461,14 +1443,14 @@ YY_RULE_SETUP YY_BREAK case 25: YY_RULE_SETUP -#line 291 "parse.lex" +#line 273 "parse.lex" { BEGIN INITIAL; } YY_BREAK case 26: YY_RULE_SETUP -#line 295 "parse.lex" +#line 277 "parse.lex" { BEGIN GOTCMND; LEXTRACE("COMMAND "); @@ -1477,7 +1459,7 @@ YY_RULE_SETUP YY_BREAK case 27: YY_RULE_SETUP -#line 301 "parse.lex" +#line 283 "parse.lex" { /* directories can't have args... */ if (yytext[yyleng - 1] == '/') { @@ -1493,7 +1475,7 @@ YY_RULE_SETUP YY_BREAK case 28: YY_RULE_SETUP -#line 314 "parse.lex" +#line 296 "parse.lex" { /* a word */ fill(yytext, yyleng); @@ -1503,7 +1485,7 @@ YY_RULE_SETUP YY_BREAK case 29: YY_RULE_SETUP -#line 321 "parse.lex" +#line 303 "parse.lex" { LEXTRACE(", "); return(','); @@ -1511,7 +1493,7 @@ YY_RULE_SETUP YY_BREAK case 30: YY_RULE_SETUP -#line 326 "parse.lex" +#line 308 "parse.lex" { LEXTRACE("= "); return('='); @@ -1519,7 +1501,7 @@ YY_RULE_SETUP YY_BREAK case 31: YY_RULE_SETUP -#line 331 "parse.lex" +#line 313 "parse.lex" { LEXTRACE(": "); return(':'); @@ -1527,7 +1509,7 @@ YY_RULE_SETUP YY_BREAK case 32: YY_RULE_SETUP -#line 336 "parse.lex" +#line 318 "parse.lex" { if (yyleng % 2 == 1) return('!'); /* return '!' */ @@ -1535,7 +1517,7 @@ YY_RULE_SETUP YY_BREAK case 33: YY_RULE_SETUP -#line 341 "parse.lex" +#line 323 "parse.lex" { BEGIN INITIAL; ++sudolineno; @@ -1545,14 +1527,14 @@ YY_RULE_SETUP YY_BREAK case 34: YY_RULE_SETUP -#line 348 "parse.lex" +#line 330 "parse.lex" { /* throw away space/tabs */ sawspace = TRUE; /* but remember for fill_args */ } YY_BREAK case 35: YY_RULE_SETUP -#line 352 "parse.lex" +#line 334 "parse.lex" { sawspace = TRUE; /* remember for fill_args */ ++sudolineno; @@ -1561,7 +1543,7 @@ YY_RULE_SETUP YY_BREAK case 36: YY_RULE_SETUP -#line 358 "parse.lex" +#line 340 "parse.lex" { BEGIN INITIAL; ++sudolineno; @@ -1571,7 +1553,7 @@ YY_RULE_SETUP YY_BREAK case 37: YY_RULE_SETUP -#line 365 "parse.lex" +#line 347 "parse.lex" { LEXTRACE("ERROR "); return(ERROR); @@ -1583,7 +1565,7 @@ case YY_STATE_EOF(GOTDEFS): case YY_STATE_EOF(GOTCMND): case YY_STATE_EOF(STARTDEFS): case YY_STATE_EOF(INDEFS): -#line 370 "parse.lex" +#line 352 "parse.lex" { if (YY_START != INITIAL) { BEGIN INITIAL; @@ -1595,10 +1577,10 @@ case YY_STATE_EOF(INDEFS): YY_BREAK case 38: YY_RULE_SETUP -#line 379 "parse.lex" +#line 361 "parse.lex" ECHO; YY_BREAK -#line 1602 "lex.yy.c" +#line 1584 "lex.yy.c" case YY_END_OF_BUFFER: { @@ -2164,7 +2146,7 @@ YY_BUFFER_STATE b; #ifndef YY_ALWAYS_INTERACTIVE #ifndef YY_NEVER_INTERACTIVE -extern int isatty YY_PROTO(( int )); +#include #endif #endif @@ -2487,7 +2469,7 @@ int main() return 0; } #endif -#line 379 "parse.lex" +#line 361 "parse.lex" static void fill(s, len) diff --git a/sudo.tab.c b/sudo.tab.c index a9e5be1cf..9e72e9dda 100644 --- a/sudo.tab.c +++ b/sudo.tab.c @@ -19,36 +19,18 @@ static char yyrcsid[] #line 2 "parse.yacc" /* * Copyright (c) 1996, 1998-2004 Todd C. Miller - * All rights reserved. * - * This code is derived from software contributed by Chris Jepeway. + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * 3. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * 4. Products derived from this software may not be called "Sudo" nor - * may "Sudo" appear in their names without specific prior written - * permission from the author. - * - * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, - * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY - * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL - * THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; - * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, - * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, 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. * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * @@ -233,7 +215,7 @@ yyerror(s) } parse_error = TRUE; } -#line 220 "parse.yacc" +#line 202 "parse.yacc" #ifndef YYSTYPE_DEFINED #define YYSTYPE_DEFINED typedef union { @@ -243,7 +225,7 @@ typedef union { int tok; } YYSTYPE; #endif /* YYSTYPE_DEFINED */ -#line 247 "sudo.tab.c" +#line 229 "sudo.tab.c" #define COMMAND 257 #define ALIAS 258 #define DEFVAR 259 @@ -673,7 +655,7 @@ short *yyss; short *yysslim; YYSTYPE *yyvs; int yystacksize; -#line 887 "parse.yacc" +#line 869 "parse.yacc" #define MOREALIASES (32) aliasinfo *aliases = NULL; @@ -1030,7 +1012,7 @@ init_parser() if (printmatches == TRUE) expand_match_list(); } -#line 982 "sudo.tab.c" +#line 964 "sudo.tab.c" /* allocate initial stack or double stack size, up to YYMAXDEPTH */ #if defined(__cplusplus) || defined(__STDC__) static int yygrowstack(void) @@ -1224,85 +1206,85 @@ yyreduce: switch (yyn) { case 3: -#line 273 "parse.yacc" +#line 255 "parse.yacc" { ; } break; case 4: -#line 275 "parse.yacc" +#line 257 "parse.yacc" { yyerrok; } break; case 5: -#line 276 "parse.yacc" +#line 258 "parse.yacc" { push; } break; case 6: -#line 276 "parse.yacc" +#line 258 "parse.yacc" { while (top && user_matches != TRUE) pop; } break; case 7: -#line 281 "parse.yacc" +#line 263 "parse.yacc" { ; } break; case 8: -#line 283 "parse.yacc" +#line 265 "parse.yacc" { ; } break; case 9: -#line 285 "parse.yacc" +#line 267 "parse.yacc" { ; } break; case 10: -#line 287 "parse.yacc" +#line 269 "parse.yacc" { ; } break; case 11: -#line 289 "parse.yacc" +#line 271 "parse.yacc" { ; } break; case 13: -#line 295 "parse.yacc" +#line 277 "parse.yacc" { defaults_matches = TRUE; } break; case 14: -#line 298 "parse.yacc" +#line 280 "parse.yacc" { push; } break; case 15: -#line 298 "parse.yacc" +#line 280 "parse.yacc" { defaults_matches = user_matches; pop; } break; case 16: -#line 302 "parse.yacc" +#line 284 "parse.yacc" { push; } break; case 17: -#line 302 "parse.yacc" +#line 284 "parse.yacc" { defaults_matches = yyvsp[0].BOOLEAN == TRUE; pop; } break; case 18: -#line 306 "parse.yacc" +#line 288 "parse.yacc" { push; } break; case 19: -#line 306 "parse.yacc" +#line 288 "parse.yacc" { defaults_matches = host_matches; pop; } break; case 22: -#line 316 "parse.yacc" +#line 298 "parse.yacc" { if (defaults_matches == TRUE && !set_default(yyvsp[0].string, NULL, TRUE)) { @@ -1313,7 +1295,7 @@ case 22: } break; case 23: -#line 324 "parse.yacc" +#line 306 "parse.yacc" { if (defaults_matches == TRUE && !set_default(yyvsp[0].string, NULL, FALSE)) { @@ -1324,7 +1306,7 @@ case 23: } break; case 24: -#line 332 "parse.yacc" +#line 314 "parse.yacc" { if (defaults_matches == TRUE && !set_default(yyvsp[-2].string, yyvsp[0].string, TRUE)) { @@ -1336,7 +1318,7 @@ case 24: } break; case 25: -#line 341 "parse.yacc" +#line 323 "parse.yacc" { if (defaults_matches == TRUE && !set_default(yyvsp[-2].string, yyvsp[0].string, '+')) { @@ -1348,7 +1330,7 @@ case 25: } break; case 26: -#line 350 "parse.yacc" +#line 332 "parse.yacc" { if (defaults_matches == TRUE && !set_default(yyvsp[-2].string, yyvsp[0].string, '-')) { @@ -1360,7 +1342,7 @@ case 26: } break; case 29: -#line 365 "parse.yacc" +#line 347 "parse.yacc" { /* * We already did a push if necessary in @@ -1374,27 +1356,27 @@ case 29: } break; case 30: -#line 378 "parse.yacc" +#line 360 "parse.yacc" { if (yyvsp[0].BOOLEAN != -1) host_matches = yyvsp[0].BOOLEAN; } break; case 31: -#line 382 "parse.yacc" +#line 364 "parse.yacc" { if (yyvsp[0].BOOLEAN != -1) host_matches = ! yyvsp[0].BOOLEAN; } break; case 32: -#line 388 "parse.yacc" +#line 370 "parse.yacc" { yyval.BOOLEAN = TRUE; } break; case 33: -#line 391 "parse.yacc" +#line 373 "parse.yacc" { if (addr_matches(yyvsp[0].string)) yyval.BOOLEAN = TRUE; @@ -1404,7 +1386,7 @@ case 33: } break; case 34: -#line 398 "parse.yacc" +#line 380 "parse.yacc" { if (netgr_matches(yyvsp[0].string, user_host, user_shost, NULL)) yyval.BOOLEAN = TRUE; @@ -1414,7 +1396,7 @@ case 34: } break; case 35: -#line 405 "parse.yacc" +#line 387 "parse.yacc" { if (hostname_matches(user_shost, user_host, yyvsp[0].string) == 0) yyval.BOOLEAN = TRUE; @@ -1424,7 +1406,7 @@ case 35: } break; case 36: -#line 412 "parse.yacc" +#line 394 "parse.yacc" { aliasinfo *aip = find_alias(yyvsp[0].string, HOST_ALIAS); @@ -1449,7 +1431,7 @@ case 36: } break; case 39: -#line 440 "parse.yacc" +#line 422 "parse.yacc" { /* * Push the entry onto the stack if it is worth @@ -1477,14 +1459,14 @@ case 39: } break; case 40: -#line 467 "parse.yacc" +#line 449 "parse.yacc" { if (yyvsp[0].BOOLEAN != -1) cmnd_matches = yyvsp[0].BOOLEAN; } break; case 41: -#line 471 "parse.yacc" +#line 453 "parse.yacc" { if (printmatches == TRUE) { if (in_alias == TRUE) @@ -1496,14 +1478,14 @@ case 41: } break; case 42: -#line 479 "parse.yacc" +#line 461 "parse.yacc" { if (yyvsp[0].BOOLEAN != -1) cmnd_matches = ! yyvsp[0].BOOLEAN; } break; case 43: -#line 485 "parse.yacc" +#line 467 "parse.yacc" { if (printmatches == TRUE && host_matches == TRUE && user_matches == TRUE) { @@ -1529,17 +1511,17 @@ case 43: } break; case 44: -#line 508 "parse.yacc" +#line 490 "parse.yacc" { runas_matches = (yyvsp[0].BOOLEAN == TRUE ? TRUE : FALSE); } break; case 45: -#line 513 "parse.yacc" +#line 495 "parse.yacc" { ; } break; case 46: -#line 514 "parse.yacc" +#line 496 "parse.yacc" { /* Later entries override earlier ones. */ if (yyvsp[0].BOOLEAN != -1) @@ -1549,11 +1531,11 @@ case 46: } break; case 47: -#line 523 "parse.yacc" +#line 505 "parse.yacc" { ; } break; case 48: -#line 524 "parse.yacc" +#line 506 "parse.yacc" { if (printmatches == TRUE) { if (in_alias == TRUE) @@ -1565,14 +1547,14 @@ case 48: } break; case 49: -#line 532 "parse.yacc" +#line 514 "parse.yacc" { /* Set $$ to the negation of runasuser */ yyval.BOOLEAN = (yyvsp[0].BOOLEAN == -1 ? -1 : ! yyvsp[0].BOOLEAN); } break; case 50: -#line 538 "parse.yacc" +#line 520 "parse.yacc" { if (printmatches == TRUE) { if (in_alias == TRUE) @@ -1589,7 +1571,7 @@ case 50: } break; case 51: -#line 552 "parse.yacc" +#line 534 "parse.yacc" { if (printmatches == TRUE) { if (in_alias == TRUE) @@ -1606,7 +1588,7 @@ case 51: } break; case 52: -#line 566 "parse.yacc" +#line 548 "parse.yacc" { if (printmatches == TRUE) { if (in_alias == TRUE) @@ -1623,7 +1605,7 @@ case 52: } break; case 53: -#line 580 "parse.yacc" +#line 562 "parse.yacc" { aliasinfo *aip = find_alias(yyvsp[0].string, RUNAS_ALIAS); @@ -1655,7 +1637,7 @@ case 53: } break; case 54: -#line 609 "parse.yacc" +#line 591 "parse.yacc" { if (printmatches == TRUE) { if (in_alias == TRUE) @@ -1668,7 +1650,7 @@ case 54: } break; case 55: -#line 621 "parse.yacc" +#line 603 "parse.yacc" { /* Inherit {NOPASSWD,PASSWD,NOEXEC,EXEC} status. */ if (printmatches == TRUE && host_matches == TRUE && @@ -1685,7 +1667,7 @@ case 55: } break; case 56: -#line 635 "parse.yacc" +#line 617 "parse.yacc" { no_passwd = TRUE; if (printmatches == TRUE && host_matches == TRUE && @@ -1694,7 +1676,7 @@ case 56: } break; case 57: -#line 641 "parse.yacc" +#line 623 "parse.yacc" { no_passwd = FALSE; if (printmatches == TRUE && host_matches == TRUE && @@ -1703,7 +1685,7 @@ case 57: } break; case 58: -#line 647 "parse.yacc" +#line 629 "parse.yacc" { no_execve = TRUE; if (printmatches == TRUE && host_matches == TRUE && @@ -1712,7 +1694,7 @@ case 58: } break; case 59: -#line 653 "parse.yacc" +#line 635 "parse.yacc" { no_execve = FALSE; if (printmatches == TRUE && host_matches == TRUE && @@ -1721,7 +1703,7 @@ case 59: } break; case 60: -#line 661 "parse.yacc" +#line 643 "parse.yacc" { if (printmatches == TRUE) { if (in_alias == TRUE) @@ -1741,7 +1723,7 @@ case 60: } break; case 61: -#line 678 "parse.yacc" +#line 660 "parse.yacc" { aliasinfo *aip; @@ -1773,7 +1755,7 @@ case 61: } break; case 62: -#line 707 "parse.yacc" +#line 689 "parse.yacc" { if (printmatches == TRUE) { if (in_alias == TRUE) { @@ -1802,11 +1784,11 @@ case 62: } break; case 65: -#line 739 "parse.yacc" +#line 721 "parse.yacc" { push; } break; case 66: -#line 739 "parse.yacc" +#line 721 "parse.yacc" { if ((host_matches != -1 || pedantic) && !add_alias(yyvsp[-3].string, HOST_ALIAS, host_matches)) { @@ -1817,7 +1799,7 @@ case 66: } break; case 71: -#line 757 "parse.yacc" +#line 739 "parse.yacc" { push; if (printmatches == TRUE) { @@ -1830,7 +1812,7 @@ case 71: } break; case 72: -#line 766 "parse.yacc" +#line 748 "parse.yacc" { if ((cmnd_matches != -1 || pedantic) && !add_alias(yyvsp[-3].string, CMND_ALIAS, cmnd_matches)) { @@ -1845,11 +1827,11 @@ case 72: } break; case 73: -#line 780 "parse.yacc" +#line 762 "parse.yacc" { ; } break; case 77: -#line 788 "parse.yacc" +#line 770 "parse.yacc" { if (printmatches == TRUE) { in_alias = TRUE; @@ -1861,7 +1843,7 @@ case 77: } break; case 78: -#line 796 "parse.yacc" +#line 778 "parse.yacc" { if ((yyvsp[0].BOOLEAN != -1 || pedantic) && !add_alias(yyvsp[-3].string, RUNAS_ALIAS, yyvsp[0].BOOLEAN)) { @@ -1875,11 +1857,11 @@ case 78: } break; case 81: -#line 813 "parse.yacc" +#line 795 "parse.yacc" { push; } break; case 82: -#line 813 "parse.yacc" +#line 795 "parse.yacc" { if ((user_matches != -1 || pedantic) && !add_alias(yyvsp[-3].string, USER_ALIAS, user_matches)) { @@ -1891,21 +1873,21 @@ case 82: } break; case 85: -#line 828 "parse.yacc" +#line 810 "parse.yacc" { if (yyvsp[0].BOOLEAN != -1) user_matches = yyvsp[0].BOOLEAN; } break; case 86: -#line 832 "parse.yacc" +#line 814 "parse.yacc" { if (yyvsp[0].BOOLEAN != -1) user_matches = ! yyvsp[0].BOOLEAN; } break; case 87: -#line 838 "parse.yacc" +#line 820 "parse.yacc" { if (strcmp(yyvsp[0].string, user_name) == 0) yyval.BOOLEAN = TRUE; @@ -1915,7 +1897,7 @@ case 87: } break; case 88: -#line 845 "parse.yacc" +#line 827 "parse.yacc" { if (usergr_matches(yyvsp[0].string, user_name)) yyval.BOOLEAN = TRUE; @@ -1925,7 +1907,7 @@ case 88: } break; case 89: -#line 852 "parse.yacc" +#line 834 "parse.yacc" { if (netgr_matches(yyvsp[0].string, NULL, NULL, user_name)) yyval.BOOLEAN = TRUE; @@ -1935,7 +1917,7 @@ case 89: } break; case 90: -#line 859 "parse.yacc" +#line 841 "parse.yacc" { aliasinfo *aip = find_alias(yyvsp[0].string, USER_ALIAS); @@ -1960,12 +1942,12 @@ case 90: } break; case 91: -#line 881 "parse.yacc" +#line 863 "parse.yacc" { yyval.BOOLEAN = TRUE; } break; -#line 1917 "sudo.tab.c" +#line 1899 "sudo.tab.c" } yyssp -= yym; yystate = *yyssp;