File Coverage

blib/lib/Mail/Milter/Authentication/Constants.pm
Criterion Covered Total %
statement 212 212 100.0
branch n/a
condition n/a
subroutine 71 71 100.0
pod n/a
total 283 283 100.0


line stmt bran cond sub pod time code
1             package Mail::Milter::Authentication::Constants;
2             # ABSTRACT: Define and export useful constants
3 127     127   1606 use 5.20.0;
  127         503  
4 127     127   700 use strict;
  127         260  
  127         2568  
5 127     127   536 use warnings;
  127         256  
  127         7117  
6             ##use Mail::Milter::Authentication::Pragmas;
7             # ABSTRACT: Common constants
8             our $VERSION = '3.20230911'; # VERSION
9 127     127   826 use base 'Exporter';
  127         264  
  127         15504  
10              
11              
12             ## no critic [Modules::ProhibitAutomaticExportation]
13              
14             # Syslog Constants
15              
16 127     127   949 use constant LOG_DEBUG => 7;
  127         279  
  127         9556  
17 127     127   887 use constant LOG_INFO => 6;
  127         273  
  127         8166  
18 127     127   822 use constant LOG_NOTICE => 5;
  127         539  
  127         7072  
19 127     127   821 use constant LOG_WARNING => 4;
  127         258  
  127         5857  
20 127     127   717 use constant LOG_ERR => 3;
  127         317  
  127         7243  
21 127     127   832 use constant LOG_CRIT => 2;
  127         253  
  127         6330  
22 127     127   826 use constant LOG_ALERT => 1;
  127         698  
  127         6239  
23 127     127   722 use constant LOG_EMERG => 0;
  127         597  
  127         6714  
24 127     127   1087 use constant LOG_MAIL => 16;
  127         272  
  127         6906  
25              
26             # Sendmail Constants
27              
28 127     127   822 use constant SMFIA_UNKNOWN => 'U';
  127         197  
  127         7633  
29 127     127   765 use constant SMFIA_UNIX => 'L';
  127         295  
  127         6996  
30 127     127   3510 use constant SMFIA_INET => '4';
  127         869  
  127         7453  
31 127     127   714 use constant SMFIA_INET6 => '6';
  127         251  
  127         7337  
32              
33 127     127   826 use constant SMFIC_ABORT => 'A';
  127         303  
  127         7085  
34 127     127   778 use constant SMFIC_BODY => 'B';
  127         259  
  127         6783  
35 127     127   716 use constant SMFIC_CONNECT => 'C';
  127         255  
  127         6630  
36 127     127   851 use constant SMFIC_MACRO => 'D';
  127         204  
  127         8089  
37 127     127   1313 use constant SMFIC_BODYEOB => 'E';
  127         308  
  127         7880  
38 127     127   1526 use constant SMFIC_HELO => 'H';
  127         306  
  127         8016  
39 127     127   887 use constant SMFIC_HEADER => 'L';
  127         264  
  127         5520  
40 127     127   657 use constant SMFIC_MAIL => 'M';
  127         266  
  127         6121  
41 127     127   822 use constant SMFIC_EOH => 'N';
  127         255  
  127         6013  
42 127     127   784 use constant SMFIC_OPTNEG => 'O';
  127         197  
  127         6735  
43 127     127   766 use constant SMFIC_RCPT => 'R';
  127         253  
  127         7801  
44 127     127   894 use constant SMFIC_QUIT => 'Q';
  127         259  
  127         5702  
45 127     127   3484 use constant SMFIC_DATA => 'T';
  127         307  
  127         7083  
46 127     127   816 use constant SMFIC_UNKNOWN => 'U';
  127         264  
  127         5563  
47              
48 127     127   665 use constant SMFIR_ADDRCPT => '+';
  127         253  
  127         7902  
49 127     127   769 use constant SMFIR_DELRCPT => '-';
  127         251  
  127         6380  
