%{
/*
 * Copyright (C) 2005 Andreas Steffen
 * Hochschule fuer Technik Rapperswil, Switzerland
 *
 * This program is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License as published by the
 * Free Software Foundation; either version 2 of the License, or (at your
 * option) any later version.  See <http://www.fsf.org/copyleft/gpl.txt>.
 *
 * This program is distributed in the hope that it will be useful, but
 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
 * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
 * for more details.
 */

#include <string.h>

#include "keywords.h"

%}
struct kw_entry {
    char *name;
    kw_token_t token;
};
%%
# regular keywords
charondebug,       KW_CHARONDEBUG
uniqueids,         KW_UNIQUEIDS
cachecrls,         KW_CACHECRLS
strictcrlpolicy,   KW_STRICTCRLPOLICY
keyexchange,       KW_KEYEXCHANGE
type,              KW_TYPE
compress,          KW_COMPRESS
installpolicy,     KW_INSTALLPOLICY
aggressive,        KW_AGGRESSIVE
auth,              KW_AUTH
authby,            KW_AUTHBY
eap_identity,      KW_EAP_IDENTITY
aaa_identity,      KW_AAA_IDENTITY
mobike,	           KW_MOBIKE
forceencaps,       KW_FORCEENCAPS
fragmentation,     KW_FRAGMENTATION
ikedscp,           KW_IKEDSCP,
ikelifetime,       KW_IKELIFETIME
lifetime,          KW_KEYLIFE
keylife,           KW_KEYLIFE
rekeymargin,       KW_REKEYMARGIN
margintime,        KW_REKEYMARGIN
lifebytes,         KW_LIFEBYTES
marginbytes,       KW_MARGINBYTES
lifepackets,       KW_LIFEPACKETS
marginpackets,     KW_MARGINPACKETS
keyingtries,       KW_KEYINGTRIES
rekeyfuzz,         KW_REKEYFUZZ
rekey,             KW_REKEY
reauth,            KW_REAUTH
ike,               KW_IKE
esp,               KW_ESP
dpddelay,          KW_DPDDELAY
dpdtimeout,        KW_DPDTIMEOUT
dpdaction,         KW_DPDACTION
closeaction,       KW_CLOSEACTION
inactivity,        KW_INACTIVITY
modeconfig,        KW_MODECONFIG
xauth,             KW_XAUTH
xauth_identity,    KW_XAUTH_IDENTITY
mediation,         KW_MEDIATION
mediated_by,       KW_MEDIATED_BY
me_peerid,         KW_ME_PEERID
reqid,             KW_REQID
mark,              KW_MARK
mark_in,           KW_MARK_IN
mark_out,          KW_MARK_OUT
tfc,               KW_TFC
cacert,            KW_CACERT
crluri,            KW_CRLURI
crluri1,           KW_CRLURI
crluri2,           KW_CRLURI2
ocspuri,           KW_OCSPURI
ocspuri1,          KW_OCSPURI
ocspuri2,          KW_OCSPURI2
certuribase,       KW_CERTURIBASE
left,              KW_LEFT
leftikeport,       KW_LEFTIKEPORT
leftsubnet,        KW_LEFTSUBNET
leftsubnetwithin,  KW_LEFTSUBNET
leftprotoport,     KW_LEFTPROTOPORT
leftsourceip,      KW_LEFTSOURCEIP
leftdns,           KW_LEFTDNS
leftfirewall,      KW_LEFTFIREWALL
lefthostaccess,    KW_LEFTHOSTACCESS
leftallowany,      KW_LEFTALLOWANY
leftupdown,        KW_LEFTUPDOWN
leftauth,          KW_LEFTAUTH
leftauth2,         KW_LEFTAUTH2
leftid,            KW_LEFTID
leftid2,           KW_LEFTID2
leftrsasigkey,     KW_LEFTRSASIGKEY
leftcert,          KW_LEFTCERT
leftcert2,         KW_LEFTCERT2
leftcertpolicy,    KW_LEFTCERTPOLICY
leftsendcert,      KW_LEFTSENDCERT
leftca,            KW_LEFTCA
leftca2,           KW_LEFTCA2
leftgroups,        KW_LEFTGROUPS
leftgroups2,       KW_LEFTGROUPS2
right,             KW_RIGHT
rightikeport,      KW_RIGHTIKEPORT
rightsubnet,       KW_RIGHTSUBNET
rightsubnetwithin, KW_RIGHTSUBNET
rightprotoport,    KW_RIGHTPROTOPORT
rightsourceip,     KW_RIGHTSOURCEIP
rightdns,          KW_RIGHTDNS
rightfirewall,     KW_RIGHTFIREWALL
righthostaccess,   KW_RIGHTHOSTACCESS
rightallowany,     KW_RIGHTALLOWANY
rightupdown,       KW_RIGHTUPDOWN
rightauth,         KW_RIGHTAUTH
rightauth2,        KW_RIGHTAUTH2
rightid,           KW_RIGHTID
rightid2,          KW_RIGHTID2
rightrsasigkey,    KW_RIGHTRSASIGKEY
rightcert,         KW_RIGHTCERT
rightcert2,        KW_RIGHTCERT2
rightcertpolicy,   KW_RIGHTCERTPOLICY
rightsendcert,     KW_RIGHTSENDCERT
rightca,           KW_RIGHTCA
rightca2,          KW_RIGHTCA2
rightgroups,       KW_RIGHTGROUPS
rightgroups2,      KW_RIGHTGROUPS2
also,              KW_ALSO
auto,              KW_AUTO
# deprecated/removed keywords
interfaces,        KW_SETUP_DEPRECATED
dumpdir,           KW_SETUP_DEPRECATED
charonstart,       KW_SETUP_DEPRECATED
plutostart,        KW_SETUP_DEPRECATED
klipsdebug,        KW_SETUP_DEPRECATED
plutodebug,        KW_SETUP_DEPRECATED
prepluto,          KW_SETUP_DEPRECATED
postpluto,         KW_SETUP_DEPRECATED
plutostderrlog,    KW_SETUP_DEPRECATED
fragicmp,          KW_SETUP_DEPRECATED
packetdefault,     KW_SETUP_DEPRECATED
hidetos,           KW_SETUP_DEPRECATED
overridemtu,       KW_SETUP_DEPRECATED
crlcheckinterval,  KW_SETUP_DEPRECATED
nocrsend,          KW_SETUP_DEPRECATED
nat_traversal,     KW_SETUP_DEPRECATED
keep_alive,        KW_SETUP_DEPRECATED
force_keepalive,   KW_SETUP_DEPRECATED
virtual_private,   KW_SETUP_DEPRECATED
pkcs11module,      KW_PKCS11_DEPRECATED
pkcs11initargs,    KW_PKCS11_DEPRECATED
pkcs11keepstate,   KW_PKCS11_DEPRECATED
pkcs11proxy,       KW_PKCS11_DEPRECATED
ldaphost,          KW_CA_DEPRECATED
ldapbase,          KW_CA_DEPRECATED
pfs,               KW_PFS_DEPRECATED
pfsgroup,          KW_PFS_DEPRECATED
eap,               KW_CONN_DEPRECATED
leftnexthop,       KW_LEFT_DEPRECATED
rightnexthop,      KW_RIGHT_DEPRECATED
