$Id: update-patches 24 2008-08-31 14:56:13Z wbx $ --- ipsec-tools-0.7.2.orig/src/setkey/token.c 2008-07-23 10:26:58.000000000 +0200 +++ ipsec-tools-0.7.2/src/setkey/token.c 2009-05-29 15:26:39.126303087 +0200 @@ -8,7 +8,7 @@ #define FLEX_SCANNER #define YY_FLEX_MAJOR_VERSION 2 #define YY_FLEX_MINOR_VERSION 5 -#define YY_FLEX_SUBMINOR_VERSION 34 +#define YY_FLEX_SUBMINOR_VERSION 35 #if YY_FLEX_SUBMINOR_VERSION > 0 #define FLEX_BETA #endif @@ -178,13 +178,6 @@ extern FILE *yyin, *yyout; #define unput(c) yyunput( c, (yytext_ptr) ) -/* The following is because we cannot portably get our hands on size_t - * (without autoconf's help, which isn't available because we want - * flex-generated scanners to compile on their own). - * Given that the standard has decreed that size_t exists since 1989, - * I guess we can afford to depend on it. Manoj. - */ - #ifndef YY_TYPEDEF_YY_SIZE_T #define YY_TYPEDEF_YY_SIZE_T typedef size_t yy_size_t; @@ -1069,9 +1062,10 @@ char *yytext; #if defined(SADB_X_EALG_AES) && ! defined(SADB_X_EALG_AESCBC) #define SADB_X_EALG_AESCBC SADB_X_EALG_AES #endif +int yywrap(void) { return 1; } /* common section */ -#line 1075 "token.c" +#line 1069 "token.c" #define INITIAL 0 #define S_PL 1 @@ -1092,6 +1086,35 @@ char *yytext; static int yy_init_globals (void ); +/* Accessor methods to globals. + These are made visible to non-reentrant scanners for convenience. */ + +int yylex_destroy (void ); + +int yyget_debug (void ); + +void yyset_debug (int debug_flag ); + +YY_EXTRA_TYPE yyget_extra (void ); + +void yyset_extra (YY_EXTRA_TYPE user_defined ); + +FILE *yyget_in (void ); + +void yyset_in (FILE * in_str ); + +FILE *yyget_out (void ); + +void yyset_out (FILE * out_str ); + +int yyget_leng (void ); + +char *yyget_text (void ); + +int yyget_lineno (void ); + +void yyset_lineno (int line_number ); + /* Macros after this point can all be overridden by user definitions in * section 1. */ @@ -1227,10 +1250,10 @@ YY_DECL register char *yy_cp, *yy_bp; register int yy_act; -#line 114 "token.l" +#line 115 "token.l" -#line 1234 "token.c" +#line 1257 "token.c" if ( !(yy_init) ) { @@ -1321,84 +1344,84 @@ do_action: /* This label is used only to case 1: YY_RULE_SETUP -#line 116 "token.l" +#line 117 "token.l" { return(ADD); } YY_BREAK case 2: YY_RULE_SETUP -#line 117 "token.l" +#line 118 "token.l" { return(DELETE); } YY_BREAK case 3: YY_RULE_SETUP -#line 118 "token.l" +#line 119 "token.l" { return(DELETEALL); } YY_BREAK case 4: YY_RULE_SETUP -#line 119 "token.l" +#line 120 "token.l" { return(GET); } YY_BREAK case 5: YY_RULE_SETUP -#line 120 "token.l" +#line 121 "token.l" { return(FLUSH); } YY_BREAK case 6: YY_RULE_SETUP -#line 121 "token.l" +#line 122 "token.l" { return(DUMP); } YY_BREAK case 7: YY_RULE_SETUP -#line 122 "token.l" +#line 123 "token.l" { return(EXIT); } YY_BREAK case 8: YY_RULE_SETUP -#line 123 "token.l" +#line 124 "token.l" { return(EXIT); } YY_BREAK case 9: YY_RULE_SETUP -#line 124 "token.l" +#line 125 "token.l" { return(EXIT); } YY_BREAK /* for management SPD */ case 10: YY_RULE_SETUP -#line 127 "token.l" +#line 128 "token.l" { return(SPDADD); } YY_BREAK case 11: YY_RULE_SETUP -#line 128 "token.l" +#line 129 "token.l" { return(SPDDELETE); } YY_BREAK case 12: YY_RULE_SETUP -#line 129 "token.l" +#line 130 "token.l" { return(SPDDUMP); } YY_BREAK case 13: YY_RULE_SETUP -#line 130 "token.l" +#line 131 "token.l" { return(SPDFLUSH); } YY_BREAK case 14: YY_RULE_SETUP -#line 131 "token.l" +#line 132 "token.l" { return(TAGGED); } YY_BREAK case 15: YY_RULE_SETUP -#line 132 "token.l" +#line 133 "token.l" { BEGIN S_PL; return(F_POLICY); } YY_BREAK case 16: /* rule 16 can match eol */ YY_RULE_SETUP -#line 133 "token.l" +#line 134 "token.l" { yymore(); @@ -1420,13 +1443,13 @@ YY_RULE_SETUP YY_BREAK case 17: YY_RULE_SETUP -#line 151 "token.l" +#line 152 "token.l" { BEGIN INITIAL; return(EOT); } YY_BREAK /* address resolution flags */ case 18: YY_RULE_SETUP -#line 154 "token.l" +#line 155 "token.l" { yylval.val.len = strlen(yytext); yylval.val.buf = strdup(yytext); @@ -1438,37 +1461,37 @@ YY_RULE_SETUP /* security protocols */ case 19: YY_RULE_SETUP -#line 163 "token.l" +#line 164 "token.l" { yylval.num = 0; return(PR_AH); } YY_BREAK case 20: YY_RULE_SETUP -#line 164 "token.l" +#line 165 "token.l" { yylval.num = 0; return(PR_ESP); } YY_BREAK case 21: YY_RULE_SETUP -#line 165 "token.l" +#line 166 "token.l" { yylval.num = 1; return(PR_AH); } YY_BREAK case 22: YY_RULE_SETUP -#line 166 "token.l" +#line 167 "token.l" { yylval.num = 1; return(PR_ESP); } YY_BREAK case 23: YY_RULE_SETUP -#line 167 "token.l" +#line 168 "token.l" { yylval.num = 0; return(PR_ESPUDP); } YY_BREAK case 24: YY_RULE_SETUP -#line 168 "token.l" +#line 169 "token.l" { yylval.num = 0; return(PR_IPCOMP); } YY_BREAK case 25: YY_RULE_SETUP -#line 169 "token.l" +#line 170 "token.l" { yylval.num = 0; return(PR_TCP); } @@ -1476,72 +1499,72 @@ YY_RULE_SETUP /* authentication alogorithm */ case 26: YY_RULE_SETUP -#line 174 "token.l" +#line 175 "token.l" { BEGIN S_AUTHALG; return(F_AUTH); } YY_BREAK case 27: YY_RULE_SETUP -#line 175 "token.l" +#line 176 "token.l" { yylval.num = SADB_AALG_MD5HMAC; BEGIN INITIAL; return(ALG_AUTH); } YY_BREAK case 28: YY_RULE_SETUP -#line 176 "token.l" +#line 177 "token.l" { yylval.num = SADB_AALG_SHA1HMAC; BEGIN INITIAL; return(ALG_AUTH); } YY_BREAK case 29: YY_RULE_SETUP -#line 177 "token.l" +#line 178 "token.l" { yylval.num = SADB_X_AALG_MD5; BEGIN INITIAL; return(ALG_AUTH); } YY_BREAK case 30: YY_RULE_SETUP -#line 178 "token.l" +#line 179 "token.l" { yylval.num = SADB_X_AALG_SHA; BEGIN INITIAL; return(ALG_AUTH); } YY_BREAK case 31: YY_RULE_SETUP -#line 179 "token.l" +#line 180 "token.l" { yylval.num = SADB_X_AALG_SHA2_256; BEGIN INITIAL; return(ALG_AUTH); } YY_BREAK case 32: YY_RULE_SETUP -#line 180 "token.l" +#line 181 "token.l" { yylval.num = SADB_X_AALG_SHA2_256; BEGIN INITIAL; return(ALG_AUTH); } YY_BREAK case 33: YY_RULE_SETUP -#line 181 "token.l" +#line 182 "token.l" { yylval.num = SADB_X_AALG_SHA2_384; BEGIN INITIAL; return(ALG_AUTH); } YY_BREAK case 34: YY_RULE_SETUP -#line 182 "token.l" +#line 183 "token.l" { yylval.num = SADB_X_AALG_SHA2_384; BEGIN INITIAL; return(ALG_AUTH); } YY_BREAK case 35: YY_RULE_SETUP -#line 183 "token.l" +#line 184 "token.l" { yylval.num = SADB_X_AALG_SHA2_512; BEGIN INITIAL; return(ALG_AUTH); } YY_BREAK case 36: YY_RULE_SETUP -#line 184 "token.l" +#line 185 "token.l" { yylval.num = SADB_X_AALG_SHA2_512; BEGIN INITIAL; return(ALG_AUTH); } YY_BREAK case 37: YY_RULE_SETUP -#line 185 "token.l" +#line 186 "token.l" { yylval.num = SADB_X_AALG_RIPEMD160HMAC; BEGIN INITIAL; return(ALG_AUTH); } YY_BREAK case 38: YY_RULE_SETUP -#line 186 "token.l" +#line 187 "token.l" { yylval.num = SADB_X_AALG_AES_XCBC_MAC; BEGIN INITIAL; return(ALG_AUTH); } YY_BREAK case 39: YY_RULE_SETUP -#line 187 "token.l" +#line 188 "token.l" { #ifdef SADB_X_AALG_TCP_MD5 yylval.num = SADB_X_AALG_TCP_MD5; @@ -1552,63 +1575,63 @@ YY_RULE_SETUP YY_BREAK case 40: YY_RULE_SETUP -#line 194 "token.l" +#line 195 "token.l" { yylval.num = SADB_X_AALG_NULL; BEGIN INITIAL; return(ALG_AUTH_NOKEY); } YY_BREAK /* encryption alogorithm */ case 41: YY_RULE_SETUP -#line 197 "token.l" +#line 198 "token.l" { BEGIN S_ENCALG; return(F_ENC); } YY_BREAK case 42: YY_RULE_SETUP -#line 198 "token.l" +#line 199 "token.l" { yylval.num = SADB_EALG_DESCBC; BEGIN INITIAL; return(ALG_ENC); } YY_BREAK case 43: YY_RULE_SETUP -#line 199 "token.l" +#line 200 "token.l" { yylval.num = SADB_EALG_3DESCBC; BEGIN INITIAL; return(ALG_ENC); } YY_BREAK case 44: YY_RULE_SETUP -#line 200 "token.l" +#line 201 "token.l" { yylval.num = SADB_EALG_NULL; BEGIN INITIAL; return(ALG_ENC_NOKEY); } YY_BREAK case 45: YY_RULE_SETUP -#line 201 "token.l" +#line 202 "token.l" { yylval.num = SADB_EALG_NULL; BEGIN INITIAL; return(ALG_ENC_OLD); } YY_BREAK case 46: YY_RULE_SETUP -#line 202 "token.l" +#line 203 "token.l" { yylval.num = SADB_X_EALG_BLOWFISHCBC; BEGIN INITIAL; return(ALG_ENC); } YY_BREAK case 47: YY_RULE_SETUP -#line 203 "token.l" +#line 204 "token.l" { yylval.num = SADB_X_EALG_CAST128CBC; BEGIN INITIAL; return(ALG_ENC); } YY_BREAK case 48: YY_RULE_SETUP -#line 204 "token.l" +#line 205 "token.l" { yylval.num = SADB_EALG_DESCBC; BEGIN INITIAL; return(ALG_ENC_DESDERIV); } YY_BREAK case 49: YY_RULE_SETUP -#line 205 "token.l" +#line 206 "token.l" { yylval.num = SADB_EALG_DESCBC; BEGIN INITIAL; return(ALG_ENC_DES32IV); } YY_BREAK case 50: YY_RULE_SETUP -#line 206 "token.l" +#line 207 "token.l" { yylval.num = SADB_X_EALG_TWOFISHCBC; BEGIN INITIAL; return(ALG_ENC); } YY_BREAK case 51: YY_RULE_SETUP -#line 207 "token.l" +#line 208 "token.l" { #ifdef SADB_X_EALG_AESCBC yylval.num = SADB_X_EALG_AESCBC; BEGIN INITIAL; return(ALG_ENC); @@ -1617,7 +1640,7 @@ YY_RULE_SETUP YY_BREAK case 52: YY_RULE_SETUP -#line 212 "token.l" +#line 213 "token.l" { #ifdef SADB_X_EALG_AESCBC yylval.num = SADB_X_EALG_AESCBC; BEGIN INITIAL; return(ALG_ENC); @@ -1626,12 +1649,12 @@ YY_RULE_SETUP YY_BREAK case 53: YY_RULE_SETUP -#line 217 "token.l" +#line 218 "token.l" { yylval.num = SADB_X_EALG_AESCTR; BEGIN INITIAL; return(ALG_ENC); } YY_BREAK case 54: YY_RULE_SETUP -#line 218 "token.l" +#line 219 "token.l" { #ifdef SADB_X_EALG_CAMELLIACBC yylval.num = SADB_X_EALG_CAMELLIACBC; BEGIN INITIAL; return(ALG_ENC); @@ -1641,152 +1664,152 @@ YY_RULE_SETUP /* compression algorithms */ case 55: YY_RULE_SETUP -#line 225 "token.l" +#line 226 "token.l" { return(F_COMP); } YY_BREAK case 56: YY_RULE_SETUP -#line 226 "token.l" +#line 227 "token.l" { yylval.num = SADB_X_CALG_OUI; return(ALG_COMP); } YY_BREAK case 57: YY_RULE_SETUP -#line 227 "token.l" +#line 228 "token.l" { yylval.num = SADB_X_CALG_DEFLATE; return(ALG_COMP); } YY_BREAK case 58: YY_RULE_SETUP -#line 228 "token.l" +#line 229 "token.l" { yylval.num = SADB_X_CALG_LZS; return(ALG_COMP); } YY_BREAK case 59: YY_RULE_SETUP -#line 229 "token.l" +#line 230 "token.l" { return(F_RAWCPI); } YY_BREAK /* extension */ case 60: YY_RULE_SETUP -#line 232 "token.l" +#line 233 "token.l" { return(F_MODE); } YY_BREAK case 61: YY_RULE_SETUP -#line 233 "token.l" +#line 234 "token.l" { yylval.num = IPSEC_MODE_TRANSPORT; return(MODE); } YY_BREAK case 62: YY_RULE_SETUP -#line 234 "token.l" +#line 235 "token.l" { yylval.num = IPSEC_MODE_TUNNEL; return(MODE); } YY_BREAK case 63: YY_RULE_SETUP -#line 235 "token.l" +#line 236 "token.l" { return(F_REQID); } YY_BREAK case 64: YY_RULE_SETUP -#line 236 "token.l" +#line 237 "token.l" { return(F_EXT); } YY_BREAK case 65: YY_RULE_SETUP -#line 237 "token.l" +#line 238 "token.l" { yylval.num = SADB_X_EXT_PRAND; return(EXTENSION); } YY_BREAK case 66: YY_RULE_SETUP -#line 238 "token.l" +#line 239 "token.l" { yylval.num = SADB_X_EXT_PSEQ; return(EXTENSION); } YY_BREAK case 67: YY_RULE_SETUP -#line 239 "token.l" +#line 240 "token.l" { yylval.num = SADB_X_EXT_PZERO; return(EXTENSION); } YY_BREAK case 68: YY_RULE_SETUP -#line 240 "token.l" +#line 241 "token.l" { return(NOCYCLICSEQ); } YY_BREAK case 69: YY_RULE_SETUP -#line 241 "token.l" +#line 242 "token.l" { return(F_REPLAY); } YY_BREAK case 70: YY_RULE_SETUP -#line 242 "token.l" +#line 243 "token.l" { return(F_LIFETIME_HARD); } YY_BREAK case 71: YY_RULE_SETUP -#line 243 "token.l" +#line 244 "token.l" { return(F_LIFETIME_SOFT); } YY_BREAK case 72: YY_RULE_SETUP -#line 244 "token.l" +#line 245 "token.l" { return(F_LIFEBYTE_HARD); } YY_BREAK case 73: YY_RULE_SETUP -#line 245 "token.l" +#line 246 "token.l" { return(F_LIFEBYTE_SOFT); } YY_BREAK case 74: YY_RULE_SETUP -#line 246 "token.l" +#line 247 "token.l" { return(SECURITY_CTX); } YY_BREAK /* ... */ case 75: YY_RULE_SETUP -#line 249 "token.l" +#line 250 "token.l" { return(ANY); } YY_BREAK case 76: YY_RULE_SETUP -#line 250 "token.l" +#line 251 "token.l" { } YY_BREAK case 77: /* rule 77 can match eol */ YY_RULE_SETUP -#line 251 "token.l" +#line 252 "token.l" { lineno++; } YY_BREAK case 78: YY_RULE_SETUP -#line 252 "token.l" +#line 253 "token.l" YY_BREAK case 79: YY_RULE_SETUP -#line 253 "token.l" +#line 254 "token.l" { return(EOT); } YY_BREAK /* for address parameters: /prefix, [port] */ case 80: YY_RULE_SETUP -#line 256 "token.l" +#line 257 "token.l" { return SLASH; } YY_BREAK case 81: YY_RULE_SETUP -#line 257 "token.l" +#line 258 "token.l" { return BLCL; } YY_BREAK case 82: YY_RULE_SETUP -#line 258 "token.l" +#line 259 "token.l" { return ELCL; } YY_BREAK /* parameter */ case 83: YY_RULE_SETUP -#line 261 "token.l" +#line 262 "token.l" { char *bp; @@ -1796,7 +1819,7 @@ YY_RULE_SETUP YY_BREAK case 84: YY_RULE_SETUP -#line 268 "token.l" +#line 269 "token.l" { yylval.val.buf = strdup(yytext + 2); if (!yylval.val.buf) @@ -1809,7 +1832,7 @@ YY_RULE_SETUP case 85: /* rule 85 can match eol */ YY_RULE_SETUP -#line 277 "token.l" +#line 278 "token.l" { char *p = yytext; while (*++p != '"') ; @@ -1825,7 +1848,7 @@ YY_RULE_SETUP YY_BREAK case 86: YY_RULE_SETUP -#line 290 "token.l" +#line 291 "token.l" { yylval.val.len = yyleng; yylval.val.buf = strdup(yytext); @@ -1836,7 +1859,7 @@ YY_RULE_SETUP YY_BREAK case 87: YY_RULE_SETUP -#line 298 "token.l" +#line 299 "token.l" { yylval.val.len = yyleng; yylval.val.buf = strdup(yytext); @@ -1847,7 +1870,7 @@ YY_RULE_SETUP YY_BREAK case 88: YY_RULE_SETUP -#line 306 "token.l" +#line 307 "token.l" { yyfatal("Syntax error"); /*NOTREACHED*/ @@ -1855,10 +1878,10 @@ YY_RULE_SETUP YY_BREAK case 89: YY_RULE_SETUP -#line 311 "token.l" +#line 312 "token.l" ECHO; YY_BREAK -#line 1862 "token.c" +#line 1885 "token.c" case YY_STATE_EOF(INITIAL): case YY_STATE_EOF(S_PL): case YY_STATE_EOF(S_AUTHALG): @@ -2411,9 +2434,19 @@ static void yy_load_buffer_state (void) yyfree((void *) b ); } -#ifndef __cplusplus +#ifndef _UNISTD_H /* assume unistd.h has isatty() for us */ +#ifdef __cplusplus +extern "C" { +#endif +#ifdef __THROW /* this is a gnuism */ +extern int isatty (int ) __THROW; +#else extern int isatty (int ); -#endif /* __cplusplus */ +#endif +#ifdef __cplusplus +} +#endif +#endif /* Initializes or reinitializes a buffer. * This function is sometimes called more than once on the same buffer, @@ -2859,7 +2892,7 @@ void yyfree (void * ptr ) #define YYTABLES_NAME "yytables" -#line 311 "token.l" +#line 312 "token.l"