50 127     127   814 use constant SMFIR_ACCEPT => 'a';
  127         254  
  127         5473  
51 127     127   677 use constant SMFIR_REPLBODY => 'b';
  127         260  
  127         6592  
52 127     127   819 use constant SMFIR_CONTINUE => 'c';
  127         199  
  127         7548  
53 127     127   776 use constant SMFIR_DISCARD => 'd';
  127         255  
  127         5601  
54 127     127   2945 use constant SMFIR_ADDHEADER => 'h';
  127         368  
  127         7507  
55 127     127   868 use constant SMFIR_INSHEADER => 'i';
  127         260  
  127         8146  
56 127     127   828 use constant SMFIR_CHGHEADER => 'm';
  127         263  
  127         5957  
57 127     127   662 use constant SMFIR_PROGRESS => 'p';
  127         249  
  127         11438  
58 127     127   881 use constant SMFIR_QUARANTINE => 'q';
  127         266  
  127         7248  
59 127     127   906 use constant SMFIR_REJECT => 'r';
  127         302  
  127         7366  
60 127     127   878 use constant SMFIR_SETSENDER => 's';
  127         155  
  127         6965  
61 127     127   844 use constant SMFIR_TEMPFAIL => 't';
  127         244  
  127         5473  
62 127     127   1091 use constant SMFIR_REPLYCODE => 'y';
  127         953  
  127         12285  
63              
64 127     127   830 use constant SMFIP_NOCONNECT => 0x01;
  127         250  
  127         6858  
65 127     127   822 use constant SMFIP_NOHELO => 0x02;
  127         252  
  127         6808  
66 127     127   762 use constant SMFIP_NOMAIL => 0x04;
  127         263  
  127         5447  
67 127     127   694 use constant SMFIP_NORCPT => 0x08;
  127         251  
  127         6461  
68 127     127   964 use constant SMFIP_NOBODY => 0x10;
  127         283  
  127         6220  
69 127     127   826 use constant SMFIP_NOHDRS => 0x20;
  127         260  
  127         8966  
70 127     127   892 use constant SMFIP_NOEOH => 0x40;
  127         272  
  127         5260  
71 127     127   710 use constant SMFIP_NONE => 0x7F;
  127         1610  
  127         6856  
72 127     127   889 use constant SMFIP_HDR_LEADSPC => 0x100000;
  127         145  
  127         6707  
73              
74 127     127   894 use constant SMFIS_CONTINUE => 100;
  127         264  
  127         5406  
75 127     127   718 use constant SMFIS_REJECT => 101;
  127         196  
  127         6185  
76 127     127   796 use constant SMFIS_DISCARD => 102;
  127         290  
  127         8846  
77 127     127   3175 use constant SMFIS_ACCEPT => 103;
  127         437  
  127         6090  
78 127     127   712 use constant SMFIS_TEMPFAIL => 104;
  127         263  
  127         7590  
79              
80 127     127   779 use constant SMFIF_ADDHDRS => 0x01;
  127         270  
  127         5516  
81 127     127   677 use constant SMFIF_CHGBODY => 0x02;
  127         1043  
  127         7789  
82 127     127   771 use constant SMFIF_ADDRCPT => 0x04;
  127         253  
  127         7410  
83 127     127   937 use constant SMFIF_DELRCPT => 0x08;
  127         293  
  127         6249  
84 127     127   770 use constant SMFIF_CHGHDRS => 0x10;
  127         262  
  127         5067  
85 127     127   648 use constant SMFIF_MODBODY => SMFIF_CHGBODY;
  127         251  
  127         7131  
86 127     127   830 use constant SMFIF_QUARANTINE => 0x20;
  127         268  
  127         5307  
87 127     127   758 use constant SMFIF_SETSENDER => 0x40;
  127         155  
  127         8218  
