[BACK]Return to parse.lex CVS log [TXT][DIR] Up to [local] / src / usr.bin / sudo

Diff for /src/usr.bin/sudo/Attic/parse.lex between version 1.10 and 1.11

version 1.10, 2003/04/19 21:57:17 version 1.11, 2004/09/28 15:10:51
Line 1 
Line 1 
 %{  %{
 /*  /*
  * Copyright (c) 1996, 1998-2003 Todd C. Miller <Todd.Miller@courtesan.com>   * Copyright (c) 1996, 1998-2004 Todd C. Miller <Todd.Miller@courtesan.com>
  * 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   * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
  * Redistribution and use in source and binary forms, with or without   * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
  * modification, are permitted provided that the following conditions   * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
  * are met:   * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
  *   * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
  * 1. Redistributions of source code must retain the above copyright   * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
  *    notice, this list of conditions and the following disclaimer.   * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
  *  
  * 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   * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF   * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
  * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.   * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Line 72 
Line 54 
 #include <sudo.tab.h>  #include <sudo.tab.h>
   
 #ifndef lint  #ifndef lint
 static const char rcsid[] = "$Sudo: parse.lex,v 1.127 2003/04/16 00:42:10 millert Exp $";  static const char rcsid[] = "$Sudo: parse.lex,v 1.132 2004/05/17 20:51:13 millert Exp $";
 #endif /* lint */  #endif /* lint */
   
 #undef yywrap           /* guard against a yywrap macro */  #undef yywrap           /* guard against a yywrap macro */
Line 160 
Line 142 
 }  }
   
 <GOTCMND>{  <GOTCMND>{
       \\[\*\?\[\]\!]      {
                               /* quoted fnmatch glob char, pass verbatim */
                               LEXTRACE("QUOTEDCHAR ");
                               fill_args(yytext, 2, sawspace);
                               sawspace = FALSE;
                           }
   
     \\[:\\,= \t#]       {      \\[:\\,= \t#]       {
                               /* quoted sudoers special char, strip backslash */
                             LEXTRACE("QUOTEDCHAR ");                              LEXTRACE("QUOTEDCHAR ");
                             fill_args(yytext + 1, 1, sawspace);                              fill_args(yytext + 1, 1, sawspace);
                             sawspace = FALSE;                              sawspace = FALSE;
Line 228 
Line 218 
                                 return(PASSWD);                                  return(PASSWD);
                         }                          }
   
   NOEXEC[[:blank:]]*:     {
                                   LEXTRACE("NOEXEC ");
                                   return(NOEXEC);
                           }
   
   EXEC[[:blank:]]*:       {
                                   LEXTRACE("EXEC ");
                                   return(EXEC);
                           }
   
 \+{WORD}                {  \+{WORD}                {
                             /* netgroup */                              /* netgroup */
                             fill(yytext, yyleng);                              fill(yytext, yyleng);
Line 281 
Line 281 
 <GOTRUNAS>\)            {  <GOTRUNAS>\)            {
                             BEGIN INITIAL;                              BEGIN INITIAL;
                         }                          }
   
   sudoedit                {
                               BEGIN GOTCMND;
                               LEXTRACE("COMMAND ");
                               fill_cmnd(yytext, yyleng);
                           }                       /* sudo -e */
   
 \/(\\[\,:= \t#]|[^\,:=\\ \t\n#])+       {  \/(\\[\,:= \t#]|[^\,:=\\ \t\n#])+       {
                             /* directories can't have args... */                              /* directories can't have args... */

Legend:
Removed from v.1.10  
changed lines
  Added in v.1.11