/* A Bison parser, made by GNU Bison 3.8.2.  */

/* Bison interface for Yacc-like parsers in C

   Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2021 Free Software Foundation,
   Inc.

   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 3 of the License, or
   (at your option) any later version.

   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.

   You should have received a copy of the GNU General Public License
   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */

/* As a special exception, you may create a larger work that contains
   part or all of the Bison parser skeleton and distribute that work
   under terms of your choice, so long as that work isn't itself a
   parser generator using the skeleton or a modified version thereof
   as a parser skeleton.  Alternatively, if you modify or redistribute
   the parser skeleton itself, you may (at your option) remove this
   special exception, which will cause the skeleton and the resulting
   Bison output files to be licensed under the GNU General Public
   License without this special exception.

   This special exception was added by the Free Software Foundation in
   version 2.2 of Bison.  */

/* DO NOT RELY ON FEATURES THAT ARE NOT DOCUMENTED in the manual,
   especially those whose name start with YY_ or yy_.  They are
   private implementation details that can be changed or removed.  */

#ifndef YY_YY_ATTACK_PARSER_H_INCLUDED
# define YY_YY_ATTACK_PARSER_H_INCLUDED
/* Debug traces.  */
#ifndef YYDEBUG
# define YYDEBUG 0
#endif
#if YYDEBUG
extern int yydebug;
#endif

