keywords.h 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203
  1. /*
  2. * Copyright (C) 2005 Andreas Steffen
  3. * HSR Hochschule fuer Technik Rapperswil
  4. *
  5. * This program is free software; you can redistribute it and/or modify it
  6. * under the terms of the GNU General Public License as published by the
  7. * Free Software Foundation; either version 2 of the License, or (at your
  8. * option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
  9. *
  10. * This program is distributed in the hope that it will be useful, but
  11. * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
  12. * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
  13. * for more details.
  14. */
  15. #ifndef _KEYWORDS_H_
  16. #define _KEYWORDS_H_
  17. typedef enum kw_token_t kw_token_t;
  18. typedef struct kw_entry_t kw_entry_t;
  19. enum kw_token_t {
  20. /* config setup keywords */
  21. KW_CHARONDEBUG,
  22. KW_UNIQUEIDS,
  23. KW_CACHECRLS,
  24. KW_STRICTCRLPOLICY,
  25. KW_PKCS11_DEPRECATED,
  26. KW_SETUP_DEPRECATED,
  27. #define KW_SETUP_FIRST KW_CHARONDEBUG
  28. #define KW_SETUP_LAST KW_SETUP_DEPRECATED
  29. /* conn section keywords */
  30. KW_CONN_NAME,
  31. KW_CONN_SETUP,
  32. KW_KEYEXCHANGE,
  33. KW_TYPE,
  34. KW_COMPRESS,
  35. KW_INSTALLPOLICY,
  36. KW_AGGRESSIVE,
  37. KW_AUTHBY,
  38. KW_EAP_IDENTITY,
  39. KW_AAA_IDENTITY,
  40. KW_MOBIKE,
  41. KW_FORCEENCAPS,
  42. KW_FRAGMENTATION,
  43. KW_IKEDSCP,
  44. KW_IKELIFETIME,
  45. KW_KEYLIFE,
  46. KW_REKEYMARGIN,
  47. KW_LIFEBYTES,
  48. KW_MARGINBYTES,
  49. KW_LIFEPACKETS,
  50. KW_MARGINPACKETS,
  51. KW_KEYINGTRIES,
  52. KW_REKEYFUZZ,
  53. KW_REKEY,
  54. KW_REAUTH,
  55. KW_IKE,
  56. KW_ESP,
  57. KW_AH,
  58. KW_DPDDELAY,
  59. KW_DPDTIMEOUT,
  60. KW_DPDACTION,
  61. KW_CLOSEACTION,
  62. KW_SHA256_96,
  63. KW_INACTIVITY,
  64. KW_MODECONFIG,
  65. KW_XAUTH,
  66. KW_XAUTH_IDENTITY,
  67. KW_MEDIATION,
  68. KW_MEDIATED_BY,
  69. KW_ME_PEERID,
  70. KW_REQID,
  71. KW_REPLAY_WINDOW,
  72. KW_MARK,
  73. KW_MARK_IN,
  74. KW_MARK_OUT,
  75. KW_TFC,
  76. KW_PFS_DEPRECATED,
  77. KW_CONN_DEPRECATED,
  78. #define KW_CONN_FIRST KW_CONN_SETUP
  79. #define KW_CONN_LAST KW_CONN_DEPRECATED
  80. /* ca section keywords */
  81. KW_CA_NAME,
  82. KW_CA_SETUP,
  83. KW_CACERT,
  84. KW_CRLURI,
  85. KW_CRLURI2,
  86. KW_OCSPURI,
  87. KW_OCSPURI2,
  88. KW_CERTURIBASE,
  89. KW_CA_DEPRECATED,
  90. #define KW_CA_FIRST KW_CA_SETUP
  91. #define KW_CA_LAST KW_CA_DEPRECATED
  92. /* end keywords */
  93. KW_HOST,
  94. KW_IKEPORT,
  95. KW_SUBNET,
  96. KW_PROTOPORT,
  97. KW_SOURCEIP,
  98. KW_DNS,
  99. KW_FIREWALL,
  100. KW_HOSTACCESS,
  101. KW_ALLOWANY,
  102. KW_UPDOWN,
  103. KW_AUTH1,
  104. KW_AUTH2,
  105. KW_ID,
  106. KW_ID2,
  107. KW_SIGKEY,
  108. KW_CERT,
  109. KW_CERT2,
  110. KW_CERTPOLICY,
  111. KW_SENDCERT,
  112. KW_CA,
  113. KW_CA2,
  114. KW_GROUPS,
  115. KW_GROUPS2,
  116. KW_END_DEPRECATED,
  117. #define KW_END_FIRST KW_HOST
  118. #define KW_END_LAST KW_END_DEPRECATED
  119. /* left end keywords */
  120. KW_LEFT,
  121. KW_LEFTIKEPORT,
  122. KW_LEFTSUBNET,
  123. KW_LEFTPROTOPORT,
  124. KW_LEFTSOURCEIP,
  125. KW_LEFTDNS,
  126. KW_LEFTFIREWALL,
  127. KW_LEFTHOSTACCESS,
  128. KW_LEFTALLOWANY,
  129. KW_LEFTUPDOWN,
  130. KW_LEFTAUTH,
  131. KW_LEFTAUTH2,
  132. KW_LEFTID,
  133. KW_LEFTID2,
  134. KW_LEFTSIGKEY,
  135. KW_LEFTCERT,
  136. KW_LEFTCERT2,
  137. KW_LEFTCERTPOLICY,
  138. KW_LEFTSENDCERT,
  139. KW_LEFTCA,
  140. KW_LEFTCA2,
  141. KW_LEFTGROUPS,
  142. KW_LEFTGROUPS2,
  143. KW_LEFT_DEPRECATED,
  144. #define KW_LEFT_FIRST KW_LEFT
  145. #define KW_LEFT_LAST KW_LEFT_DEPRECATED
  146. /* right end keywords */
  147. KW_RIGHT,
  148. KW_RIGHTIKEPORT,
  149. KW_RIGHTSUBNET,
  150. KW_RIGHTPROTOPORT,
  151. KW_RIGHTSOURCEIP,
  152. KW_RIGHTDNS,
  153. KW_RIGHTFIREWALL,
  154. KW_RIGHTHOSTACCESS,
  155. KW_RIGHTALLOWANY,
  156. KW_RIGHTUPDOWN,
  157. KW_RIGHTAUTH,
  158. KW_RIGHTAUTH2,
  159. KW_RIGHTID,
  160. KW_RIGHTID2,
  161. KW_RIGHTSIGKEY,
  162. KW_RIGHTCERT,
  163. KW_RIGHTCERT2,
  164. KW_RIGHTCERTPOLICY,
  165. KW_RIGHTSENDCERT,
  166. KW_RIGHTCA,
  167. KW_RIGHTCA2,
  168. KW_RIGHTGROUPS,
  169. KW_RIGHTGROUPS2,
  170. KW_RIGHT_DEPRECATED,
  171. #define KW_RIGHT_FIRST KW_RIGHT
  172. #define KW_RIGHT_LAST KW_RIGHT_DEPRECATED
  173. /* general section keywords */
  174. KW_ALSO,
  175. KW_AUTO,
  176. };
  177. struct kw_entry_t {
  178. char *name;
  179. kw_token_t token;
  180. };
  181. #ifndef IN_GPERF_GENERATED_FILE
  182. const kw_entry_t *in_word_set(register const char*, register size_t);
  183. #endif
  184. #endif /* _KEYWORDS_H_ */