88              
89 127     127   823 use constant SMFI_V1_ACTS => SMFIF_ADDHDRS|SMFIF_CHGBODY|SMFIF_ADDRCPT|SMFIF_DELRCPT;
  127         207  
  127         6891  
90 127     127   873 use constant SMFI_V2_ACTS => SMFI_V1_ACTS|SMFIF_CHGHDRS;
  127         263  
  127         7115  
91 127     127   822 use constant SMFI_CURR_ACTS => SMFI_V2_ACTS;
  127         259  
  127         21653  
92              
93             our @EXPORT = qw(
94             LOG_DEBUG
95             LOG_INFO
96             LOG_NOTICE
97             LOG_WARNING
98             LOG_ERR
99             LOG_CRIT
100             LOG_ALERT
101             LOG_EMERG
102             LOG_MAIL
103             SMFIA_UNKNOWN
104             SMFIA_UNIX
105             SMFIA_INET
106             SMFIA_INET6
107             SMFIC_ABORT
108             SMFIC_BODY
109             SMFIC_CONNECT
110             SMFIC_MACRO
111             SMFIC_BODYEOB
112             SMFIC_HELO
113             SMFIC_HEADER
114             SMFIC_MAIL
115             SMFIC_EOH
116             SMFIC_OPTNEG
117             SMFIC_RCPT
118             SMFIC_QUIT
119             SMFIC_DATA
120             SMFIC_UNKNOWN
121             SMFIR_ADDRCPT
122             SMFIR_DELRCPT
123             SMFIR_ACCEPT
124             SMFIR_REPLBODY
125             SMFIR_CONTINUE
126             SMFIR_DISCARD
127             SMFIR_ADDHEADER
128             SMFIR_INSHEADER
129             SMFIR_CHGHEADER
130             SMFIR_PROGRESS
131             SMFIR_QUARANTINE
132             SMFIR_REJECT
133             SMFIR_SETSENDER
134             SMFIR_TEMPFAIL
135             SMFIR_REPLYCODE
136             SMFIP_NOCONNECT
137             SMFIP_NOHELO
138             SMFIP_NOMAIL
139             SMFIP_NORCPT
140             SMFIP_NOBODY
141             SMFIP_NOHDRS
142             SMFIP_NOEOH
143             SMFIP_NONE
144             SMFIP_HDR_LEADSPC
145             SMFIS_CONTINUE
146             SMFIS_REJECT
147             SMFIS_DISCARD
148             SMFIS_ACCEPT
149             SMFIS_TEMPFAIL
150             SMFIF_ADDHDRS
151             SMFIF_CHGBODY
152             SMFIF_ADDRCPT
153             SMFIF_DELRCPT
154             SMFIF_CHGHDRS
155             SMFIF_MODBODY
156             SMFIF_QUARANTINE
157             SMFIF_SETSENDER
158             SMFI_V1_ACTS
159             SMFI_V2_ACTS
160             SMFI_CURR_ACTS
161             );
162             our @EXPORT_OK = ( @EXPORT );
163             our %EXPORT_TAGS = ( 'all' => [ @EXPORT_OK ] );
164              
165             1;
166              
167             __END__
168              
169             =pod
170              
171             =encoding UTF-8
172              
173             =head1 NAME
174              
175             Mail::Milter::Authentication::Constants - Define and export useful constants
176              
177             =head1 VERSION
178              
179             version 3.20230911
180              
181             =head1 SYNOPSIS
182              
183             Constants defined here are used in the sendmail milter protocol
184              
185             =head1 DESCRIPTION
186              
187             Exports useful constants.
188              
189             =head1 AUTHOR
190              
191             Marc Bradshaw <marc@marcbradshaw.net>
192              
193             =head1 COPYRIGHT AND LICENSE
194              
195             This software is copyright (c) 2020 by Marc Bradshaw.
196              
197             This is free software; you can redistribute it and/or modify it under
198             the same terms as the Perl 5 programming language system itself.
199              
200             =cut