patch-src_setkey_token_c 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707
  1. $Id: update-patches 24 2008-08-31 14:56:13Z wbx $
  2. --- ipsec-tools-0.7.2.orig/src/setkey/token.c 2008-07-23 10:26:58.000000000 +0200
  3. +++ ipsec-tools-0.7.2/src/setkey/token.c 2009-05-29 15:26:39.126303087 +0200
  4. @@ -8,7 +8,7 @@
  5. #define FLEX_SCANNER
  6. #define YY_FLEX_MAJOR_VERSION 2
  7. #define YY_FLEX_MINOR_VERSION 5
  8. -#define YY_FLEX_SUBMINOR_VERSION 34
  9. +#define YY_FLEX_SUBMINOR_VERSION 35
  10. #if YY_FLEX_SUBMINOR_VERSION > 0
  11. #define FLEX_BETA
  12. #endif
  13. @@ -178,13 +178,6 @@ extern FILE *yyin, *yyout;
  14. #define unput(c) yyunput( c, (yytext_ptr) )
  15. -/* The following is because we cannot portably get our hands on size_t
  16. - * (without autoconf's help, which isn't available because we want
  17. - * flex-generated scanners to compile on their own).
  18. - * Given that the standard has decreed that size_t exists since 1989,
  19. - * I guess we can afford to depend on it. Manoj.
  20. - */
  21. -
  22. #ifndef YY_TYPEDEF_YY_SIZE_T
  23. #define YY_TYPEDEF_YY_SIZE_T
  24. typedef size_t yy_size_t;
  25. @@ -1069,9 +1062,10 @@ char *yytext;
  26. #if defined(SADB_X_EALG_AES) && ! defined(SADB_X_EALG_AESCBC)
  27. #define SADB_X_EALG_AESCBC SADB_X_EALG_AES
  28. #endif
  29. +int yywrap(void) { return 1; }
  30. /* common section */
  31. -#line 1075 "token.c"
  32. +#line 1069 "token.c"
  33. #define INITIAL 0
  34. #define S_PL 1
  35. @@ -1092,6 +1086,35 @@ char *yytext;
  36. static int yy_init_globals (void );
  37. +/* Accessor methods to globals.
  38. + These are made visible to non-reentrant scanners for convenience. */
  39. +
  40. +int yylex_destroy (void );
  41. +
  42. +int yyget_debug (void );
  43. +
  44. +void yyset_debug (int debug_flag );
  45. +
  46. +YY_EXTRA_TYPE yyget_extra (void );
  47. +
  48. +void yyset_extra (YY_EXTRA_TYPE user_defined );
  49. +
  50. +FILE *yyget_in (void );
  51. +
  52. +void yyset_in (FILE * in_str );
  53. +
  54. +FILE *yyget_out (void );
  55. +
  56. +void yyset_out (FILE * out_str );
  57. +
  58. +int yyget_leng (void );
  59. +
  60. +char *yyget_text (void );
  61. +
  62. +int yyget_lineno (void );
  63. +
  64. +void yyset_lineno (int line_number );
  65. +
  66. /* Macros after this point can all be overridden by user definitions in
  67. * section 1.
  68. */
  69. @@ -1227,10 +1250,10 @@ YY_DECL
  70. register char *yy_cp, *yy_bp;
  71. register int yy_act;
  72. -#line 114 "token.l"
  73. +#line 115 "token.l"
  74. -#line 1234 "token.c"
  75. +#line 1257 "token.c"
  76. if ( !(yy_init) )
  77. {
  78. @@ -1321,84 +1344,84 @@ do_action: /* This label is used only to
  79. case 1:
  80. YY_RULE_SETUP
  81. -#line 116 "token.l"
  82. +#line 117 "token.l"
  83. { return(ADD); }
  84. YY_BREAK
  85. case 2:
  86. YY_RULE_SETUP
  87. -#line 117 "token.l"
  88. +#line 118 "token.l"
  89. { return(DELETE); }
  90. YY_BREAK
  91. case 3:
  92. YY_RULE_SETUP
  93. -#line 118 "token.l"
  94. +#line 119 "token.l"
  95. { return(DELETEALL); }
  96. YY_BREAK
  97. case 4:
  98. YY_RULE_SETUP
  99. -#line 119 "token.l"
  100. +#line 120 "token.l"
  101. { return(GET); }
  102. YY_BREAK
  103. case 5:
  104. YY_RULE_SETUP
  105. -#line 120 "token.l"
  106. +#line 121 "token.l"
  107. { return(FLUSH); }
  108. YY_BREAK
  109. case 6:
  110. YY_RULE_SETUP
  111. -#line 121 "token.l"
  112. +#line 122 "token.l"
  113. { return(DUMP); }
  114. YY_BREAK
  115. case 7:
  116. YY_RULE_SETUP
  117. -#line 122 "token.l"
  118. +#line 123 "token.l"
  119. { return(EXIT); }
  120. YY_BREAK
  121. case 8:
  122. YY_RULE_SETUP
  123. -#line 123 "token.l"
  124. +#line 124 "token.l"
  125. { return(EXIT); }
  126. YY_BREAK
  127. case 9:
  128. YY_RULE_SETUP
  129. -#line 124 "token.l"
  130. +#line 125 "token.l"
  131. { return(EXIT); }
  132. YY_BREAK
  133. /* for management SPD */
  134. case 10:
  135. YY_RULE_SETUP
  136. -#line 127 "token.l"
  137. +#line 128 "token.l"
  138. { return(SPDADD); }
  139. YY_BREAK
  140. case 11:
  141. YY_RULE_SETUP
  142. -#line 128 "token.l"
  143. +#line 129 "token.l"
  144. { return(SPDDELETE); }
  145. YY_BREAK
  146. case 12:
  147. YY_RULE_SETUP
  148. -#line 129 "token.l"
  149. +#line 130 "token.l"
  150. { return(SPDDUMP); }
  151. YY_BREAK
  152. case 13:
  153. YY_RULE_SETUP
  154. -#line 130 "token.l"
  155. +#line 131 "token.l"
  156. { return(SPDFLUSH); }
  157. YY_BREAK
  158. case 14:
  159. YY_RULE_SETUP
  160. -#line 131 "token.l"
  161. +#line 132 "token.l"
  162. { return(TAGGED); }
  163. YY_BREAK
  164. case 15:
  165. YY_RULE_SETUP
  166. -#line 132 "token.l"
  167. +#line 133 "token.l"
  168. { BEGIN S_PL; return(F_POLICY); }
  169. YY_BREAK
  170. case 16:
  171. /* rule 16 can match eol */
  172. YY_RULE_SETUP
  173. -#line 133 "token.l"
  174. +#line 134 "token.l"
  175. {
  176. yymore();
  177. @@ -1420,13 +1443,13 @@ YY_RULE_SETUP
  178. YY_BREAK
  179. case 17:
  180. YY_RULE_SETUP
  181. -#line 151 "token.l"
  182. +#line 152 "token.l"
  183. { BEGIN INITIAL; return(EOT); }
  184. YY_BREAK
  185. /* address resolution flags */
  186. case 18:
  187. YY_RULE_SETUP
  188. -#line 154 "token.l"
  189. +#line 155 "token.l"
  190. {
  191. yylval.val.len = strlen(yytext);
  192. yylval.val.buf = strdup(yytext);
  193. @@ -1438,37 +1461,37 @@ YY_RULE_SETUP
  194. /* security protocols */
  195. case 19:
  196. YY_RULE_SETUP
  197. -#line 163 "token.l"
  198. +#line 164 "token.l"
  199. { yylval.num = 0; return(PR_AH); }
  200. YY_BREAK
  201. case 20:
  202. YY_RULE_SETUP
  203. -#line 164 "token.l"
  204. +#line 165 "token.l"
  205. { yylval.num = 0; return(PR_ESP); }
  206. YY_BREAK
  207. case 21:
  208. YY_RULE_SETUP
  209. -#line 165 "token.l"
  210. +#line 166 "token.l"
  211. { yylval.num = 1; return(PR_AH); }
  212. YY_BREAK
  213. case 22:
  214. YY_RULE_SETUP
  215. -#line 166 "token.l"
  216. +#line 167 "token.l"
  217. { yylval.num = 1; return(PR_ESP); }
  218. YY_BREAK
  219. case 23:
  220. YY_RULE_SETUP
  221. -#line 167 "token.l"
  222. +#line 168 "token.l"
  223. { yylval.num = 0; return(PR_ESPUDP); }
  224. YY_BREAK
  225. case 24:
  226. YY_RULE_SETUP
  227. -#line 168 "token.l"
  228. +#line 169 "token.l"
  229. { yylval.num = 0; return(PR_IPCOMP); }
  230. YY_BREAK
  231. case 25:
  232. YY_RULE_SETUP
  233. -#line 169 "token.l"
  234. +#line 170 "token.l"
  235. {
  236. yylval.num = 0; return(PR_TCP);
  237. }
  238. @@ -1476,72 +1499,72 @@ YY_RULE_SETUP
  239. /* authentication alogorithm */
  240. case 26:
  241. YY_RULE_SETUP
  242. -#line 174 "token.l"
  243. +#line 175 "token.l"
  244. { BEGIN S_AUTHALG; return(F_AUTH); }
  245. YY_BREAK
  246. case 27:
  247. YY_RULE_SETUP
  248. -#line 175 "token.l"
  249. +#line 176 "token.l"
  250. { yylval.num = SADB_AALG_MD5HMAC; BEGIN INITIAL; return(ALG_AUTH); }
  251. YY_BREAK
  252. case 28:
  253. YY_RULE_SETUP
  254. -#line 176 "token.l"
  255. +#line 177 "token.l"
  256. { yylval.num = SADB_AALG_SHA1HMAC; BEGIN INITIAL; return(ALG_AUTH); }
  257. YY_BREAK
  258. case 29:
  259. YY_RULE_SETUP
  260. -#line 177 "token.l"
  261. +#line 178 "token.l"
  262. { yylval.num = SADB_X_AALG_MD5; BEGIN INITIAL; return(ALG_AUTH); }
  263. YY_BREAK
  264. case 30:
  265. YY_RULE_SETUP
  266. -#line 178 "token.l"
  267. +#line 179 "token.l"
  268. { yylval.num = SADB_X_AALG_SHA; BEGIN INITIAL; return(ALG_AUTH); }
  269. YY_BREAK
  270. case 31:
  271. YY_RULE_SETUP
  272. -#line 179 "token.l"
  273. +#line 180 "token.l"
  274. { yylval.num = SADB_X_AALG_SHA2_256; BEGIN INITIAL; return(ALG_AUTH); }
  275. YY_BREAK
  276. case 32:
  277. YY_RULE_SETUP
  278. -#line 180 "token.l"
  279. +#line 181 "token.l"
  280. { yylval.num = SADB_X_AALG_SHA2_256; BEGIN INITIAL; return(ALG_AUTH); }
  281. YY_BREAK
  282. case 33:
  283. YY_RULE_SETUP
  284. -#line 181 "token.l"
  285. +#line 182 "token.l"
  286. { yylval.num = SADB_X_AALG_SHA2_384; BEGIN INITIAL; return(ALG_AUTH); }
  287. YY_BREAK
  288. case 34:
  289. YY_RULE_SETUP
  290. -#line 182 "token.l"
  291. +#line 183 "token.l"
  292. { yylval.num = SADB_X_AALG_SHA2_384; BEGIN INITIAL; return(ALG_AUTH); }
  293. YY_BREAK
  294. case 35:
  295. YY_RULE_SETUP
  296. -#line 183 "token.l"
  297. +#line 184 "token.l"
  298. { yylval.num = SADB_X_AALG_SHA2_512; BEGIN INITIAL; return(ALG_AUTH); }
  299. YY_BREAK
  300. case 36:
  301. YY_RULE_SETUP
  302. -#line 184 "token.l"
  303. +#line 185 "token.l"
  304. { yylval.num = SADB_X_AALG_SHA2_512; BEGIN INITIAL; return(ALG_AUTH); }
  305. YY_BREAK
  306. case 37:
  307. YY_RULE_SETUP
  308. -#line 185 "token.l"
  309. +#line 186 "token.l"
  310. { yylval.num = SADB_X_AALG_RIPEMD160HMAC; BEGIN INITIAL; return(ALG_AUTH); }
  311. YY_BREAK
  312. case 38:
  313. YY_RULE_SETUP
  314. -#line 186 "token.l"
  315. +#line 187 "token.l"
  316. { yylval.num = SADB_X_AALG_AES_XCBC_MAC; BEGIN INITIAL; return(ALG_AUTH); }
  317. YY_BREAK
  318. case 39:
  319. YY_RULE_SETUP
  320. -#line 187 "token.l"
  321. +#line 188 "token.l"
  322. {
  323. #ifdef SADB_X_AALG_TCP_MD5
  324. yylval.num = SADB_X_AALG_TCP_MD5;
  325. @@ -1552,63 +1575,63 @@ YY_RULE_SETUP
  326. YY_BREAK
  327. case 40:
  328. YY_RULE_SETUP
  329. -#line 194 "token.l"
  330. +#line 195 "token.l"
  331. { yylval.num = SADB_X_AALG_NULL; BEGIN INITIAL; return(ALG_AUTH_NOKEY); }
  332. YY_BREAK
  333. /* encryption alogorithm */
  334. case 41:
  335. YY_RULE_SETUP
  336. -#line 197 "token.l"
  337. +#line 198 "token.l"
  338. { BEGIN S_ENCALG; return(F_ENC); }
  339. YY_BREAK
  340. case 42:
  341. YY_RULE_SETUP
  342. -#line 198 "token.l"
  343. +#line 199 "token.l"
  344. { yylval.num = SADB_EALG_DESCBC; BEGIN INITIAL; return(ALG_ENC); }
  345. YY_BREAK
  346. case 43:
  347. YY_RULE_SETUP
  348. -#line 199 "token.l"
  349. +#line 200 "token.l"
  350. { yylval.num = SADB_EALG_3DESCBC; BEGIN INITIAL; return(ALG_ENC); }
  351. YY_BREAK
  352. case 44:
  353. YY_RULE_SETUP
  354. -#line 200 "token.l"
  355. +#line 201 "token.l"
  356. { yylval.num = SADB_EALG_NULL; BEGIN INITIAL; return(ALG_ENC_NOKEY); }
  357. YY_BREAK
  358. case 45:
  359. YY_RULE_SETUP
  360. -#line 201 "token.l"
  361. +#line 202 "token.l"
  362. { yylval.num = SADB_EALG_NULL; BEGIN INITIAL; return(ALG_ENC_OLD); }
  363. YY_BREAK
  364. case 46:
  365. YY_RULE_SETUP
  366. -#line 202 "token.l"
  367. +#line 203 "token.l"
  368. { yylval.num = SADB_X_EALG_BLOWFISHCBC; BEGIN INITIAL; return(ALG_ENC); }
  369. YY_BREAK
  370. case 47:
  371. YY_RULE_SETUP
  372. -#line 203 "token.l"
  373. +#line 204 "token.l"
  374. { yylval.num = SADB_X_EALG_CAST128CBC; BEGIN INITIAL; return(ALG_ENC); }
  375. YY_BREAK
  376. case 48:
  377. YY_RULE_SETUP
  378. -#line 204 "token.l"
  379. +#line 205 "token.l"
  380. { yylval.num = SADB_EALG_DESCBC; BEGIN INITIAL; return(ALG_ENC_DESDERIV); }
  381. YY_BREAK
  382. case 49:
  383. YY_RULE_SETUP
  384. -#line 205 "token.l"
  385. +#line 206 "token.l"
  386. { yylval.num = SADB_EALG_DESCBC; BEGIN INITIAL; return(ALG_ENC_DES32IV); }
  387. YY_BREAK
  388. case 50:
  389. YY_RULE_SETUP
  390. -#line 206 "token.l"
  391. +#line 207 "token.l"
  392. { yylval.num = SADB_X_EALG_TWOFISHCBC; BEGIN INITIAL; return(ALG_ENC); }
  393. YY_BREAK
  394. case 51:
  395. YY_RULE_SETUP
  396. -#line 207 "token.l"
  397. +#line 208 "token.l"
  398. {
  399. #ifdef SADB_X_EALG_AESCBC
  400. yylval.num = SADB_X_EALG_AESCBC; BEGIN INITIAL; return(ALG_ENC);
  401. @@ -1617,7 +1640,7 @@ YY_RULE_SETUP
  402. YY_BREAK
  403. case 52:
  404. YY_RULE_SETUP
  405. -#line 212 "token.l"
  406. +#line 213 "token.l"
  407. {
  408. #ifdef SADB_X_EALG_AESCBC
  409. yylval.num = SADB_X_EALG_AESCBC; BEGIN INITIAL; return(ALG_ENC);
  410. @@ -1626,12 +1649,12 @@ YY_RULE_SETUP
  411. YY_BREAK
  412. case 53:
  413. YY_RULE_SETUP
  414. -#line 217 "token.l"
  415. +#line 218 "token.l"
  416. { yylval.num = SADB_X_EALG_AESCTR; BEGIN INITIAL; return(ALG_ENC); }
  417. YY_BREAK
  418. case 54:
  419. YY_RULE_SETUP
  420. -#line 218 "token.l"
  421. +#line 219 "token.l"
  422. {
  423. #ifdef SADB_X_EALG_CAMELLIACBC
  424. yylval.num = SADB_X_EALG_CAMELLIACBC; BEGIN INITIAL; return(ALG_ENC);
  425. @@ -1641,152 +1664,152 @@ YY_RULE_SETUP
  426. /* compression algorithms */
  427. case 55:
  428. YY_RULE_SETUP
  429. -#line 225 "token.l"
  430. +#line 226 "token.l"
  431. { return(F_COMP); }
  432. YY_BREAK
  433. case 56:
  434. YY_RULE_SETUP
  435. -#line 226 "token.l"
  436. +#line 227 "token.l"
  437. { yylval.num = SADB_X_CALG_OUI; return(ALG_COMP); }
  438. YY_BREAK
  439. case 57:
  440. YY_RULE_SETUP
  441. -#line 227 "token.l"
  442. +#line 228 "token.l"
  443. { yylval.num = SADB_X_CALG_DEFLATE; return(ALG_COMP); }
  444. YY_BREAK
  445. case 58:
  446. YY_RULE_SETUP
  447. -#line 228 "token.l"
  448. +#line 229 "token.l"
  449. { yylval.num = SADB_X_CALG_LZS; return(ALG_COMP); }
  450. YY_BREAK
  451. case 59:
  452. YY_RULE_SETUP
  453. -#line 229 "token.l"
  454. +#line 230 "token.l"
  455. { return(F_RAWCPI); }
  456. YY_BREAK
  457. /* extension */
  458. case 60:
  459. YY_RULE_SETUP
  460. -#line 232 "token.l"
  461. +#line 233 "token.l"
  462. { return(F_MODE); }
  463. YY_BREAK
  464. case 61:
  465. YY_RULE_SETUP
  466. -#line 233 "token.l"
  467. +#line 234 "token.l"
  468. { yylval.num = IPSEC_MODE_TRANSPORT; return(MODE); }
  469. YY_BREAK
  470. case 62:
  471. YY_RULE_SETUP
  472. -#line 234 "token.l"
  473. +#line 235 "token.l"
  474. { yylval.num = IPSEC_MODE_TUNNEL; return(MODE); }
  475. YY_BREAK
  476. case 63:
  477. YY_RULE_SETUP
  478. -#line 235 "token.l"
  479. +#line 236 "token.l"
  480. { return(F_REQID); }
  481. YY_BREAK
  482. case 64:
  483. YY_RULE_SETUP
  484. -#line 236 "token.l"
  485. +#line 237 "token.l"
  486. { return(F_EXT); }
  487. YY_BREAK
  488. case 65:
  489. YY_RULE_SETUP
  490. -#line 237 "token.l"
  491. +#line 238 "token.l"
  492. { yylval.num = SADB_X_EXT_PRAND; return(EXTENSION); }
  493. YY_BREAK
  494. case 66:
  495. YY_RULE_SETUP
  496. -#line 238 "token.l"
  497. +#line 239 "token.l"
  498. { yylval.num = SADB_X_EXT_PSEQ; return(EXTENSION); }
  499. YY_BREAK
  500. case 67:
  501. YY_RULE_SETUP
  502. -#line 239 "token.l"
  503. +#line 240 "token.l"
  504. { yylval.num = SADB_X_EXT_PZERO; return(EXTENSION); }
  505. YY_BREAK
  506. case 68:
  507. YY_RULE_SETUP
  508. -#line 240 "token.l"
  509. +#line 241 "token.l"
  510. { return(NOCYCLICSEQ); }
  511. YY_BREAK
  512. case 69:
  513. YY_RULE_SETUP
  514. -#line 241 "token.l"
  515. +#line 242 "token.l"
  516. { return(F_REPLAY); }
  517. YY_BREAK
  518. case 70:
  519. YY_RULE_SETUP
  520. -#line 242 "token.l"
  521. +#line 243 "token.l"
  522. { return(F_LIFETIME_HARD); }
  523. YY_BREAK
  524. case 71:
  525. YY_RULE_SETUP
  526. -#line 243 "token.l"
  527. +#line 244 "token.l"
  528. { return(F_LIFETIME_SOFT); }
  529. YY_BREAK
  530. case 72:
  531. YY_RULE_SETUP
  532. -#line 244 "token.l"
  533. +#line 245 "token.l"
  534. { return(F_LIFEBYTE_HARD); }
  535. YY_BREAK
  536. case 73:
  537. YY_RULE_SETUP
  538. -#line 245 "token.l"
  539. +#line 246 "token.l"
  540. { return(F_LIFEBYTE_SOFT); }
  541. YY_BREAK
  542. case 74:
  543. YY_RULE_SETUP
  544. -#line 246 "token.l"
  545. +#line 247 "token.l"
  546. { return(SECURITY_CTX); }
  547. YY_BREAK
  548. /* ... */
  549. case 75:
  550. YY_RULE_SETUP
  551. -#line 249 "token.l"
  552. +#line 250 "token.l"
  553. { return(ANY); }
  554. YY_BREAK
  555. case 76:
  556. YY_RULE_SETUP
  557. -#line 250 "token.l"
  558. +#line 251 "token.l"
  559. { }
  560. YY_BREAK
  561. case 77:
  562. /* rule 77 can match eol */
  563. YY_RULE_SETUP
  564. -#line 251 "token.l"
  565. +#line 252 "token.l"
  566. { lineno++; }
  567. YY_BREAK
  568. case 78:
  569. YY_RULE_SETUP
  570. -#line 252 "token.l"
  571. +#line 253 "token.l"
  572. YY_BREAK
  573. case 79:
  574. YY_RULE_SETUP
  575. -#line 253 "token.l"
  576. +#line 254 "token.l"
  577. { return(EOT); }
  578. YY_BREAK
  579. /* for address parameters: /prefix, [port] */
  580. case 80:
  581. YY_RULE_SETUP
  582. -#line 256 "token.l"
  583. +#line 257 "token.l"
  584. { return SLASH; }
  585. YY_BREAK
  586. case 81:
  587. YY_RULE_SETUP
  588. -#line 257 "token.l"
  589. +#line 258 "token.l"
  590. { return BLCL; }
  591. YY_BREAK
  592. case 82:
  593. YY_RULE_SETUP
  594. -#line 258 "token.l"
  595. +#line 259 "token.l"
  596. { return ELCL; }
  597. YY_BREAK
  598. /* parameter */
  599. case 83:
  600. YY_RULE_SETUP
  601. -#line 261 "token.l"
  602. +#line 262 "token.l"
  603. {
  604. char *bp;
  605. @@ -1796,7 +1819,7 @@ YY_RULE_SETUP
  606. YY_BREAK
  607. case 84:
  608. YY_RULE_SETUP
  609. -#line 268 "token.l"
  610. +#line 269 "token.l"
  611. {
  612. yylval.val.buf = strdup(yytext + 2);
  613. if (!yylval.val.buf)
  614. @@ -1809,7 +1832,7 @@ YY_RULE_SETUP
  615. case 85:
  616. /* rule 85 can match eol */
  617. YY_RULE_SETUP
  618. -#line 277 "token.l"
  619. +#line 278 "token.l"
  620. {
  621. char *p = yytext;
  622. while (*++p != '"') ;
  623. @@ -1825,7 +1848,7 @@ YY_RULE_SETUP
  624. YY_BREAK
  625. case 86:
  626. YY_RULE_SETUP
  627. -#line 290 "token.l"
  628. +#line 291 "token.l"
  629. {
  630. yylval.val.len = yyleng;
  631. yylval.val.buf = strdup(yytext);
  632. @@ -1836,7 +1859,7 @@ YY_RULE_SETUP
  633. YY_BREAK
  634. case 87:
  635. YY_RULE_SETUP
  636. -#line 298 "token.l"
  637. +#line 299 "token.l"
  638. {
  639. yylval.val.len = yyleng;
  640. yylval.val.buf = strdup(yytext);
  641. @@ -1847,7 +1870,7 @@ YY_RULE_SETUP
  642. YY_BREAK
  643. case 88:
  644. YY_RULE_SETUP
  645. -#line 306 "token.l"
  646. +#line 307 "token.l"
  647. {
  648. yyfatal("Syntax error");
  649. /*NOTREACHED*/
  650. @@ -1855,10 +1878,10 @@ YY_RULE_SETUP
  651. YY_BREAK
  652. case 89:
  653. YY_RULE_SETUP
  654. -#line 311 "token.l"
  655. +#line 312 "token.l"
  656. ECHO;
  657. YY_BREAK
  658. -#line 1862 "token.c"
  659. +#line 1885 "token.c"
  660. case YY_STATE_EOF(INITIAL):
  661. case YY_STATE_EOF(S_PL):
  662. case YY_STATE_EOF(S_AUTHALG):
  663. @@ -2411,9 +2434,19 @@ static void yy_load_buffer_state (void)
  664. yyfree((void *) b );
  665. }
  666. -#ifndef __cplusplus
  667. +#ifndef _UNISTD_H /* assume unistd.h has isatty() for us */
  668. +#ifdef __cplusplus
  669. +extern "C" {
  670. +#endif
  671. +#ifdef __THROW /* this is a gnuism */
  672. +extern int isatty (int ) __THROW;
  673. +#else
  674. extern int isatty (int );
  675. -#endif /* __cplusplus */
  676. +#endif
  677. +#ifdef __cplusplus
  678. +}
  679. +#endif
  680. +#endif
  681. /* Initializes or reinitializes a buffer.
  682. * This function is sometimes called more than once on the same buffer,
  683. @@ -2859,7 +2892,7 @@ void yyfree (void * ptr )
  684. #define YYTABLES_NAME "yytables"
  685. -#line 311 "token.l"
  686. +#line 312 "token.l"