/* Token kinds.  */
#ifndef YYTOKENTYPE
# define YYTOKENTYPE
  enum yytokentype
  {
    YYEMPTY = -2,
    YYEOF = 0,                     /* "end of file"  */
    YYerror = 256,                 /* error  */
    YYUNDEF = 257,                 /* "invalid token"  */
    IPv4 = 258,                    /* IPv4  */
    IPv6 = 259,                    /* IPv6  */
    HOSTADDR = 260,                /* HOSTADDR  */
    WORD = 261,                    /* WORD  */
    INTEGER = 262,                 /* INTEGER  */
    SYSLOG_BANNER_PID = 263,       /* SYSLOG_BANNER_PID  */
    SOCKLOG_BANNER_PID = 264,      /* SOCKLOG_BANNER_PID  */
    BUSYBOX_SYSLOG_BANNER_PID = 265, /* BUSYBOX_SYSLOG_BANNER_PID  */
    SYSLOG_BANNER = 266,           /* SYSLOG_BANNER  */
    TIMESTAMP_SYSLOG = 267,        /* TIMESTAMP_SYSLOG  */
    TIMESTAMP_ISO8601 = 268,       /* TIMESTAMP_ISO8601  */
    TIMESTAMP_TAI64 = 269,         /* TIMESTAMP_TAI64  */
    AT_TIMESTAMP_TAI64 = 270,      /* AT_TIMESTAMP_TAI64  */
    RFC_5234_BANNER = 271,         /* RFC_5234_BANNER  */
    METALOG_BANNER = 272,          /* METALOG_BANNER  */
    SOCKLOG_BANNER = 273,          /* SOCKLOG_BANNER  */
    REPETITIONS = 274,             /* REPETITIONS  */
    HTTP_REQUEST = 275,            /* HTTP_REQUEST  */
    HTTP_VERSION = 276,            /* HTTP_VERSION  */
    HTTP_REDIRECT = 277,           /* HTTP_REDIRECT  */
    HTTP_AUTHFAIL = 278,           /* HTTP_AUTHFAIL  */
    HTTP_CLIERROR = 279,           /* HTTP_CLIERROR  */
    HTTP_BOTSEARCH_WEBMAIL = 280,  /* HTTP_BOTSEARCH_WEBMAIL  */
    HTTP_BOTSEARCH_PHPMYADMIN = 281, /* HTTP_BOTSEARCH_PHPMYADMIN  */
    HTTP_BOTSEARCH_WORDPRESS = 282, /* HTTP_BOTSEARCH_WORDPRESS  */
    HTTP_BOTSEARCH_JOOMLA = 283,   /* HTTP_BOTSEARCH_JOOMLA  */
    HTTP_BOTSEARCH = 284,          /* HTTP_BOTSEARCH  */
    SSH_INVALUSERPREF = 285,       /* SSH_INVALUSERPREF  */
    SSH_NOTALLOWEDPREF = 286,      /* SSH_NOTALLOWEDPREF  */
    SSH_NOTALLOWEDSUFF = 287,      /* SSH_NOTALLOWEDSUFF  */
    SSH_LOGINERR_PREF = 288,       /* SSH_LOGINERR_PREF  */
    SSH_LOGINERR_PAM = 289,        /* SSH_LOGINERR_PAM  */
    SSH_VIA = 290,                 /* SSH_VIA  */
    SSH_MAXAUTH = 291,             /* SSH_MAXAUTH  */
    SSH_ADDR_SUFF = 292,           /* SSH_ADDR_SUFF  */
    SSH_NOIDENTIFSTR = 293,        /* SSH_NOIDENTIFSTR  */
    SSH_BADPROTOCOLIDENTIF = 294,  /* SSH_BADPROTOCOLIDENTIF  */
    SSH_BADPROTOCOLIDENTIF_SUFF = 295, /* SSH_BADPROTOCOLIDENTIF_SUFF  */
    SSH_BADKEX_PREF = 296,         /* SSH_BADKEX_PREF  */
    SSH_BADKEX_SUFF = 297,         /* SSH_BADKEX_SUFF  */
    SSH_DISCONNECT_PREF = 298,     /* SSH_DISCONNECT_PREF  */
    SSH_CONNECTION_CLOSED = 299,   /* SSH_CONNECTION_CLOSED  */
    SSH_PREAUTH_SUFF = 300,        /* SSH_PREAUTH_SUFF  */
    SSHGUARD_ATTACK_PREF = 301,    /* SSHGUARD_ATTACK_PREF  */
    SSHGUARD_ATTACK_SUFF = 302,    /* SSHGUARD_ATTACK_SUFF  */
    SSHGUARD_BLOCK_PREF = 303,     /* SSHGUARD_BLOCK_PREF  */
    SSHGUARD_BLOCK_SUFF = 304,     /* SSHGUARD_BLOCK_SUFF  */
    BIND_PREF = 305,               /* BIND_PREF  */
    BIND_QUERY_DENIED = 306,       /* BIND_QUERY_DENIED  */
    DOVECOT_IMAP_LOGINERR_PREF = 307, /* DOVECOT_IMAP_LOGINERR_PREF  */
    DOVECOT_IMAP_LOGINERR_SUFF = 308, /* DOVECOT_IMAP_LOGINERR_SUFF  */
    UWIMAP_LOGINERR = 309,         /* UWIMAP_LOGINERR  */
    CYRUSIMAP_SASL_LOGINERR_PREF = 310, /* CYRUSIMAP_SASL_LOGINERR_PREF  */
    CYRUSIMAP_SASL_LOGINERR_SUFF = 311, /* CYRUSIMAP_SASL_LOGINERR_SUFF  */
    CUCIPOP_AUTHFAIL = 312,        /* CUCIPOP_AUTHFAIL  */
    EXIM_ESMTP_AUTHFAIL_PREF = 313, /* EXIM_ESMTP_AUTHFAIL_PREF  */
    EXIM_ESMTP_AUTHFAIL_SUFF = 314, /* EXIM_ESMTP_AUTHFAIL_SUFF  */
    EXIM_ESMTP_LOGINFAIL_PREF = 315, /* EXIM_ESMTP_LOGINFAIL_PREF  */
    EXIM_ESMTP_LOGINFAIL_SUFF = 316, /* EXIM_ESMTP_LOGINFAIL_SUFF  */
    SENDMAIL_RELAYDENIED_PREF = 317, /* SENDMAIL_RELAYDENIED_PREF  */
    SENDMAIL_RELAYDENIED_SUFF = 318, /* SENDMAIL_RELAYDENIED_SUFF  */
    SENDMAIL_AUTHFAILURE_PREF = 319, /* SENDMAIL_AUTHFAILURE_PREF  */
    SENDMAIL_AUTHFAILURE_SUFF = 320, /* SENDMAIL_AUTHFAILURE_SUFF  */
    POSTFIX_NO_AUTH_PREF = 321,    /* POSTFIX_NO_AUTH_PREF  */
    POSTFIX_SASL_LOGINERR_PREF = 322, /* POSTFIX_SASL_LOGINERR_PREF  */
    POSTFIX_SASL_LOGINERR_SUFF = 323, /* POSTFIX_SASL_LOGINERR_SUFF  */
    POSTFIX_NONSMTP = 324,         /* POSTFIX_NONSMTP  */
    POSTFIX_NONSMTP_SUFF = 325,    /* POSTFIX_NONSMTP_SUFF  */
    POSTFIX_GREYLIST = 326,        /* POSTFIX_GREYLIST  */
    POSTFIX_GREYLIST_SUFF = 327,   /* POSTFIX_GREYLIST_SUFF  */
    POSTSCREEN_PREF = 328,         /* POSTSCREEN_PREF  */
    POSTSCREEN_SUFF = 329,         /* POSTSCREEN_SUFF  */
    FREEBSDFTPD_LOGINERR_PREF = 330, /* FREEBSDFTPD_LOGINERR_PREF  */
    FREEBSDFTPD_LOGINERR_SUFF = 331, /* FREEBSDFTPD_LOGINERR_SUFF  */
    PROFTPD_LOGINERR_PREF = 332,   /* PROFTPD_LOGINERR_PREF  */
    PROFTPD_LOGINERR_SUFF = 333,   /* PROFTPD_LOGINERR_SUFF  */
    PUREFTPD_LOGINERR_PREF = 334,  /* PUREFTPD_LOGINERR_PREF  */
    PUREFTPD_LOGINERR_SUFF = 335,  /* PUREFTPD_LOGINERR_SUFF  */
    VSFTPD_LOGINERR_PREF = 336,    /* VSFTPD_LOGINERR_PREF  */
    VSFTPD_LOGINERR_SUFF = 337,    /* VSFTPD_LOGINERR_SUFF  */
    COCKPIT_AUTHFAIL_PREF = 338,   /* COCKPIT_AUTHFAIL_PREF  */
    COCKPIT_AUTHFAIL_SUFF = 339,   /* COCKPIT_AUTHFAIL_SUFF  */
    CLF_REQUEST_PREF = 340,        /* CLF_REQUEST_PREF  */
    CLF_UNAUTHOIRIZED_PREF = 341,  /* CLF_UNAUTHOIRIZED_PREF  */
    CLF_UNAUTHOIRIZED_SUFF = 342,  /* CLF_UNAUTHOIRIZED_SUFF  */
    CLFWEBPROBES_BOTSEARCH_SUFF = 343, /* CLFWEBPROBES_BOTSEARCH_SUFF  */
    CLF_LOGIN_URL_SUFF = 344,      /* CLF_LOGIN_URL_SUFF  */
    OPENSMTPD_FAILED_CMD_PREF = 345, /* OPENSMTPD_FAILED_CMD_PREF  */
    OPENSMTPD_AUTHFAIL_SUFF = 346, /* OPENSMTPD_AUTHFAIL_SUFF  */
    OPENSMTPD_UNSUPPORTED_CMD_SUFF = 347, /* OPENSMTPD_UNSUPPORTED_CMD_SUFF  */
    COURIER_AUTHFAIL_PREF = 348,   /* COURIER_AUTHFAIL_PREF  */
    OPENVPN_TLS_ERR_SUFF = 349,    /* OPENVPN_TLS_ERR_SUFF  */
    GITEA_ERR_PREF = 350,          /* GITEA_ERR_PREF  */
    GITEA_ERR_SUFF = 351,          /* GITEA_ERR_SUFF  */
    OPENVPN_PS_TERM_PREF = 352,    /* OPENVPN_PS_TERM_PREF  */
    OPENVPN_PS_TERM_SUFF = 353,    /* OPENVPN_PS_TERM_SUFF  */
    MSSQL_AUTHFAIL_PREF = 354      /* MSSQL_AUTHFAIL_PREF  */
  };
  typedef enum yytokentype yytoken_kind_t;
