74
74
SYSLOG_BANNER_PID = 263,
76
TIMESTAMP_SYSLOG = 265,
77
TIMESTAMP_TAI64 = 266,
79
SSH_INVALUSERPREF = 268,
80
SSH_NOTALLOWEDPREF = 269,
81
SSH_NOTALLOWEDSUFF = 270,
82
SSH_LOGINERR_PREF = 271,
83
SSH_LOGINERR_SUFF = 272,
84
SSH_LOGINERR_PAM = 273,
85
SSH_REVERSEMAP_PREF = 274,
86
SSH_REVERSEMAP_SUFF = 275,
87
SSH_NOIDENTIFSTR = 276,
88
SSH_BADPROTOCOLIDENTIF = 277,
89
DOVECOT_IMAP_LOGINERR_PREF = 278,
90
DOVECOT_IMAP_LOGINERR_SUFF = 279,
91
UWIMAP_LOGINERR = 280,
92
CYRUSIMAP_SASL_LOGINERR_PREF = 281,
93
CYRUSIMAP_SASL_LOGINERR_SUFF = 282,
94
FREEBSDFTPD_LOGINERR_PREF = 283,
95
FREEBSDFTPD_LOGINERR_SUFF = 284,
96
PROFTPD_LOGINERR_PREF = 285,
97
PROFTPD_LOGINERR_SUFF = 286,
98
PUREFTPD_LOGINERR_PREF = 287,
99
PUREFTPD_LOGINERR_SUFF = 288
75
LAST_LINE_REPEATED_N_TIMES = 264,
77
TIMESTAMP_SYSLOG = 266,
78
TIMESTAMP_TAI64 = 267,
79
AT_TIMESTAMP_TAI64 = 268,
81
SSH_INVALUSERPREF = 270,
82
SSH_NOTALLOWEDPREF = 271,
83
SSH_NOTALLOWEDSUFF = 272,
84
SSH_LOGINERR_PREF = 273,
85
SSH_LOGINERR_SUFF = 274,
86
SSH_LOGINERR_PAM = 275,
87
SSH_REVERSEMAP_PREF = 276,
88
SSH_REVERSEMAP_SUFF = 277,
89
SSH_NOIDENTIFSTR = 278,
90
SSH_BADPROTOCOLIDENTIF = 279,
91
DOVECOT_IMAP_LOGINERR_PREF = 280,
92
DOVECOT_IMAP_LOGINERR_SUFF = 281,
93
UWIMAP_LOGINERR = 282,
94
CYRUSIMAP_SASL_LOGINERR_PREF = 283,
95
CYRUSIMAP_SASL_LOGINERR_SUFF = 284,
96
CUCIPOP_AUTHFAIL = 285,
97
EXIM_ESMTP_AUTHFAIL_PREF = 286,
98
EXIM_ESMTP_AUTHFAIL_SUFF = 287,
99
SENDMAIL_RELAYDENIED_PREF = 288,
100
SENDMAIL_RELAYDENIED_SUFF = 289,
101
FREEBSDFTPD_LOGINERR_PREF = 290,
102
FREEBSDFTPD_LOGINERR_SUFF = 291,
103
PROFTPD_LOGINERR_PREF = 292,
104
PROFTPD_LOGINERR_SUFF = 293,
105
PUREFTPD_LOGINERR_PREF = 294,
106
PUREFTPD_LOGINERR_SUFF = 295,
107
VSFTPD_LOGINERR_PREF = 296,
108
VSFTPD_LOGINERR_SUFF = 297
107
116
#define INTEGER 262
108
117
#define SYSLOG_BANNER_PID 263
109
#define SYSLOG_BANNER 264
110
#define TIMESTAMP_SYSLOG 265
111
#define TIMESTAMP_TAI64 266
112
#define METALOG_BANNER 267
113
#define SSH_INVALUSERPREF 268
114
#define SSH_NOTALLOWEDPREF 269
115
#define SSH_NOTALLOWEDSUFF 270
116
#define SSH_LOGINERR_PREF 271
117
#define SSH_LOGINERR_SUFF 272
118
#define SSH_LOGINERR_PAM 273
119
#define SSH_REVERSEMAP_PREF 274
120
#define SSH_REVERSEMAP_SUFF 275
121
#define SSH_NOIDENTIFSTR 276
122
#define SSH_BADPROTOCOLIDENTIF 277
123
#define DOVECOT_IMAP_LOGINERR_PREF 278
124
#define DOVECOT_IMAP_LOGINERR_SUFF 279
125
#define UWIMAP_LOGINERR 280
126
#define CYRUSIMAP_SASL_LOGINERR_PREF 281
127
#define CYRUSIMAP_SASL_LOGINERR_SUFF 282
128
#define FREEBSDFTPD_LOGINERR_PREF 283
129
#define FREEBSDFTPD_LOGINERR_SUFF 284
130
#define PROFTPD_LOGINERR_PREF 285
131
#define PROFTPD_LOGINERR_SUFF 286
132
#define PUREFTPD_LOGINERR_PREF 287
133
#define PUREFTPD_LOGINERR_SUFF 288
118
#define LAST_LINE_REPEATED_N_TIMES 264
119
#define SYSLOG_BANNER 265
120
#define TIMESTAMP_SYSLOG 266
121
#define TIMESTAMP_TAI64 267
122
#define AT_TIMESTAMP_TAI64 268
123
#define METALOG_BANNER 269
124
#define SSH_INVALUSERPREF 270
125
#define SSH_NOTALLOWEDPREF 271
126
#define SSH_NOTALLOWEDSUFF 272
127
#define SSH_LOGINERR_PREF 273
128
#define SSH_LOGINERR_SUFF 274
129
#define SSH_LOGINERR_PAM 275
130
#define SSH_REVERSEMAP_PREF 276
131
#define SSH_REVERSEMAP_SUFF 277
132
#define SSH_NOIDENTIFSTR 278
133
#define SSH_BADPROTOCOLIDENTIF 279
134
#define DOVECOT_IMAP_LOGINERR_PREF 280
135
#define DOVECOT_IMAP_LOGINERR_SUFF 281
136
#define UWIMAP_LOGINERR 282
137
#define CYRUSIMAP_SASL_LOGINERR_PREF 283
138
#define CYRUSIMAP_SASL_LOGINERR_SUFF 284
139
#define CUCIPOP_AUTHFAIL 285
140
#define EXIM_ESMTP_AUTHFAIL_PREF 286
141
#define EXIM_ESMTP_AUTHFAIL_SUFF 287
142
#define SENDMAIL_RELAYDENIED_PREF 288
143
#define SENDMAIL_RELAYDENIED_SUFF 289
144
#define FREEBSDFTPD_LOGINERR_PREF 290
145
#define FREEBSDFTPD_LOGINERR_SUFF 291
146
#define PROFTPD_LOGINERR_PREF 292
147
#define PROFTPD_LOGINERR_SUFF 293
148
#define PUREFTPD_LOGINERR_PREF 294
149
#define PUREFTPD_LOGINERR_SUFF 295
150
#define VSFTPD_LOGINERR_PREF 296
151
#define VSFTPD_LOGINERR_SUFF 297
441
507
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
442
508
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
443
509
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
444
2, 2, 2, 2, 34, 2, 2, 2, 2, 2,
445
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
446
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
447
2, 35, 2, 36, 2, 2, 2, 2, 2, 2,
510
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
511
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
512
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
513
2, 43, 2, 44, 2, 2, 2, 2, 2, 2,
448
514
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
449
515
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
450
516
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
472
539
static const yytype_uint8 yyprhs[] =
474
0, 0, 3, 5, 7, 9, 11, 14, 17, 21,
475
24, 26, 28, 30, 32, 34, 36, 38, 40, 42,
476
44, 46, 48, 50, 52, 54, 57, 61, 65, 68,
477
72, 75, 78, 82, 87, 91, 95, 99
541
0, 0, 3, 5, 7, 9, 11, 14, 17, 20,
542
23, 25, 27, 29, 31, 33, 35, 37, 39, 41,
543
43, 45, 47, 49, 51, 53, 55, 57, 59, 61,
544
63, 65, 67, 70, 74, 78, 81, 85, 88, 91,
545
95, 100, 104, 107, 111, 115, 119, 123, 127
480
548
/* YYRHS -- A `-1'-separated list of the rules' RHS. */
481
549
static const yytype_int8 yyrhs[] =
483
38, 0, -1, 39, -1, 40, -1, 41, -1, 42,
484
-1, 8, 42, -1, 9, 42, -1, 34, 11, 42,
485
-1, 12, 42, -1, 44, -1, 50, -1, 51, -1,
486
52, -1, 53, -1, 54, -1, 55, -1, 3, -1,
487
4, -1, 5, -1, 45, -1, 46, -1, 47, -1,
488
48, -1, 49, -1, 13, 43, -1, 14, 43, 15,
489
-1, 16, 43, 17, -1, 18, 43, -1, 19, 43,
490
20, -1, 21, 43, -1, 22, 43, -1, 23, 43,
491
24, -1, 25, 35, 43, 36, -1, 26, 43, 27,
492
-1, 28, 43, 29, -1, 30, 43, 31, -1, 32,
551
46, 0, -1, 47, -1, 48, -1, 49, -1, 50,
552
-1, 8, 50, -1, 10, 50, -1, 13, 50, -1,
553
14, 50, -1, 51, -1, 52, -1, 54, -1, 60,
554
-1, 61, -1, 62, -1, 63, -1, 64, -1, 65,
555
-1, 66, -1, 67, -1, 68, -1, 69, -1, 9,
556
-1, 3, -1, 4, -1, 5, -1, 55, -1, 56,
557
-1, 57, -1, 58, -1, 59, -1, 15, 53, -1,
558
16, 53, 17, -1, 18, 53, 19, -1, 20, 53,
559
-1, 21, 53, 22, -1, 23, 53, -1, 24, 53,
560
-1, 25, 53, 26, -1, 27, 43, 53, 44, -1,
561
28, 53, 29, -1, 30, 53, -1, 31, 53, 32,
562
-1, 33, 53, 34, -1, 35, 53, 36, -1, 37,
563
53, 38, -1, 39, 53, 40, -1, 41, 53, 42,
496
567
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
497
static const yytype_uint8 yyrline[] =
568
static const yytype_uint16 yyrline[] =
499
0, 60, 60, 61, 62, 63, 76, 85, 90, 94,
500
99, 100, 101, 102, 103, 104, 105, 110, 114, 118,
501
170, 172, 173, 174, 175, 180, 182, 186, 187, 191,
502
195, 199, 204, 209, 213, 218, 223, 228
570
0, 122, 122, 123, 124, 125, 138, 148, 153, 157,
571
163, 165, 169, 170, 171, 172, 173, 174, 175, 176,
572
177, 178, 179, 184, 203, 207, 211, 262, 264, 265,
573
266, 267, 272, 274, 278, 279, 283, 287, 291, 296,
574
301, 305, 310, 315, 319, 324, 329, 334, 339
509
581
static const char *const yytname[] =
511
583
"$end", "error", "$undefined", "IPv4", "IPv6", "HOSTADDR", "WORD",
512
"INTEGER", "SYSLOG_BANNER_PID", "SYSLOG_BANNER", "TIMESTAMP_SYSLOG",
513
"TIMESTAMP_TAI64", "METALOG_BANNER", "SSH_INVALUSERPREF",
584
"INTEGER", "SYSLOG_BANNER_PID", "LAST_LINE_REPEATED_N_TIMES",
585
"SYSLOG_BANNER", "TIMESTAMP_SYSLOG", "TIMESTAMP_TAI64",
586
"AT_TIMESTAMP_TAI64", "METALOG_BANNER", "SSH_INVALUSERPREF",
514
587
"SSH_NOTALLOWEDPREF", "SSH_NOTALLOWEDSUFF", "SSH_LOGINERR_PREF",
515
588
"SSH_LOGINERR_SUFF", "SSH_LOGINERR_PAM", "SSH_REVERSEMAP_PREF",
516
589
"SSH_REVERSEMAP_SUFF", "SSH_NOIDENTIFSTR", "SSH_BADPROTOCOLIDENTIF",
517
590
"DOVECOT_IMAP_LOGINERR_PREF", "DOVECOT_IMAP_LOGINERR_SUFF",
518
591
"UWIMAP_LOGINERR", "CYRUSIMAP_SASL_LOGINERR_PREF",
519
"CYRUSIMAP_SASL_LOGINERR_SUFF", "FREEBSDFTPD_LOGINERR_PREF",
520
"FREEBSDFTPD_LOGINERR_SUFF", "PROFTPD_LOGINERR_PREF",
521
"PROFTPD_LOGINERR_SUFF", "PUREFTPD_LOGINERR_PREF",
522
"PUREFTPD_LOGINERR_SUFF", "'@'", "'['", "']'", "$accept", "text",
523
"syslogent", "multilogent", "metalogent", "logmsg", "addr", "sshmsg",
524
"ssh_illegaluser", "ssh_authfail", "ssh_reversemapping",
525
"ssh_noidentifstring", "ssh_badprotocol", "dovecotmsg", "uwimapmsg",
526
"cyrusimapmsg", "freebsdftpdmsg", "proftpdmsg", "pureftpdmsg", 0
592
"CYRUSIMAP_SASL_LOGINERR_SUFF", "CUCIPOP_AUTHFAIL",
593
"EXIM_ESMTP_AUTHFAIL_PREF", "EXIM_ESMTP_AUTHFAIL_SUFF",
594
"SENDMAIL_RELAYDENIED_PREF", "SENDMAIL_RELAYDENIED_SUFF",
595
"FREEBSDFTPD_LOGINERR_PREF", "FREEBSDFTPD_LOGINERR_SUFF",
596
"PROFTPD_LOGINERR_PREF", "PROFTPD_LOGINERR_SUFF",
597
"PUREFTPD_LOGINERR_PREF", "PUREFTPD_LOGINERR_SUFF",
598
"VSFTPD_LOGINERR_PREF", "VSFTPD_LOGINERR_SUFF", "'['", "']'", "$accept",
599
"text", "syslogent", "multilogent", "metalogent", "logmsg", "msg_single",
600
"msg_multiple", "addr", "sshmsg", "ssh_illegaluser", "ssh_authfail",
601
"ssh_reversemapping", "ssh_noidentifstring", "ssh_badprotocol",
602
"dovecotmsg", "uwimapmsg", "cyrusimapmsg", "cucipopmsg", "eximmsg",
603
"sendmailmsg", "freebsdftpdmsg", "proftpdmsg", "pureftpdmsg",
535
613
0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
536
614
265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
537
615
275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
538
285, 286, 287, 288, 64, 91, 93
616
285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
617
295, 296, 297, 91, 93
542
621
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
543
622
static const yytype_uint8 yyr1[] =
545
0, 37, 38, 38, 38, 38, 39, 39, 40, 41,
546
42, 42, 42, 42, 42, 42, 42, 43, 43, 43,
547
44, 44, 44, 44, 44, 45, 45, 46, 46, 47,
548
48, 49, 50, 51, 52, 53, 54, 55
624
0, 45, 46, 46, 46, 46, 47, 47, 48, 49,
625
50, 50, 51, 51, 51, 51, 51, 51, 51, 51,
626
51, 51, 51, 52, 53, 53, 53, 54, 54, 54,
627
54, 54, 55, 55, 56, 56, 57, 58, 59, 60,
628
61, 62, 63, 64, 65, 66, 67, 68, 69
551
631
/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
552
632
static const yytype_uint8 yyr2[] =
554
0, 2, 1, 1, 1, 1, 2, 2, 3, 2,
555
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
556
1, 1, 1, 1, 1, 2, 3, 3, 2, 3,
557
2, 2, 3, 4, 3, 3, 3, 3
634
0, 2, 1, 1, 1, 1, 2, 2, 2, 2,
635
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
636
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
637
1, 1, 2, 3, 3, 2, 3, 2, 2, 3,
638
4, 3, 2, 3, 3, 3, 3, 3, 3
560
641
/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
562
643
means the default is an error. */
563
644
static const yytype_uint8 yydefact[] =
646
0, 0, 23, 0, 0, 0, 0, 0, 0, 0,
565
647
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
566
0, 0, 0, 0, 0, 0, 0, 0, 0, 2,
567
3, 4, 5, 10, 20, 21, 22, 23, 24, 11,
568
12, 13, 14, 15, 16, 6, 7, 9, 17, 18,
569
19, 25, 0, 0, 28, 0, 30, 31, 0, 0,
570
0, 0, 0, 0, 0, 1, 26, 27, 29, 32,
571
0, 34, 35, 36, 37, 8, 33
648
0, 0, 0, 0, 2, 3, 4, 5, 10, 11,
649
12, 27, 28, 29, 30, 31, 13, 14, 15, 16,
650
17, 18, 19, 20, 21, 22, 6, 7, 8, 9,
651
24, 25, 26, 32, 0, 0, 35, 0, 37, 38,
652
0, 0, 0, 42, 0, 0, 0, 0, 0, 0,
653
1, 33, 34, 36, 39, 0, 41, 43, 44, 45,
574
657
/* YYDEFGOTO[NTERM-NUM]. */
575
658
static const yytype_int8 yydefgoto[] =
577
-1, 18, 19, 20, 21, 22, 41, 23, 24, 25,
578
26, 27, 28, 29, 30, 31, 32, 33, 34
660
-1, 23, 24, 25, 26, 27, 28, 29, 53, 30,
661
31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
581
665
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
583
#define YYPACT_NINF -26
667
#define YYPACT_NINF -37
584
668
static const yytype_int8 yypact[] =
586
7, 36, 36, 36, 39, 39, 39, 39, 39, 39,
587
39, 39, -25, 39, 39, 39, 39, 6, 18, -26,
588
-26, -26, -26, -26, -26, -26, -26, -26, -26, -26,
589
-26, -26, -26, -26, -26, -26, -26, -26, -26, -26,
590
-26, -26, 9, 5, -26, 11, -26, -26, 3, 39,
591
13, 16, 15, 1, 36, -26, -26, -26, -26, -26,
592
0, -26, -26, -26, -26, -26, -26
670
8, 35, -37, 35, 35, 35, 77, 77, 77, 77,
671
77, 77, 77, 77, -36, 77, 77, 77, 77, 77,
672
77, 77, 77, 19, -37, -37, -37, -37, -37, -37,
673
-37, -37, -37, -37, -37, -37, -37, -37, -37, -37,
674
-37, -37, -37, -37, -37, -37, -37, -37, -37, -37,
675
-37, -37, -37, -37, 3, 6, -37, 5, -37, -37,
676
4, 77, 11, -37, 2, 12, 1, 10, 17, 0,
677
-37, -37, -37, -37, -37, 20, -37, -37, -37, -37,
595
681
/* YYPGOTO[NTERM-NUM]. */
596
682
static const yytype_int8 yypgoto[] =
598
-26, -26, -26, -26, -26, -1, -2, -26, -26, -26,
599
-26, -26, -26, -26, -26, -26, -26, -26, -26
684
-37, -37, -37, -37, -37, 74, -37, -37, -7, -37,
685
-37, -37, -37, -37, -37, -37, -37, -37, -37, -37,
686
-37, -37, -37, -37, -37
602
689
/* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
606
693
#define YYTABLE_NINF -1
607
694
static const yytype_uint8 yytable[] =
609
35, 36, 37, 42, 43, 44, 45, 46, 47, 48,
610
49, 50, 51, 52, 53, 1, 2, 54, 55, 3,
611
4, 5, 57, 6, 56, 7, 8, 59, 9, 10,
612
11, 58, 12, 13, 64, 14, 66, 15, 0, 16,
613
61, 17, 38, 39, 40, 62, 63, 60, 0, 4,
614
5, 0, 6, 65, 7, 8, 0, 9, 10, 11,
615
0, 12, 13, 0, 14, 0, 15, 0, 16
696
54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
697
64, 65, 66, 67, 68, 69, 1, 2, 3, 70,
698
71, 4, 5, 6, 7, 72, 8, 73, 9, 10,
699
74, 11, 12, 13, 77, 14, 15, 79, 16, 17,
700
76, 18, 82, 19, 2, 20, 78, 21, 80, 22,
701
6, 7, 0, 8, 75, 9, 10, 81, 11, 12,
702
13, 0, 14, 15, 83, 16, 17, 0, 18, 0,
703
19, 0, 20, 0, 21, 46, 22, 47, 48, 49,
618
707
static const yytype_int8 yycheck[] =
620
1, 2, 3, 5, 6, 7, 8, 9, 10, 11,
621
35, 13, 14, 15, 16, 8, 9, 11, 0, 12,
622
13, 14, 17, 16, 15, 18, 19, 24, 21, 22,
623
23, 20, 25, 26, 33, 28, 36, 30, -1, 32,
624
27, 34, 3, 4, 5, 29, 31, 49, -1, 13,
625
14, -1, 16, 54, 18, 19, -1, 21, 22, 23,
626
-1, 25, 26, -1, 28, -1, 30, -1, 32
709
7, 8, 9, 10, 11, 12, 13, 43, 15, 16,
710
17, 18, 19, 20, 21, 22, 8, 9, 10, 0,
711
17, 13, 14, 15, 16, 19, 18, 22, 20, 21,
712
26, 23, 24, 25, 32, 27, 28, 36, 30, 31,
713
29, 33, 42, 35, 9, 37, 34, 39, 38, 41,
714
15, 16, -1, 18, 61, 20, 21, 40, 23, 24,
715
25, -1, 27, 28, 44, 30, 31, -1, 33, -1,
716
35, -1, 37, -1, 39, 1, 41, 3, 4, 5,
629
720
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
630
721
symbol of state STATE-NUM. */
631
722
static const yytype_uint8 yystos[] =
633
0, 8, 9, 12, 13, 14, 16, 18, 19, 21,
634
22, 23, 25, 26, 28, 30, 32, 34, 38, 39,
635
40, 41, 42, 44, 45, 46, 47, 48, 49, 50,
636
51, 52, 53, 54, 55, 42, 42, 42, 3, 4,
637
5, 43, 43, 43, 43, 43, 43, 43, 43, 35,
638
43, 43, 43, 43, 11, 0, 15, 17, 20, 24,
639
43, 27, 29, 31, 33, 42, 36
724
0, 8, 9, 10, 13, 14, 15, 16, 18, 20,
725
21, 23, 24, 25, 27, 28, 30, 31, 33, 35,
726
37, 39, 41, 46, 47, 48, 49, 50, 51, 52,
727
54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
728
64, 65, 66, 67, 68, 69, 50, 50, 50, 50,
729
3, 4, 5, 53, 53, 53, 53, 53, 53, 53,
730
53, 43, 53, 53, 53, 53, 53, 53, 53, 53,
731
0, 17, 19, 22, 26, 53, 29, 32, 34, 36,
642
735
#define yyerrok (yyerrstatus = 0)
1466
#line 99 "attack_parser.y"
1565
#line 163 "attack_parser.y"
1566
{ parser_metadata.sources[parser_metadata.current_source_index].last_multiplicity = 1; }
1570
#line 165 "attack_parser.y"
1571
{ parser_metadata.sources[parser_metadata.current_source_index].last_multiplicity = (yyvsp[(1) - (1)].num); }
1575
#line 169 "attack_parser.y"
1467
1576
{ parsed_attack.service = SERVICES_SSH; }
1471
#line 100 "attack_parser.y"
1580
#line 170 "attack_parser.y"
1472
1581
{ parsed_attack.service = SERVICES_DOVECOT; }
1476
#line 101 "attack_parser.y"
1585
#line 171 "attack_parser.y"
1477
1586
{ parsed_attack.service = SERVICES_UWIMAP; }
1481
#line 102 "attack_parser.y"
1590
#line 172 "attack_parser.y"
1482
1591
{ parsed_attack.service = SERVICES_CYRUSIMAP; }
1486
#line 103 "attack_parser.y"
1595
#line 173 "attack_parser.y"
1596
{ parsed_attack.service = SERVICES_CUCIPOP; }
1600
#line 174 "attack_parser.y"
1601
{ parsed_attack.service = SERVICES_EXIM; }
1605
#line 175 "attack_parser.y"
1606
{ parsed_attack.service = SERVICES_SENDMAIL; }
1610
#line 176 "attack_parser.y"
1487
1611
{ parsed_attack.service = SERVICES_FREEBSDFTPD; }
1491
#line 104 "attack_parser.y"
1615
#line 177 "attack_parser.y"
1492
1616
{ parsed_attack.service = SERVICES_PROFTPD; }
1496
#line 105 "attack_parser.y"
1620
#line 178 "attack_parser.y"
1497
1621
{ parsed_attack.service = SERVICES_PUREFTPD; }
1501
#line 110 "attack_parser.y"
1625
#line 179 "attack_parser.y"
1626
{ parsed_attack.service = SERVICES_VSFTPD; }
1630
#line 184 "attack_parser.y"
1632
/* the message repeated, was it an attack? */
1633
if (! parser_metadata.sources[parser_metadata.current_source_index].last_was_recognized) {
1634
/* make sure this doesn't get recognized as an attack */
1638
/* got a repeated attack */
1639
parsed_attack = parser_metadata.sources[parser_metadata.current_source_index].last_attack;
1640
/* restore previous "genuine" dangerousness, and build new one */
1641
parsed_attack.dangerousness = (yyvsp[(1) - (1)].num) * (parsed_attack.dangerousness / parser_metadata.sources[parser_metadata.current_source_index].last_multiplicity);
1643
/* pass up the multiplicity of this attack */
1644
(yyval.num) = (yyvsp[(1) - (1)].num);
1649
#line 203 "attack_parser.y"
1503
1651
parsed_attack.address.kind = ADDRKIND_IPv4;
1504
1652
strcpy(parsed_attack.address.value, (yyvsp[(1) - (1)].str));
1509
#line 114 "attack_parser.y"
1657
#line 207 "attack_parser.y"
1511
1659
parsed_attack.address.kind = ADDRKIND_IPv6;
1512
1660
strcpy(parsed_attack.address.value, (yyvsp[(1) - (1)].str));
1517
#line 118 "attack_parser.y"
1665
#line 211 "attack_parser.y"
1519
1667
struct addrinfo addrinfo_hints;
1520
1668
struct addrinfo *addrinfo_result;