From: Todd C. Miller Date: Wed, 17 Jan 2018 16:52:09 +0000 (-0700) Subject: Remove duplicate options %type X-Git-Tag: SUDO_1_8_23^2~194 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=b161ebe62d1b0bb982e90e4af71808beaf1a0a99;p=sudo Remove duplicate options %type --- diff --git a/plugins/sudoers/gram.c b/plugins/sudoers/gram.c index f457af4e5..2109f4056 100644 --- a/plugins/sudoers/gram.c +++ b/plugins/sudoers/gram.c @@ -667,7 +667,7 @@ short *yysslim; YYSTYPE *yyvs; unsigned int yystacksize; int yyparse(void); -#line 899 "gram.y" +#line 898 "gram.y" void sudoerserror(const char *s) { @@ -1214,23 +1214,23 @@ yyreduce: switch (yyn) { case 1: -#line 176 "gram.y" +#line 175 "gram.y" { ; } break; case 5: -#line 184 "gram.y" +#line 183 "gram.y" { ; } break; case 6: -#line 187 "gram.y" +#line 186 "gram.y" { yyerrok; } break; case 7: -#line 190 "gram.y" +#line 189 "gram.y" { if (!add_userspec(yyvsp[-1].member, yyvsp[0].privilege)) { sudoerserror(N_("unable to allocate memory")); @@ -1239,73 +1239,73 @@ case 7: } break; case 8: -#line 196 "gram.y" +#line 195 "gram.y" { ; } break; case 9: -#line 199 "gram.y" +#line 198 "gram.y" { ; } break; case 10: -#line 202 "gram.y" +#line 201 "gram.y" { ; } break; case 11: -#line 205 "gram.y" +#line 204 "gram.y" { ; } break; case 12: -#line 208 "gram.y" +#line 207 "gram.y" { if (!add_defaults(DEFAULTS, NULL, yyvsp[0].defaults)) YYERROR; } break; case 13: -#line 212 "gram.y" +#line 211 "gram.y" { if (!add_defaults(DEFAULTS_USER, yyvsp[-1].member, yyvsp[0].defaults)) YYERROR; } break; case 14: -#line 216 "gram.y" +#line 215 "gram.y" { if (!add_defaults(DEFAULTS_RUNAS, yyvsp[-1].member, yyvsp[0].defaults)) YYERROR; } break; case 15: -#line 220 "gram.y" +#line 219 "gram.y" { if (!add_defaults(DEFAULTS_HOST, yyvsp[-1].member, yyvsp[0].defaults)) YYERROR; } break; case 16: -#line 224 "gram.y" +#line 223 "gram.y" { if (!add_defaults(DEFAULTS_CMND, yyvsp[-1].member, yyvsp[0].defaults)) YYERROR; } break; case 18: -#line 231 "gram.y" +#line 230 "gram.y" { HLTQ_CONCAT(yyvsp[-2].defaults, yyvsp[0].defaults, entries); yyval.defaults = yyvsp[-2].defaults; } break; case 19: -#line 237 "gram.y" +#line 236 "gram.y" { yyval.defaults = new_default(yyvsp[0].string, NULL, true); if (yyval.defaults == NULL) { @@ -1315,7 +1315,7 @@ case 19: } break; case 20: -#line 244 "gram.y" +#line 243 "gram.y" { yyval.defaults = new_default(yyvsp[0].string, NULL, false); if (yyval.defaults == NULL) { @@ -1325,7 +1325,7 @@ case 20: } break; case 21: -#line 251 "gram.y" +#line 250 "gram.y" { yyval.defaults = new_default(yyvsp[-2].string, yyvsp[0].string, true); if (yyval.defaults == NULL) { @@ -1335,7 +1335,7 @@ case 21: } break; case 22: -#line 258 "gram.y" +#line 257 "gram.y" { yyval.defaults = new_default(yyvsp[-2].string, yyvsp[0].string, '+'); if (yyval.defaults == NULL) { @@ -1345,7 +1345,7 @@ case 22: } break; case 23: -#line 265 "gram.y" +#line 264 "gram.y" { yyval.defaults = new_default(yyvsp[-2].string, yyvsp[0].string, '-'); if (yyval.defaults == NULL) { @@ -1355,14 +1355,14 @@ case 23: } break; case 25: -#line 275 "gram.y" +#line 274 "gram.y" { HLTQ_CONCAT(yyvsp[-2].privilege, yyvsp[0].privilege, entries); yyval.privilege = yyvsp[-2].privilege; } break; case 26: -#line 281 "gram.y" +#line 280 "gram.y" { struct privilege *p = calloc(1, sizeof(*p)); if (p == NULL) { @@ -1376,21 +1376,21 @@ case 26: } break; case 27: -#line 294 "gram.y" +#line 293 "gram.y" { yyval.member = yyvsp[0].member; yyval.member->negated = false; } break; case 28: -#line 298 "gram.y" +#line 297 "gram.y" { yyval.member = yyvsp[0].member; yyval.member->negated = true; } break; case 29: -#line 304 "gram.y" +#line 303 "gram.y" { yyval.member = new_member(yyvsp[0].string, ALIAS); if (yyval.member == NULL) { @@ -1400,7 +1400,7 @@ case 29: } break; case 30: -#line 311 "gram.y" +#line 310 "gram.y" { yyval.member = new_member(NULL, ALL); if (yyval.member == NULL) { @@ -1410,7 +1410,7 @@ case 30: } break; case 31: -#line 318 "gram.y" +#line 317 "gram.y" { yyval.member = new_member(yyvsp[0].string, NETGROUP); if (yyval.member == NULL) { @@ -1420,7 +1420,7 @@ case 31: } break; case 32: -#line 325 "gram.y" +#line 324 "gram.y" { yyval.member = new_member(yyvsp[0].string, NTWKADDR); if (yyval.member == NULL) { @@ -1430,7 +1430,7 @@ case 32: } break; case 33: -#line 332 "gram.y" +#line 331 "gram.y" { yyval.member = new_member(yyvsp[0].string, WORD); if (yyval.member == NULL) { @@ -1440,7 +1440,7 @@ case 33: } break; case 35: -#line 342 "gram.y" +#line 341 "gram.y" { struct cmndspec *prev; prev = HLTQ_LAST(yyvsp[-2].cmndspec, cmndspec, entries); @@ -1494,7 +1494,7 @@ case 35: } break; case 36: -#line 395 "gram.y" +#line 394 "gram.y" { struct cmndspec *cs = calloc(1, sizeof(*cs)); if (cs == NULL) { @@ -1546,7 +1546,7 @@ case 36: } break; case 37: -#line 446 "gram.y" +#line 445 "gram.y" { yyval.digest = new_digest(SUDO_DIGEST_SHA224, yyvsp[0].string); if (yyval.digest == NULL) { @@ -1556,7 +1556,7 @@ case 37: } break; case 38: -#line 453 "gram.y" +#line 452 "gram.y" { yyval.digest = new_digest(SUDO_DIGEST_SHA256, yyvsp[0].string); if (yyval.digest == NULL) { @@ -1566,7 +1566,7 @@ case 38: } break; case 39: -#line 460 "gram.y" +#line 459 "gram.y" { yyval.digest = new_digest(SUDO_DIGEST_SHA384, yyvsp[0].string); if (yyval.digest == NULL) { @@ -1576,7 +1576,7 @@ case 39: } break; case 40: -#line 467 "gram.y" +#line 466 "gram.y" { yyval.digest = new_digest(SUDO_DIGEST_SHA512, yyvsp[0].string); if (yyval.digest == NULL) { @@ -1586,13 +1586,13 @@ case 40: } break; case 41: -#line 476 "gram.y" +#line 475 "gram.y" { yyval.member = yyvsp[0].member; } break; case 42: -#line 479 "gram.y" +#line 478 "gram.y" { if (yyvsp[0].member->type != COMMAND) { sudoerserror(N_("a digest requires a path name")); @@ -1604,75 +1604,75 @@ case 42: } break; case 43: -#line 490 "gram.y" +#line 489 "gram.y" { yyval.member = yyvsp[0].member; yyval.member->negated = false; } break; case 44: -#line 494 "gram.y" +#line 493 "gram.y" { yyval.member = yyvsp[0].member; yyval.member->negated = true; } break; case 45: -#line 500 "gram.y" +#line 499 "gram.y" { yyval.string = yyvsp[0].string; } break; case 46: -#line 505 "gram.y" +#line 504 "gram.y" { yyval.string = yyvsp[0].string; } break; case 47: -#line 509 "gram.y" +#line 508 "gram.y" { yyval.string = yyvsp[0].string; } break; case 48: -#line 514 "gram.y" +#line 513 "gram.y" { yyval.string = yyvsp[0].string; } break; case 49: -#line 519 "gram.y" +#line 518 "gram.y" { yyval.string = yyvsp[0].string; } break; case 50: -#line 524 "gram.y" +#line 523 "gram.y" { yyval.string = yyvsp[0].string; } break; case 51: -#line 528 "gram.y" +#line 527 "gram.y" { yyval.string = yyvsp[0].string; } break; case 52: -#line 533 "gram.y" +#line 532 "gram.y" { yyval.runas = NULL; } break; case 53: -#line 536 "gram.y" +#line 535 "gram.y" { yyval.runas = yyvsp[-1].runas; } break; case 54: -#line 541 "gram.y" +#line 540 "gram.y" { yyval.runas = calloc(1, sizeof(struct runascontainer)); if (yyval.runas != NULL) { @@ -1690,7 +1690,7 @@ case 54: } break; case 55: -#line 556 "gram.y" +#line 555 "gram.y" { yyval.runas = calloc(1, sizeof(struct runascontainer)); if (yyval.runas == NULL) { @@ -1702,7 +1702,7 @@ case 55: } break; case 56: -#line 565 "gram.y" +#line 564 "gram.y" { yyval.runas = calloc(1, sizeof(struct runascontainer)); if (yyval.runas == NULL) { @@ -1714,7 +1714,7 @@ case 56: } break; case 57: -#line 574 "gram.y" +#line 573 "gram.y" { yyval.runas = calloc(1, sizeof(struct runascontainer)); if (yyval.runas == NULL) { @@ -1726,7 +1726,7 @@ case 57: } break; case 58: -#line 583 "gram.y" +#line 582 "gram.y" { yyval.runas = calloc(1, sizeof(struct runascontainer)); if (yyval.runas != NULL) { @@ -1744,13 +1744,13 @@ case 58: } break; case 59: -#line 600 "gram.y" +#line 599 "gram.y" { init_options(&yyval.options); } break; case 60: -#line 603 "gram.y" +#line 602 "gram.y" { yyval.options.notbefore = parse_gentime(yyvsp[0].string); free(yyvsp[0].string); @@ -1761,7 +1761,7 @@ case 60: } break; case 61: -#line 611 "gram.y" +#line 610 "gram.y" { yyval.options.notafter = parse_gentime(yyvsp[0].string); free(yyvsp[0].string); @@ -1772,7 +1772,7 @@ case 61: } break; case 62: -#line 619 "gram.y" +#line 618 "gram.y" { yyval.options.timeout = parse_timeout(yyvsp[0].string); free(yyvsp[0].string); @@ -1786,7 +1786,7 @@ case 62: } break; case 63: -#line 630 "gram.y" +#line 629 "gram.y" { #ifdef HAVE_SELINUX free(yyval.options.role); @@ -1795,7 +1795,7 @@ case 63: } break; case 64: -#line 636 "gram.y" +#line 635 "gram.y" { #ifdef HAVE_SELINUX free(yyval.options.type); @@ -1804,7 +1804,7 @@ case 64: } break; case 65: -#line 642 "gram.y" +#line 641 "gram.y" { #ifdef HAVE_PRIV_SET free(yyval.options.privs); @@ -1813,7 +1813,7 @@ case 65: } break; case 66: -#line 648 "gram.y" +#line 647 "gram.y" { #ifdef HAVE_PRIV_SET free(yyval.options.limitprivs); @@ -1822,97 +1822,97 @@ case 66: } break; case 67: -#line 656 "gram.y" +#line 655 "gram.y" { TAGS_INIT(yyval.tag); } break; case 68: -#line 659 "gram.y" +#line 658 "gram.y" { yyval.tag.nopasswd = true; } break; case 69: -#line 662 "gram.y" +#line 661 "gram.y" { yyval.tag.nopasswd = false; } break; case 70: -#line 665 "gram.y" +#line 664 "gram.y" { yyval.tag.noexec = true; } break; case 71: -#line 668 "gram.y" +#line 667 "gram.y" { yyval.tag.noexec = false; } break; case 72: -#line 671 "gram.y" +#line 670 "gram.y" { yyval.tag.setenv = true; } break; case 73: -#line 674 "gram.y" +#line 673 "gram.y" { yyval.tag.setenv = false; } break; case 74: -#line 677 "gram.y" +#line 676 "gram.y" { yyval.tag.log_input = true; } break; case 75: -#line 680 "gram.y" +#line 679 "gram.y" { yyval.tag.log_input = false; } break; case 76: -#line 683 "gram.y" +#line 682 "gram.y" { yyval.tag.log_output = true; } break; case 77: -#line 686 "gram.y" +#line 685 "gram.y" { yyval.tag.log_output = false; } break; case 78: -#line 689 "gram.y" +#line 688 "gram.y" { yyval.tag.follow = true; } break; case 79: -#line 692 "gram.y" +#line 691 "gram.y" { yyval.tag.follow = false; } break; case 80: -#line 695 "gram.y" +#line 694 "gram.y" { yyval.tag.send_mail = true; } break; case 81: -#line 698 "gram.y" +#line 697 "gram.y" { yyval.tag.send_mail = false; } break; case 82: -#line 703 "gram.y" +#line 702 "gram.y" { yyval.member = new_member(NULL, ALL); if (yyval.member == NULL) { @@ -1922,7 +1922,7 @@ case 82: } break; case 83: -#line 710 "gram.y" +#line 709 "gram.y" { yyval.member = new_member(yyvsp[0].string, ALIAS); if (yyval.member == NULL) { @@ -1932,7 +1932,7 @@ case 83: } break; case 84: -#line 717 "gram.y" +#line 716 "gram.y" { struct sudo_command *c = calloc(1, sizeof(*c)); if (c == NULL) { @@ -1950,7 +1950,7 @@ case 84: } break; case 87: -#line 738 "gram.y" +#line 737 "gram.y" { const char *s; s = alias_add(yyvsp[-2].string, HOSTALIAS, sudoers, this_lineno, yyvsp[0].member); @@ -1961,14 +1961,14 @@ case 87: } break; case 89: -#line 749 "gram.y" +#line 748 "gram.y" { HLTQ_CONCAT(yyvsp[-2].member, yyvsp[0].member, entries); yyval.member = yyvsp[-2].member; } break; case 92: -#line 759 "gram.y" +#line 758 "gram.y" { const char *s; s = alias_add(yyvsp[-2].string, CMNDALIAS, sudoers, this_lineno, yyvsp[0].member); @@ -1979,14 +1979,14 @@ case 92: } break; case 94: -#line 770 "gram.y" +#line 769 "gram.y" { HLTQ_CONCAT(yyvsp[-2].member, yyvsp[0].member, entries); yyval.member = yyvsp[-2].member; } break; case 97: -#line 780 "gram.y" +#line 779 "gram.y" { const char *s; s = alias_add(yyvsp[-2].string, RUNASALIAS, sudoers, this_lineno, yyvsp[0].member); @@ -1997,7 +1997,7 @@ case 97: } break; case 100: -#line 794 "gram.y" +#line 793 "gram.y" { const char *s; s = alias_add(yyvsp[-2].string, USERALIAS, sudoers, this_lineno, yyvsp[0].member); @@ -2008,28 +2008,28 @@ case 100: } break; case 102: -#line 805 "gram.y" +#line 804 "gram.y" { HLTQ_CONCAT(yyvsp[-2].member, yyvsp[0].member, entries); yyval.member = yyvsp[-2].member; } break; case 103: -#line 811 "gram.y" +#line 810 "gram.y" { yyval.member = yyvsp[0].member; yyval.member->negated = false; } break; case 104: -#line 815 "gram.y" +#line 814 "gram.y" { yyval.member = yyvsp[0].member; yyval.member->negated = true; } break; case 105: -#line 821 "gram.y" +#line 820 "gram.y" { yyval.member = new_member(yyvsp[0].string, ALIAS); if (yyval.member == NULL) { @@ -2039,7 +2039,7 @@ case 105: } break; case 106: -#line 828 "gram.y" +#line 827 "gram.y" { yyval.member = new_member(NULL, ALL); if (yyval.member == NULL) { @@ -2049,7 +2049,7 @@ case 106: } break; case 107: -#line 835 "gram.y" +#line 834 "gram.y" { yyval.member = new_member(yyvsp[0].string, NETGROUP); if (yyval.member == NULL) { @@ -2059,7 +2059,7 @@ case 107: } break; case 108: -#line 842 "gram.y" +#line 841 "gram.y" { yyval.member = new_member(yyvsp[0].string, USERGROUP); if (yyval.member == NULL) { @@ -2069,7 +2069,7 @@ case 108: } break; case 109: -#line 849 "gram.y" +#line 848 "gram.y" { yyval.member = new_member(yyvsp[0].string, WORD); if (yyval.member == NULL) { @@ -2079,28 +2079,28 @@ case 109: } break; case 111: -#line 859 "gram.y" +#line 858 "gram.y" { HLTQ_CONCAT(yyvsp[-2].member, yyvsp[0].member, entries); yyval.member = yyvsp[-2].member; } break; case 112: -#line 865 "gram.y" +#line 864 "gram.y" { yyval.member = yyvsp[0].member; yyval.member->negated = false; } break; case 113: -#line 869 "gram.y" +#line 868 "gram.y" { yyval.member = yyvsp[0].member; yyval.member->negated = true; } break; case 114: -#line 875 "gram.y" +#line 874 "gram.y" { yyval.member = new_member(yyvsp[0].string, ALIAS); if (yyval.member == NULL) { @@ -2110,7 +2110,7 @@ case 114: } break; case 115: -#line 882 "gram.y" +#line 881 "gram.y" { yyval.member = new_member(NULL, ALL); if (yyval.member == NULL) { @@ -2120,7 +2120,7 @@ case 115: } break; case 116: -#line 889 "gram.y" +#line 888 "gram.y" { yyval.member = new_member(yyvsp[0].string, WORD); if (yyval.member == NULL) { diff --git a/plugins/sudoers/gram.y b/plugins/sudoers/gram.y index c346f7fd9..a428eb000 100644 --- a/plugins/sudoers/gram.y +++ b/plugins/sudoers/gram.y @@ -169,7 +169,6 @@ static struct sudo_digest *new_digest(int, char *); %type notbeforespec %type notafterspec %type digest -%type options %%