#endif
/* Token kinds.  */
#define YYEMPTY -2
#define YYEOF 0
#define YYerror 256
#define YYUNDEF 257
#define IPv4 258
#define IPv6 259
#define HOSTADDR 260
#define WORD 261
#define INTEGER 262
#define SYSLOG_BANNER_PID 263
#define SOCKLOG_BANNER_PID 264
#define BUSYBOX_SYSLOG_BANNER_PID 265
#define SYSLOG_BANNER 266
#define TIMESTAMP_SYSLOG 267
#define TIMESTAMP_ISO8601 268
#define TIMESTAMP_TAI64 269
#define AT_TIMESTAMP_TAI64 270
#define RFC_5234_BANNER 271
#define METALOG_BANNER 272
#define SOCKLOG_BANNER 273
#define REPETITIONS 274
#define HTTP_REQUEST 275
#define HTTP_VERSION 276
#define HTTP_REDIRECT 277
#define HTTP_AUTHFAIL 278
#define HTTP_CLIERROR 279
#define HTTP_BOTSEARCH_WEBMAIL 280
#define HTTP_BOTSEARCH_PHPMYADMIN 281
#define HTTP_BOTSEARCH_WORDPRESS 282
#define HTTP_BOTSEARCH_JOOMLA 283
#define HTTP_BOTSEARCH 284
#define SSH_INVALUSERPREF 285
#define SSH_NOTALLOWEDPREF 286
#define SSH_NOTALLOWEDSUFF 287
#define SSH_LOGINERR_PREF 288
#define SSH_LOGINERR_PAM 289
#define SSH_VIA 290
#define SSH_MAXAUTH 291
#define SSH_ADDR_SUFF 292
#define SSH_NOIDENTIFSTR 293
#define SSH_BADPROTOCOLIDENTIF 294
#define SSH_BADPROTOCOLIDENTIF_SUFF 295
#define SSH_BADKEX_PREF 296
#define SSH_BADKEX_SUFF 297
#define SSH_DISCONNECT_PREF 298
#define SSH_CONNECTION_CLOSED 299
#define SSH_PREAUTH_SUFF 300
#define SSHGUARD_ATTACK_PREF 301
#define SSHGUARD_ATTACK_SUFF 302
#define SSHGUARD_BLOCK_PREF 303
#define SSHGUARD_BLOCK_SUFF 304
#define BIND_PREF 305
#define BIND_QUERY_DENIED 306
#define DOVECOT_IMAP_LOGINERR_PREF 307
#define DOVECOT_IMAP_LOGINERR_SUFF 308
#define UWIMAP_LOGINERR 309
#define CYRUSIMAP_SASL_LOGINERR_PREF 310
#define CYRUSIMAP_SASL_LOGINERR_SUFF 311
#define CUCIPOP_AUTHFAIL 312
#define EXIM_ESMTP_AUTHFAIL_PREF 313
#define EXIM_ESMTP_AUTHFAIL_SUFF 314
#define EXIM_ESMTP_LOGINFAIL_PREF 315
#define EXIM_ESMTP_LOGINFAIL_SUFF 316
#define SENDMAIL_RELAYDENIED_PREF 317
#define SENDMAIL_RELAYDENIED_SUFF 318
#define SENDMAIL_AUTHFAILURE_PREF 319
#define SENDMAIL_AUTHFAILURE_SUFF 320
#define POSTFIX_NO_AUTH_PREF 321
#define POSTFIX_SASL_LOGINERR_PREF 322
#define POSTFIX_SASL_LOGINERR_SUFF 323
#define POSTFIX_NONSMTP 324
#define POSTFIX_NONSMTP_SUFF 325
#define POSTFIX_GREYLIST 326
#define POSTFIX_GREYLIST_SUFF 327
#define POSTSCREEN_PREF 328
#define POSTSCREEN_SUFF 329
#define FREEBSDFTPD_LOGINERR_PREF 330
#define FREEBSDFTPD_LOGINERR_SUFF 331
#define PROFTPD_LOGINERR_PREF 332
#define PROFTPD_LOGINERR_SUFF 333
#define PUREFTPD_LOGINERR_PREF 334
#define PUREFTPD_LOGINERR_SUFF 335
#define VSFTPD_LOGINERR_PREF 336
#define VSFTPD_LOGINERR_SUFF 337
#define COCKPIT_AUTHFAIL_PREF 338
#define COCKPIT_AUTHFAIL_SUFF 339
#define CLF_REQUEST_PREF 340
#define CLF_UNAUTHOIRIZED_PREF 341
#define CLF_UNAUTHOIRIZED_SUFF 342
#define CLFWEBPROBES_BOTSEARCH_SUFF 343
#define CLF_LOGIN_URL_SUFF 344
#define OPENSMTPD_FAILED_CMD_PREF 345
#define OPENSMTPD_AUTHFAIL_SUFF 346
#define OPENSMTPD_UNSUPPORTED_CMD_SUFF 347
#define COURIER_AUTHFAIL_PREF 348
#define OPENVPN_TLS_ERR_SUFF 349
#define GITEA_ERR_PREF 350
#define GITEA_ERR_SUFF 351
#define OPENVPN_PS_TERM_PREF 352
#define OPENVPN_PS_TERM_SUFF 353
#define MSSQL_AUTHFAIL_PREF 354

/* Value type.  */
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
union YYSTYPE
{
#line 43 "attack_parser.y"

    char *str;
    int num;

#line 270 "attack_parser.h"

};
typedef union YYSTYPE YYSTYPE;
# define YYSTYPE_IS_TRIVIAL 1
# define YYSTYPE_IS_DECLARED 1
#endif


extern YYSTYPE yylval;


int yyparse (attack_t *attack);


#endif /* !YY_YY_ATTACK_PARSER_H_INCLUDED  */
