⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 yylex.c

📁 一个可用的dns服务器源代码
💻 C
📖 第 1 页 / 共 3 页
字号:
       22,   26,   22,   27,   22,   22,   22,   22,   28,   29,       22,   30,   22,   22,   18,   31,   32,   34,   35,   38,       18,   18,   18,   18,   31,   32,   37,   41,   39,   18,       18,   18,   33,   40,   33,   42,   37,   33,   34,   35,       33,   38,   33,   40,   39,   41,   33,   33,   33,   36,       33,   42,   34,   35,   50,   45,   33,   67,  163,   33,       33,   33,   33,   18,   31,   32,   33,   18,   18,   44,       18,   18,   46,   47,   48,   53,   51,  162,   52,   60,       33,   33,   33,   33,   49,   61,   62,   68,   65,  160,       33,   66,   33,   33,   33,   69,   33,  158,   33,   33,       18,   54,   55,   71,   72,  153,   18,   18,   18,   18,       57,   19,   33,   73,   74,   59,   18,   18,   18,   48,       32,   75,   64,   18,   44,   18,   18,   54,   55,   76,       77,   86,   70,   18,   54,   55,   33,  146,   33,   18,       18,   18,   18,   57,   19,   83,   33,   33,   18,   18,       18,  143,   84,   85,   33,   18,   78,   79,   89,   71,       72,   18,   18,   18,   19,   93,   76,   77,   78,   79,       33,   81,   81,   94,   95,   19,   81,   33,  141,   81,       96,   19,  136,   33,   81,   82,   18,   68,   32,  134,       88,   88,   44,   18,   18,   18,   90,   19,   84,   85,      131,   92,   18,   18,   18,   73,   74,   97,   18,   18,       44,   18,   18,   18,   78,   79,  106,  107,   98,   18,       18,   18,   33,   33,   18,   99,  100,  102,  103,  115,       18,   18,   18,   18,  102,  103,  108,  109,  129,   18,       18,   18,   18,   89,   32,  126,  105,  105,   44,   18,       18,   18,   90,   19,   33,  110,  123,   18,   18,   18,      111,   33,   18,   95,   19,  130,   18,   18,   18,   18,       18,   18,   96,   19,  121,   18,   18,   18,   18,   18,      114,   99,  100,  106,  107,   33,   70,   18,   99,  100,       33,  119,  120,   18,   18,   18,   18,  116,  117,  148,      149,  105,   18,   18,   18,   18,  119,  120,  138,  139,      118,   18,   18,   18,   18,  108,  109,  113,   18,   18,      122,   18,   18,   18,  110,   19,  148,  149,  112,   18,       18,   18,   18,  124,  125,  150,   19,  104,   18,   18,       18,   18,  127,  128,  154,   19,   88,   18,   18,   18,       18,  115,   32,  101,   18,   18,   44,   18,   18,  116,      117,  164,  165,   91,   70,   18,  116,  117,  164,  165,       87,   18,   18,   18,   18,  132,  133,  166,  167,   80,       18,   18,   18,   18,  135,   19,  168,  169,   63,  137,       18,   18,   18,  138,  139,   58,  124,  125,   18,   18,       18,  140,   18,  124,  125,   56,   43,   33,   18,   18,       18,   18,  127,  128,   18,   18,   18,  142,   18,   18,       18,  127,  128,    4,  110,   33,   18,   18,   18,   18,      130,   32,   33,   18,   18,   44,   18,   18,   18,  144,      145,   19,  132,  133,   18,   18,   18,  147,   18,  132,      133,   19,  170,    5,   18,   18,   18,   18,  135,   19,      170,  150,   19,   18,   18,   18,  151,   18,  152,  128,      170,  154,   19,   18,   18,   18,  155,   18,  156,  157,      170,  144,  145,   18,   18,   18,   70,   18,  144,  145,      170,  170,  170,   18,   18,   18,   18,  159,   19,  170,      170,  170,  161,   18,   18,   18,  150,   19,  170,  152,      128,   18,   18,   18,  142,   18,  152,  128,  170,  170,      170,   18,   18,   18,   18,  154,   19,  170,  156,  157,       18,   18,   18,   70,   18,  156,  157,  170,  170,  170,       18,   18,   18,   18,  159,   19,  170,  170,  170,   18,       18,   18,   18,  166,  167,  170,  170,  170,   18,   18,       18,   18,  168,  169,  170,  170,  170,   18,   18,   18,        3,  170,  170,  170,  170,  170,  170,  170,  170,  170,      170,  170,  170,  170,  170,  170,  170,  170,  170,  170,      170,  170,  170,  170,  170,  170,  170,  170    } ;static const short int yy_chk[639] =    {   0,        2,    2,    2,    2,    2,    2,    2,    2,    2,    2,        2,    2,    2,    2,    2,    2,    2,    2,    2,    2,        2,    2,    2,    2,    2,    2,    2,    7,    7,    7,        7,    7,    7,    7,    7,    7,    7,    7,    7,    7,        7,    7,    7,    7,    7,    7,    7,    7,    7,    7,        7,    7,    7,    7,    9,    9,    9,   10,   10,   13,        9,    9,    9,   11,   11,   11,   12,   16,   14,   11,       11,   11,   14,   15,   13,   17,   25,   12,   23,   23,       15,   26,   16,   28,   27,   29,   17,   25,   27,   11,       28,   30,   34,   34,   40,   36,   26,   51,  202,   51,       29,   40,   30,   31,   31,   31,   36,   31,   31,   31,       31,   31,   37,   38,   39,   42,   41,  201,   41,   45,       37,   41,   45,   38,   39,   46,   47,   52,   49,  200,       42,   50,   47,   49,   50,   53,   53,  199,   46,   39,       43,   43,   43,   58,   58,  198,   43,   43,   43,   44,       44,   44,   52,   60,   60,   44,   44,   44,   48,   48,       48,   61,   48,   48,   48,   48,   48,   54,   54,   62,       62,   67,   54,   56,   56,   56,   61,  197,   60,   56,       56,   56,   57,   57,   57,   65,   67,   65,   57,   57,       57,  196,   66,   66,   62,   63,   63,   63,   69,   71,       71,   63,   63,   63,   64,   75,   76,   76,   78,   78,       75,   64,   64,   78,   81,   81,   64,   66,  195,   64,       82,   82,  194,   69,   64,   64,   68,   68,   68,  193,       68,   68,   68,   68,   68,   70,   70,   70,   84,   84,      192,   70,   70,   70,   73,   73,   73,   83,   73,   73,       73,   73,   73,   80,   80,   80,   91,   91,   86,   80,       80,   80,   83,   86,   87,   87,   87,  102,  102,   98,       87,   87,   87,   88,   88,   88,   93,   93,  191,   88,       88,   88,   89,   89,   89,  190,   89,   89,   89,   89,       89,   90,   90,   90,   98,   94,  189,   90,   90,   90,       94,   93,   95,   95,   95,  114,   95,   95,   95,   95,       95,   96,   96,   96,  188,   96,   96,   96,   96,   96,       97,   99,   99,  106,  106,   97,   99,  101,  101,  101,      114,  119,  119,  101,  101,  101,  104,  104,  104,  136,      136,  187,  104,  104,  104,  105,  105,  105,  138,  138,      186,  105,  105,  105,  108,  108,  108,  185,  108,  108,      108,  108,  108,  110,  110,  110,  148,  148,  184,  110,      110,  110,  112,  112,  112,  151,  151,  183,  112,  112,      112,  113,  113,  113,  155,  155,  182,  113,  113,  113,      115,  115,  115,  181,  115,  115,  115,  115,  115,  116,      116,  160,  160,  180,  116,  118,  118,  118,  164,  164,      179,  118,  118,  118,  121,  121,  121,  166,  166,  178,      121,  121,  121,  122,  122,  122,  168,  168,  177,  122,      122,  122,  123,  123,  123,  176,  124,  124,  123,  123,      123,  124,  126,  126,  126,  175,  174,  173,  126,  126,      126,  127,  127,  127,  172,  127,  127,  127,  127,  127,      129,  129,  129,  171,  111,   33,  129,  129,  129,  130,      130,  130,   22,  130,  130,  130,  130,  130,  131,  131,      131,   18,  132,  132,  131,  131,  131,  132,  134,  134,      134,    6,    3,    1,  134,  134,  134,  135,  135,  135,        0,  140,  140,  135,  135,  135,  140,  141,  141,  141,        0,  142,  142,  141,  141,  141,  142,  143,  143,  143,        0,  144,  144,  143,  143,  143,  144,  146,  146,  146,        0,    0,    0,  146,  146,  146,  147,  147,  147,    0,        0,    0,  147,  147,  147,  150,  150,  150,    0,  152,      152,  150,  150,  150,  152,  153,  153,  153,    0,    0,        0,  153,  153,  153,  154,  154,  154,    0,  156,  156,      154,  154,  154,  156,  158,  158,  158,    0,    0,    0,      158,  158,  158,  159,  159,  159,    0,    0,    0,  159,      159,  159,  162,  162,  162,    0,    0,    0,  162,  162,      162,  163,  163,  163,    0,    0,    0,  163,  163,  163,      170,  170,  170,  170,  170,  170,  170,  170,  170,  170,      170,  170,  170,  170,  170,  170,  170,  170,  170,  170,      170,  170,  170,  170,  170,  170,  170,  170    } ;static yy_state_type yy_last_accepting_state;static YY_CHAR *yy_last_accepting_cpos;static yy_state_type yy_state_buf[YY_BUF_SIZE + 2], *yy_state_ptr;static YY_CHAR *yy_full_match;static int yy_lp;static int yy_looking_for_trail_begin = 0;static int yy_full_lp;static int *yy_full_state;#define YY_TRAILING_MASK 0x2000#define YY_TRAILING_HEAD_MASK 0x4000#define REJECT \{ \*yy_cp = yy_hold_char; /* undo effects of setting up yytext */ \yy_cp = yy_full_match; /* restore poss. backed-over text */ \yy_lp = yy_full_lp; /* restore orig. accepting pos. */ \yy_state_ptr = yy_full_state; /* restore orig. state */ \yy_current_state = *yy_state_ptr; /* restore curr. state */ \++yy_lp; \goto find_rule; \}#define yymore() yymore_used_but_not_detected#define YY_MORE_ADJ 0/* these variables are all declared out here so that section 3 code can * manipulate them *//* points to current character in buffer */static YY_CHAR *yy_c_buf_p = (YY_CHAR *) 0;static int yy_init = 1;		/* whether we need to initialize */static int yy_start = 0;	/* start state number *//* flag which is used to allow yywrap()'s to do buffer switches * instead of setting up a fresh yyin.  A bit of a hack ... */static int yy_did_buffer_switch_on_eof;static yy_state_type yy_get_previous_state YY_PROTO(( void ));static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state ));static int yy_get_next_buffer YY_PROTO(( void ));static void yyunput YY_PROTO(( YY_CHAR c, YY_CHAR *buf_ptr ));void yyrestart YY_PROTO(( FILE *input_file ));void yy_switch_to_buffer YY_PROTO(( YY_BUFFER_STATE new_buffer ));void yy_load_buffer_state YY_PROTO(( void ));YY_BUFFER_STATE yy_create_buffer YY_PROTO(( FILE *file, int size ));void yy_delete_buffer YY_PROTO(( YY_BUFFER_STATE b ));void yy_init_buffer YY_PROTO(( YY_BUFFER_STATE b, FILE *file ));#define yy_new_buffer yy_create_buffer#ifdef __cplusplusstatic int yyinput YY_PROTO(( void ));#elsestatic int input YY_PROTO(( void ));#endifYY_DECL    {    register yy_state_type yy_current_state;    register YY_CHAR *yy_cp, *yy_bp;    register int yy_act;    if ( yy_init )	{	YY_USER_INIT;	if ( ! yy_start )	    yy_start = 1;	/* first start state */	if ( ! yyin )	    yyin = stdin;	if ( ! yyout )	    yyout = stdout;	if ( yy_current_buffer )	    yy_init_buffer( yy_current_buffer, yyin );	else	    yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE );	yy_load_buffer_state();	yy_init = 0;	}    while ( 1 )		/* loops until end-of-file is reached */	{	yy_cp = yy_c_buf_p;	/* support of yytext */	*yy_cp = yy_hold_char;	/* yy_bp points to the position in yy_ch_buf of the start of the	 * current run.	 */	yy_bp = yy_cp;	yy_current_state = yy_start;	if ( yy_bp[-1] == '\n' )	    ++yy_current_state;	yy_state_ptr = yy_state_buf;	*yy_state_ptr++ = yy_current_state;yy_match:	do	    {	    register YY_CHAR yy_c = yy_ec[*yy_cp];	    while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )		{		yy_current_state = yy_def[yy_current_state];		if ( yy_current_state >= 171 )		    yy_c = yy_meta[yy_c];		}	    yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];	    *yy_state_ptr++ = yy_current_state;	    ++yy_cp;	    }	while ( yy_base[yy_current_state] != 611 );yy_find_action:	yy_current_state = *--yy_state_ptr;	yy_lp = yy_accept[yy_current_state];find_rule: /* we branch to this label when backtracking */	for ( ; ; ) /* until we find what rule we matched */	    {	    if ( yy_lp && yy_lp < yy_accept[yy_current_state + 1] )		{		yy_act = yy_acclist[yy_lp];		if ( yy_act & YY_TRAILING_HEAD_MASK ||		     yy_looking_for_trail_begin )		    {		    if ( yy_act == yy_looking_for_trail_begin )			{			yy_looking_for_trail_begin = 0;			yy_act &= ~YY_TRAILING_HEAD_MASK;			break;			}		    }		else if ( yy_act & YY_TRAILING_MASK )		    {		    yy_looking_for_trail_begin = yy_act & ~YY_TRAILING_MASK;		    yy_looking_for_trail_begin |= YY_TRAILING_HEAD_MASK;		    }		else		    {		    yy_full_match = yy_cp;		    yy_full_state = yy_state_ptr;		    yy_full_lp = yy_lp;		    break;		    }		++yy_lp;		goto find_rule;		}	    --yy_cp;	    yy_current_state = *--yy_state_ptr;	    yy_lp = yy_accept[yy_current_state];	    }	YY_DO_BEFORE_ACTION;	YY_USER_ACTION;do_action:	/* this label is used only to access EOF actions */	switch ( yy_act )	    {             int nt_was_set = FALSE;case 1:# line 108 "commands.l"{					    /*					     * 0 == use current server to find					     *	    the new one.					     * 1 == use original server to find					     *	    the new one.					     */					    SetDefaultServer(yytext, 0);					    return(1);					}	YY_BREAKcase 2:# line 118 "commands.l"{					    SetDefaultServer(yytext, 1);					    return(1);					}	YY_BREAKcase 3:# line 122 "commands.l"{					    return(0);					}	YY_BREAKcase 4:# line 125 "commands.l"{					    SetDefaultServer(rootServerName, 1);					    return(1);					}	YY_BREAKcase 5:# line 129 "commands.l"{					    /*					     * 2nd arg.					     *  0 == output to stdout					     *  1 == output to file					     */					    Finger(yytext, 1);					    return(1);					}	YY_BREAKcase 6:# line 138 "commands.l"{					    Finger(yytext, 0);					    return(1);					}	YY_BREAKcase 7:# line 142 "commands.l"{					    ViewList(yytext);					    return(1);					}	YY_BREAKcase 8:# line 146 "commands.l"{					    /*					     * 2nd arg.					     *  0 == output to stdout					     *  1 == output to file					     */					    ListHosts(yytext, 1);					    return(1);					}	YY_BREAKcase 9:# line 155 "commands.l"{					    ListHosts(yytext, 0);					    return(1);					}	YY_BREAKcase 10:# line 159 "commands.l"{					    /*					     * 2nd arg.					     *  0 == output to stdout					     *  1 == output to file					     */					    ListHostsByType(yytext, 1);					    return(1);					}	YY_BREAKcase 11:# line 168 "commands.l"{					    ListHostsByType(yytext, 0);					    return(1);					}	YY_BREAKcase 12:# line 172 "commands.l"{					    SetOption(yytext);					    nt_was_set = TRUE;					    return(1);					}	YY_BREAKcase 13:# line 176 "commands.l"{					    PrintHelp();					    return(1);					}	YY_BREAKcase 14:# line 180 "commands.l"{					    extern void PrintHelp();					    PrintHelp();					    return(1);					}	YY_BREAKcase 15:# line 186 "commands.l"{					    /*					     * 0 == output to stdout					     * 1 == output to file					     */					    LookupHost(yytext, 1);					    return(1);					}	YY_BREAKcase 16:# line 194 "commands.l"{					    LookupHost(yytext, 0);					    return(1);					}	YY_BREAKcase 17:# line 198 "commands.l"{					    /*					     * 0 == output to stdout					     * 1 == output to file					     */					    LookupHostWithServer(yytext, 1);					    return(1);					}	YY_BREAKcase 18:# line 206 "commands.l"{					    LookupHostWithServer(yytext, 0);					    return(1);					}	YY_BREAKcase 19:# line 210 "commands.l"{					    return(1);					}	YY_BREAKcase 20:# line 213 "commands.l"{					    printf("Unrecognized command: %s",							yytext);					    return(1);					}	YY_BREAKcase 21:# line 218 "commands.l"{ ; }	YY_BREAKcase 22:# line 219 "commands.l"ECHO;	YY_BREAK	    case YY_STATE_EOF(INITIAL):		yyterminate();	    case YY_END_OF_BUFFER:		{		/* amount of text matched not including the EOB char */		int yy_amount_of_matched_text = yy_cp - yytext - 1;		/* undo the effects of YY_DO_BEFORE_ACTION */		*yy_cp = yy_hold_char;		/* note that here we test for yy_c_buf_p "<=" to the position		 * of the first EOB in the buffer, since yy_c_buf_p will		 * already have been incremented past the NUL character		 * (since all states make transitions on EOB to the end-		 * of-buffer state).  Contrast this with the test in yyinput().		 */		if ( yy_c_buf_p <= &yy_current_buffer->yy_ch_buf[yy_n_chars] )

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -