]> granicus.if.org Git - sudo/commitdiff
You can now specifiy a host list instead of just a host or alias.
authorTodd C. Miller <Todd.Miller@courtesan.com>
Wed, 7 Apr 1999 23:18:52 +0000 (23:18 +0000)
committerTodd C. Miller <Todd.Miller@courtesan.com>
Wed, 7 Apr 1999 23:18:52 +0000 (23:18 +0000)
Ie: user = host1,host2,ALIAS,!host3 my_command
now works.

parse.yacc
sudo.tab.c
sudo.tab.h [new file with mode: 0644]
sudoers.cat
sudoers.html
sudoers.man
sudoers.pod

index 34bef0bfce8a11b8d239f0cb12e00d29d0476be9..b537b81ecac846cd1e27be4e6407ae4e1c71983d 100644 (file)
@@ -230,7 +230,7 @@ privileges  :       privilege
                |       privileges ':' privilege
                ;
 
-privilege      :       hostspec '=' cmndspeclist {
+privilege      :       hostlist '=' cmndspeclist {
                            /*
                             * We already did a push if necessary in
                             * cmndspec so just reset some values so
index e0e2e15fe94dd864d1a4ad699af9e357284af432..e040635b6bedc5c90fce06ce18cb9ad0591df138 100644 (file)
@@ -213,11 +213,11 @@ typedef union {
 #define YYERRCODE 256
 short yylhs[] = {                                        -1,
     0,    0,    3,    3,    5,    3,    3,    3,    3,    3,
-    6,    6,   11,   14,   15,   14,   12,   12,   12,   12,
-   12,   12,   13,   13,   16,    2,   19,    2,   17,   17,
-   20,   20,   21,   23,   21,   22,   22,   22,   22,   22,
-   18,   18,   18,    1,    1,    1,    8,    8,   25,   24,
-   26,   26,    9,    9,   28,   27,   29,   29,   10,   10,
+    6,    6,   11,   14,   16,   14,   15,   15,   15,   15,
+   15,   15,   13,   13,   17,    2,   20,    2,   18,   18,
+   21,   21,   22,   24,   22,   23,   23,   23,   23,   23,
+   19,   19,   19,    1,    1,    1,    8,    8,   26,   25,
+   12,   12,    9,    9,   28,   27,   29,   29,   10,   10,
    31,   30,    7,    7,   33,   32,   34,   34,   35,   36,
    35,    4,    4,    4,    4,    4,
 };
@@ -236,62 +236,62 @@ short yydefred[] = {                                      0,
    49,    0,   47,   55,    0,   53,   65,    0,   63,   61,
     0,   59,    2,   75,   74,   73,   72,   76,    0,    0,
     0,    0,    0,    0,    0,    0,    0,   22,   18,   21,
-   19,   20,   17,    0,   11,    0,    0,   48,    0,   54,
-    0,   64,    0,   60,    0,    0,   15,   14,   51,    0,
-   45,   46,   44,   27,   26,   57,    0,   70,   69,    0,
-   67,   39,   38,   37,   36,   40,   34,    0,   31,   33,
-   12,    0,    0,   23,    0,    0,    0,    0,    0,    0,
-    0,    0,    0,    0,    0,   42,   43,    0,   16,   52,
+   19,   20,   17,   15,    0,   11,    0,   51,   14,    0,
+   48,    0,   54,    0,   64,    0,   60,    0,    0,    0,
+    0,    0,   45,   46,   44,   27,   26,   57,    0,   70,
+   69,    0,   67,   39,   38,   37,   36,   40,   34,    0,
+   31,   33,   16,   12,    0,    0,   23,    0,   52,    0,
+    0,    0,    0,    0,    0,    0,    0,   42,   43,    0,
    28,   58,   71,   68,   35,   32,   24,   25,
 };
 short yydgoto[] = {                                       7,
-   65,   66,    8,   69,    9,   44,   18,   12,   15,   21,
-   45,   58,   83,   59,   86,   84,   85,   98,   88,   78,
-   79,   80,   92,   13,   30,   60,   16,   32,   67,   22,
-   36,   19,   34,   70,   71,   90,
+   67,   68,    8,   71,    9,   45,   18,   12,   15,   21,
+   46,   47,   86,   48,   49,   58,   87,   88,  100,   90,
+   80,   81,   82,   94,   13,   30,   16,   32,   69,   22,
+   36,   19,   34,   72,   73,   92,
 };
-short yysindex[] = {                                   -250,
- -264,    0, -246, -234, -230, -215, -250,    0, -252,    0,
-    0,  -51,    0,    0,  -12,    0,    0,   -8,    0,    0,
-   -5,    0,    0,    0,    0,    0,    0,    0, -221,   -7,
- -246,   -6, -234,   -4, -230,   -3, -215,    0,    0,    0,
-    0,    0,    0,    2,    0,    3,  -33,    0,   -2,    0,
-  -29,    0,  -20,    0, -221, -207,    0,    0,    0,   17,
-    0,    0,    0,    0,    0,    0,   19,    0,    0,   21,
-    0,    0,    0,    0,    0,    0,    0,   22,    0,    0,
-    0,  -20,   23,    0, -239,  -33,  -33,   -2,   -2,  -29,
-  -29,  -20,  -20,   22, -207,    0,    0,   -2,    0,    0,
+short yysindex[] = {                                   -247,
+ -262,    0, -242, -223, -216, -215, -247,    0, -254,    0,
+    0,  -37,    0,    0,  -15,    0,    0,  -13,    0,    0,
+  -12,    0,    0,    0,    0,    0,    0,    0,  -33,  -14,
+ -242,  -11, -223,  -10, -216,   -8, -215,    0,    0,    0,
+    0,    0,    0,    0,   -9,    0,  -42,    0,    0,  -33,
+    0,   -2,    0,  -29,    0,  -20,    0,  -33,  -33, -209,
+  -33,    4,    0,    0,    0,    0,    0,    0,   11,    0,
+    0,   12,    0,    0,    0,    0,    0,    0,    0,   13,
+    0,    0,    0,    0,  -20,   14,    0, -236,    0,   -2,
+   -2,  -29,  -29,  -20,  -20,   13, -209,    0,    0,   -2,
     0,    0,    0,    0,    0,    0,    0,    0,
 };
-short yyrindex[] = {                                   -217,
-    0,    0,    0,    0,    0,    0, -217,    0,    0,    0,
+short yyrindex[] = {                                   -224,
+    0,    0,    0,    0,    0,    0, -224,    0,    0,    0,
     0,   86,    0,    0,  103,    0,    0,  120,    0,    0,
   137,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
-    0,    0,    0,  154,    0,    0,    0,    0,    0,    0,
-    0,    0,    0,    0,    0,  -21,    0,    0,    0,    1,
-    0,    0,    0,    0,    0,    0,   18,    0,    0,   35,
-    0,    0,    0,    0,    0,    0,    0,   52,    0,    0,
-    0,    0,   69,    0,   -1,    0,    0,    0,    0,    0,
-    0,    0,    0,  163,  -21,    0,    0,    0,    0,    0,
+    0,    0,    0,    0,  154,    0,    0,    0,    0,    0,
+    0,    0,    0,    0,    0,    0,    0,    0,    0,  -21,
+    0,    1,    0,    0,    0,    0,    0,    0,   18,    0,
+    0,   35,    0,    0,    0,    0,    0,    0,    0,   52,
+    0,    0,    0,    0,    0,   69,    0,   -1,    0,    0,
+    0,    0,    0,    0,    0,  163,  -21,    0,    0,    0,
     0,    0,    0,    0,    0,    0,    0,    0,
 };
 short yygindex[] = {                                      0,
-    0,  -74,   55,   59,    0,    0,    0,    0,    0,    0,
-   15,  -27,    0,  -57,    0,  -24,    0,    0,    0,  -10,
-  -59,    0,    0,   42,    0,    0,   41,    0,    0,   38,
-    0,   43,    0,    0,  -42,    0,
+    0,  -74,   53,   54,    0,    0,    0,    0,    0,    0,
+    2,   15,    0,  -31,    0,    0,  -35,    0,    0,    0,
+  -19,  -84,    0,    0,   33,    0,   34,    0,    0,   31,
+    0,   36,    0,    0,  -53,    0,
 };
 #define YYTABLESIZE 431
-short yytable[] = {                                      57,
-   50,   46,   10,   68,   24,    1,   31,   25,   26,   27,
-   11,   29,   77,  101,  102,   28,    2,   56,    3,    4,
-    5,    6,   14,  108,   96,   97,   17,   46,   99,  100,
-   64,   41,  105,  106,   66,   38,   39,   40,   41,    5,
-   42,   20,    5,    5,    5,   33,   43,  103,  104,   35,
-    5,   62,   37,   47,   49,   82,   51,   53,   50,   55,
-   87,   23,   89,   56,   91,   93,   95,   29,   13,   81,
-  107,   94,   48,   50,   54,   56,    0,   52,    0,    0,
+short yytable[] = {                                      44,
+   50,   61,   24,   70,   10,   25,   26,   27,    1,  105,
+  106,   29,   79,   28,   11,  101,  102,   56,   60,    2,
+   31,    3,    4,    5,    6,  108,   83,   98,   99,   89,
+   66,   41,    5,   14,   66,    5,    5,    5,  103,  104,
+   17,   20,   33,    5,   35,   37,   50,   61,   59,   52,
+   54,   62,   56,   85,   91,   93,   95,   97,   50,   23,
+   84,  107,   29,   51,   62,   96,   53,   57,   13,    0,
+   55,    0,    0,    0,    0,   56,    0,    0,    0,    0,
     0,    0,    0,    0,    0,    8,    0,    0,    0,    0,
     0,    0,   66,    0,    0,    0,    0,    0,    0,    0,
     0,    0,    9,    0,    0,    0,    0,    0,    0,   62,
@@ -307,10 +307,10 @@ short yytable[] = {                                      57,
     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     0,    0,    0,   38,   39,   40,   41,   24,   42,    0,
-   25,   26,   27,    0,   43,   29,   72,    0,   28,   73,
-   74,   75,   29,   29,   29,    0,   29,   76,    0,    0,
-    0,    0,    0,    0,   61,   41,   50,   50,    0,    0,
-   50,   50,   50,   62,   41,   63,   41,   50,   50,   50,
+   25,   26,   27,    0,   43,   29,   74,    0,   28,   75,
+   76,   77,   29,   29,   29,    0,   29,   78,    0,    0,
+    0,    0,    0,    0,   63,   41,   50,   50,    0,    0,
+   50,   50,   50,   64,   41,   65,   41,   50,   50,   50,
    50,   50,   50,   56,   56,    0,    0,   56,   56,   56,
     0,    0,    0,    0,   56,   56,   56,   56,   56,   56,
    66,   66,    0,    0,   66,   66,   66,    0,    0,    0,
@@ -330,14 +330,14 @@ short yytable[] = {                                      57,
    30,
 };
 short yycheck[] = {                                      33,
-    0,   29,  267,   33,  257,  256,   58,  260,  261,  262,
-  257,   33,   33,   88,   89,  268,  267,    0,  269,  270,
-  271,  272,  257,   98,  264,  265,  257,   55,   86,   87,
-   33,   33,   92,   93,    0,  257,  258,  259,  260,  257,
-  262,  257,  260,  261,  262,   58,  268,   90,   91,   58,
-  268,    0,   58,   61,   61,  263,   61,   61,   58,   58,
-   44,    7,   44,   61,   44,   44,   44,    9,    0,   55,
-   95,   82,   31,   33,   37,   58,   -1,   35,   -1,   -1,
+    0,   44,  257,   33,  267,  260,  261,  262,  256,   94,
+   95,   33,   33,  268,  257,   90,   91,    0,   61,  267,
+   58,  269,  270,  271,  272,  100,   58,  264,  265,   61,
+   33,   33,  257,  257,    0,  260,  261,  262,   92,   93,
+  257,  257,   58,  268,   58,   58,   61,   44,   58,   61,
+   61,    0,   61,  263,   44,   44,   44,   44,   58,    7,
+   59,   97,    9,   31,   50,   85,   33,   37,    0,   -1,
+   35,   -1,   -1,   -1,   -1,   58,   -1,   -1,   -1,   -1,
    -1,   -1,   -1,   -1,   -1,    0,   -1,   -1,   -1,   -1,
    -1,   -1,   58,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
    -1,   -1,    0,   -1,   -1,   -1,   -1,   -1,   -1,   58,
@@ -407,7 +407,7 @@ char *yyrule[] = {
 "entry : RUNASALIAS runasaliases",
 "privileges : privilege",
 "privileges : privileges ':' privilege",
-"privilege : hostspec '=' cmndspeclist",
+"privilege : hostlist '=' cmndspeclist",
 "ophostspec : hostspec",
 "$$2 :",
 "ophostspec : '!' $$2 ophostspec",
diff --git a/sudo.tab.h b/sudo.tab.h
new file mode 100644 (file)
index 0000000..a9aff54
--- /dev/null
@@ -0,0 +1,24 @@
+#define ALIAS 257
+#define NTWKADDR 258
+#define FQHOST 259
+#define NETGROUP 260
+#define USERGROUP 261
+#define NAME 262
+#define RUNAS 263
+#define NOPASSWD 264
+#define PASSWD 265
+#define COMMAND 266
+#define COMMENT 267
+#define ALL 268
+#define HOSTALIAS 269
+#define CMNDALIAS 270
+#define USERALIAS 271
+#define RUNASALIAS 272
+#define ERROR 273
+typedef union {
+    char *string;
+    int BOOLEAN;
+    struct sudo_command command;
+    int tok;
+} YYSTYPE;
+extern YYSTYPE yylval;
index 7bc47369f24e97a6ccc653d9a1de81ec04ed2703..207b6cfff9338b070f69461d8938c5063e39349a 100644 (file)
@@ -24,11 +24,8 @@ D\bD\bD\bDE\bE\bE\bES\bS\bS\bSC\bC\bC\bCR\bR\bR\bRI\bI\bI\bIP\bP\bP\bPT\bT\bT\bTI\bI\bI\bIO\bO\bO\bON\bN\bN\bN
 
          user access_group [: access_group] ...
 
-           access_group ::= host_type = [(runas-list)] [NOPASSWD:] [op]cmnd_type
+           access_group ::= host-list = [(runas-list)] [NOPASSWD:] [op]cmnd_type
                             [,[(user-list)] [NOPASSWD|PASSWD:] [op]cmnd_type] ...
-              host_type ::= a lower-case hostname, netgroup, ip address,
-                            network number, network number/netmask,
-                            or host alias.
               cmnd_type ::= a command OR a command alias.
                      op ::= the logical "!" NOT operator.
 
@@ -57,23 +54,21 @@ D\bD\bD\bDE\bE\bE\bES\bS\bS\bSC\bC\bC\bCR\bR\bR\bRI\bI\bI\bIP\bP\bP\bPT\bT\bT\bTI\bI\bI\bIO\bO\bO\bON\bN\bN\bN
                             of these.
 
 
+       r\br\br\bru\bu\bu\bun\bn\bn\bna\ba\ba\bas\bs\bs\bs a\ba\ba\bal\bl\bl\bli\bi\bi\bia\ba\ba\bas\bs\bs\bs s\bs\bs\bse\be\be\bec\bc\bc\bct\bt\bt\bti\bi\bi\bio\bo\bo\bon\bn\bn\bn f\bf\bf\bfo\bo\bo\bor\br\br\brm\bm\bm\bma\ba\ba\bat\bt\bt\bt:\b:\b:\b:
 
 
-
-
-6/Apr/99                       1.6                              1
+         Runas_Alias RUNASALIAS = runas-list
 
 
 
+7/Apr/99                       1.6                              1
 
 
-sudoers(5)                 FILE FORMATS                sudoers(5)
 
 
-       r\br\br\bru\bu\bu\bun\bn\bn\bna\ba\ba\bas\bs\bs\bs a\ba\ba\bal\bl\bl\bli\bi\bi\bia\ba\ba\bas\bs\bs\bs s\bs\bs\bse\be\be\bec\bc\bc\bct\bt\bt\bti\bi\bi\bio\bo\bo\bon\bn\bn\bn f\bf\bf\bfo\bo\bo\bor\br\br\brm\bm\bm\bma\ba\ba\bat\bt\bt\bt:\b:\b:\b:
 
+sudoers(5)                 FILE FORMATS                sudoers(5)
 
-         Runas_Alias RUNASALIAS = runas-list
 
              Runas_Alias ::= a keyword.
               RUNASALIAS ::= an upper-case alias name.
@@ -124,10 +119,15 @@ sudoers(5)                 FILE FORMATS                sudoers(5)
        an _\ba_\bc_\bc_\be_\bs_\bs_\b__\bg_\br_\bo_\bu_\bp. For example given:
            oper bigserver = NOPASSWD: /usr/bin/kill, /bin/rm,
        /bin/rmdir User oper will be able to run /usr/bin/kill,
+       /bin/rm, and /bin/rmdir as r\br\br\bro\bo\bo\boo\bo\bo\bot\bt\bt\bt without a password.  If we
+       change that to:
+           oper bigserver = NOPASSWD: /usr/bin/kill, PASSWD:
+       /bin/rm, /bin/rmdir User oper can still run /usr/bin/kill
+       without a password but must give a password to run /bin/rm
 
 
 
-6/Apr/99                       1.6                              2
+7/Apr/99                       1.6                              2
 
 
 
@@ -136,11 +136,6 @@ sudoers(5)                 FILE FORMATS                sudoers(5)
 sudoers(5)                 FILE FORMATS                sudoers(5)
 
 
-       /bin/rm, and /bin/rmdir as r\br\br\bro\bo\bo\boo\bo\bo\bot\bt\bt\bt without a password.  If we
-       change that to:
-           oper bigserver = NOPASSWD: /usr/bin/kill, PASSWD:
-       /bin/rm, /bin/rmdir User oper can still run /usr/bin/kill
-       without a password but must give a password to run /bin/rm
        and /bin/rmdir.
 
        w\bw\bw\bwi\bi\bi\bil\bl\bl\bld\bd\bd\bdc\bc\bc\bca\ba\ba\bar\br\br\brd\bd\bd\bds\bs\bs\bs (\b(\b(\b(a\ba\ba\bak\bk\bk\bka\ba\ba\ba m\bm\bm\bme\be\be\bet\bt\bt\bta\ba\ba\ba c\bc\bc\bch\bh\bh\bha\ba\ba\bar\br\br\bra\ba\ba\bac\bc\bc\bct\bt\bt\bte\be\be\ber\br\br\brs\bs\bs\bs)\b)\b)\b):\b:\b:\b:
@@ -191,9 +186,14 @@ sudoers(5)                 FILE FORMATS                sudoers(5)
        elements from the universe by using the syntax:
           user  host=ALL,!ALIAS1,!/sbin/halt...
 
+       Commands may have optional command line arguments.  If
+       they do, then the arguments in the _\bs_\bu_\bd_\bo_\be_\br_\bs file must
+       exactly match those on the command line.  It is also
+       possible to have a command's arguments span multiple lines
+
 
 
-6/Apr/99                       1.6                              3
+7/Apr/99                       1.6                              3
 
 
 
@@ -202,10 +202,6 @@ sudoers(5)                 FILE FORMATS                sudoers(5)
 sudoers(5)                 FILE FORMATS                sudoers(5)
 
 
-       Commands may have optional command line arguments.  If
-       they do, then the arguments in the _\bs_\bu_\bd_\bo_\be_\br_\bs file must
-       exactly match those on the command line.  It is also
-       possible to have a command's arguments span multiple lines
        as long as the line continuance character "\" is used.
        The following characters must be escaped with a "\" if
        used in command arguments: ",", ":", "=", "\".
@@ -256,10 +252,14 @@ E\bE\bE\bEX\bX\bX\bXA\bA\bA\bAM\bM\bM\bMP\bP\bP\bPL\bL\bL\bLE\bE\bE\bES\bS\bS\bS
        three machines merlin, kodiakthorn and spirit.  Similarly,
        SERVERS is set to the machines houdini, merlin,
        kodiakthorn and spirit.  The CSNETS alias will match any
+       host on the 128.138.243.0, 128.138.204.0, or
+       128.138.205.192 nets.  The CUNETS alias will match any
+       host on the 128.138.0.0 (class B) network.  Note that
+       these are n\bn\bn\bne\be\be\bet\bt\bt\btw\bw\bw\bwo\bo\bo\bor\br\br\brk\bk\bk\bk addresses, not ip addresses.  Unless an
 
 
 
-6/Apr/99                       1.6                              4
+7/Apr/99                       1.6                              4
 
 
 
@@ -268,10 +268,6 @@ E\bE\bE\bEX\bX\bX\bXA\bA\bA\bAM\bM\bM\bMP\bP\bP\bPL\bL\bL\bLE\bE\bE\bES\bS\bS\bS
 sudoers(5)                 FILE FORMATS                sudoers(5)
 
 
-       host on the 128.138.243.0, 128.138.204.0, or
-       128.138.205.192 nets.  The CUNETS alias will match any
-       host on the 128.138.0.0 (class B) network.  Note that
-       these are n\bn\bn\bne\be\be\bet\bt\bt\btw\bw\bw\bwo\bo\bo\bor\br\br\brk\bk\bk\bk addresses, not ip addresses.  Unless an
        explicit netmask is given, the local _\bn_\be_\bt_\bm_\ba_\bs_\bk is used to
        determine whether or not the current host belongs to a
        network.
@@ -322,22 +318,22 @@ sudoers(5)                 FILE FORMATS                sudoers(5)
 
        jill            The user jill may run /sbin/shutdown -h
                        now or /sbin/shutdown -r now as well as
+                       the commands in the MISC alias on houdini.
 
+       markm           The user markm may run any command on the
+                       HUB machines except _\b/_\bs_\bb_\bi_\bn_\b/_\bs_\bh_\bu_\bt_\bd_\bo_\bw_\bn,
 
 
-6/Apr/99                       1.6                              5
 
+7/Apr/99                       1.6                              5
 
 
 
 
-sudoers(5)                 FILE FORMATS                sudoers(5)
 
+sudoers(5)                 FILE FORMATS                sudoers(5)
 
-                       the commands in the MISC alias on houdini.
 
-       markm           The user markm may run any command on the
-                       HUB machines except _\b/_\bs_\bb_\bi_\bn_\b/_\bs_\bh_\bu_\bt_\bd_\bo_\bw_\bn,
                        _\b/_\bs_\bb_\bi_\bn_\b/_\bh_\ba_\bl_\bt, and commands listed in the
                        MISC alias.
 
@@ -391,7 +387,11 @@ S\bS\bS\bSE\bE\bE\bEE\bE\bE\bE A\bA\bA\bAL\bL\bL\bLS\bS\bS\bSO\bO\bO\bO
 
 
 
-6/Apr/99                       1.6                              6
+
+
+
+
+7/Apr/99                       1.6                              6
 
 
 
@@ -457,6 +457,6 @@ sudoers(5)                 FILE FORMATS                sudoers(5)
 
 
 
-6/Apr/99                       1.6                              7
+7/Apr/99                       1.6                              7
 
 
index 6b1053bab61f0e41dc086f9275969b2fffd2287d..2207a1f5e166c70a32bc5dbd3e0d2f9dd8ea1734 100644 (file)
@@ -79,11 +79,8 @@ entry that grants access the user will be allowed to run the command.
 
 <P>
 
-<PRE>    access_group ::= host_type = [(runas-list)] [NOPASSWD:] [op]cmnd_type
+<PRE>    access_group ::= host-list = [(runas-list)] [NOPASSWD:] [op]cmnd_type
                      [,[(user-list)] [NOPASSWD|PASSWD:] [op]cmnd_type] ... 
-       host_type ::= a lower-case hostname, netgroup, ip address,
-                     network number, network number/netmask,
-                     or host alias.
        cmnd_type ::= a command OR a command alias.
               op ::= the logical &quot;!&quot; NOT operator.
 </PRE>
index fd834d032abaeda37bcfc0387143a81b2e869def..b332be7abb4dece323bcee304fc0391e2cae12e0 100644 (file)
@@ -2,8 +2,10 @@
 ''' $RCSfile$$Revision$$Date$
 '''
 ''' $Log$
-''' Revision 1.8  1999/04/07 00:24:35  millert
-''' runas-lists and NOPASSWD/PASSWD modifiers are now sticky and you can use "!" most everywhere
+''' Revision 1.9  1999/04/07 23:18:51  millert
+''' You can now specifiy a host list instead of just a host or alias.
+''' Ie: user = host1,host2,ALIAS,!host3 my_command
+''' now works.
 '''
 '''
 .de Sh
@@ -96,7 +98,7 @@
 .nr % 0
 .rr F
 .\}
-.TH sudoers 5 "1.6" "6/Apr/99" "FILE FORMATS"
+.TH sudoers 5 "1.6" "7/Apr/99" "FILE FORMATS"
 .UC
 .if n .hy 0
 .if n .na
@@ -206,12 +208,9 @@ will be allowed to run the command.
 .Vb 1
 \&  user access_group [: access_group] ...
 .Ve
-.Vb 7
-\&    access_group ::= host_type = [(runas-list)] [NOPASSWD:] [op]cmnd_type
+.Vb 4
+\&    access_group ::= host-list = [(runas-list)] [NOPASSWD:] [op]cmnd_type
 \&                     [,[(user-list)] [NOPASSWD|PASSWD:] [op]cmnd_type] ... 
-\&       host_type ::= a lower-case hostname, netgroup, ip address,
-\&                     network number, network number/netmask,
-\&                     or host alias.
 \&       cmnd_type ::= a command OR a command alias.
 \&              op ::= the logical "!" NOT operator.
 .Ve
index 8fbf3077187e6c24aefd1c81decef05c90bd92ea..c003c8e56afcfe8aadff898a6c8e8e19dd74383d 100644 (file)
@@ -21,11 +21,8 @@ will be allowed to run the command.
 
   user access_group [: access_group] ...
 
-    access_group ::= host_type = [(runas-list)] [NOPASSWD:] [op]cmnd_type
+    access_group ::= host-list = [(runas-list)] [NOPASSWD:] [op]cmnd_type
                     [,[(user-list)] [NOPASSWD|PASSWD:] [op]cmnd_type] ... 
-       host_type ::= a lower-case hostname, netgroup, ip address,
-                     network number, network number/netmask,
-                    or host alias.
        cmnd_type ::= a command OR a command alias.
               op ::= the logical "!" NOT operator.