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 126     126   1701 use 5.20.0;
  126         449  
4 126     126   696 use strict;
  126         254  
  126         2531  
5 126     126   517 use warnings;
  126         254  
  126         6947  
6             ##use Mail::Milter::Authentication::Pragmas;
7             # ABSTRACT: Common constants
8             our $VERSION = '3.20230629'; # VERSION
9 126     126   840 use base 'Exporter';
  126         284  
  126         13143  
10              
11              
12             ## no critic [Modules::ProhibitAutomaticExportation]
13              
14             # Syslog Constants
15              
16 126     126   896 use constant LOG_DEBUG => 7;
  126         697  
  126         8984  
17 126     126   933 use constant LOG_INFO => 6;
  126         258  
  126         8370  
18 126     126   866 use constant LOG_NOTICE => 5;
  126         636  
  126         5748  
19 126     126   711 use constant LOG_WARNING => 4;
  126         254  
  126         7045  
20 126     126   762 use constant LOG_ERR => 3;
  126         267  
  126         6021  
21 126     126   775 use constant LOG_CRIT => 2;
  126         265  
  126         6052  
22 126     126   710 use constant LOG_ALERT => 1;
  126         210  
  126         7199  
23 126     126   764 use constant LOG_EMERG => 0;
  126         261  
  126         5371  
24 126     126   905 use constant LOG_MAIL => 16;
  126         263  
  126         6855  
25              
26             # Sendmail Constants
27              
28 126     126   825 use constant SMFIA_UNKNOWN => 'U';
  126         273  
  126         8747  
29 126     126   854 use constant SMFIA_UNIX => 'L';
  126         311  
  126         7590  
30 126     126   1872 use constant SMFIA_INET => '4';
  126         2018  
  126         6315  
31 126     126   657 use constant SMFIA_INET6 => '6';
  126         257  
  126         6298  
32              
33 126     126   813 use constant SMFIC_ABORT => 'A';
  126         412  
  126         6232  
34 126     126   780 use constant SMFIC_BODY => 'B';
  126         253  
  126         6544  
35 126     126   868 use constant SMFIC_CONNECT => 'C';
  126         229  
  126         5585  
36 126     126   660 use constant SMFIC_MACRO => 'D';
  126         268  
  126         7046  
37 126     126   756 use constant SMFIC_BODYEOB => 'E';
  126         298  
  126         7955  
38 126     126   837 use constant SMFIC_HELO => 'H';
  126         276  
  126         5381  
39 126     126   703 use constant SMFIC_HEADER => 'L';
  126         687  
  126         8436  
40 126     126   868 use constant SMFIC_MAIL => 'M';
  126         271  
  126         5385  
41 126     126   703 use constant SMFIC_EOH => 'N';
  126         255  
  126         6552  
42 126     126   871 use constant SMFIC_OPTNEG => 'O';
  126         264  
  126         7168  
43 126     126   806 use constant SMFIC_RCPT => 'R';
  126         253  
  126         8278  
44 126     126   892 use constant SMFIC_QUIT => 'Q';
  126         262  
  126         8314  
45 126     126   818 use constant SMFIC_DATA => 'T';
  126         258  
  126         11044  
46 126     126   855 use constant SMFIC_UNKNOWN => 'U';
  126         282  
  126         6042  
47              
48 126     126   761 use constant SMFIR_ADDRCPT => '+';
  126         205  
  126         7202  
49 126     126   762 use constant SMFIR_DELRCPT => '-';
  126         292  
  126         6468  
50 126     126   781 use constant SMFIR_ACCEPT => 'a';
  126         251  
  126         6491  
51 126     126   712 use constant SMFIR_REPLBODY => 'b';
  126         297  
  126         6029  
52 126     126   719 use constant SMFIR_CONTINUE => 'c';
  126         253  
  126         6046  
53 126     126   731 use constant SMFIR_DISCARD => 'd';
  126         256  
  126         6099  
54 126     126   871 use constant SMFIR_ADDHEADER => 'h';
  126         202  
  126         8290  
55 126     126   819 use constant SMFIR_INSHEADER => 'i';
  126         213  
  126         6022  
56 126     126   711 use constant SMFIR_CHGHEADER => 'm';
  126         249  
  126         6870  
57 126     126   878 use constant SMFIR_PROGRESS => 'p';
  126         253  
  126         5951  
58 126     126   652 use constant SMFIR_QUARANTINE => 'q';
  126         198  
  126         9211  
59 126     126   769 use constant SMFIR_REJECT => 'r';
  126         1556  
  126         7380  
60 126     126   828 use constant SMFIR_SETSENDER => 's';
  126         252  
  126         6401  
61 126     126   772 use constant SMFIR_TEMPFAIL => 't';
  126         266  
  126         7412  
62 126     126   757 use constant SMFIR_REPLYCODE => 'y';
  126         271  
  126         11853  
63              
64 126     126   882 use constant SMFIP_NOCONNECT => 0x01;
  126         260  
  126         6046  
65 126     126   762 use constant SMFIP_NOHELO => 0x02;
  126         255  
  126         5843  
66 126     126   2111 use constant SMFIP_NOMAIL => 0x04;
  126         196  
  126         6635  
67 126     126   806 use constant SMFIP_NORCPT => 0x08;
  126         199  
  126         5528  
68 126     126   713 use constant SMFIP_NOBODY => 0x10;
  126         259  
  126         7076  
69 126     126   766 use constant SMFIP_NOHDRS => 0x20;
  126         272  
  126         7229  
70 126     126   763 use constant SMFIP_NOEOH => 0x40;
  126         270  
  126         6401  
71 126     126   765 use constant SMFIP_NONE => 0x7F;
  126         253  
  126         7972  
72 126     126   867 use constant SMFIP_HDR_LEADSPC => 0x100000;
  126         199  
  126         5865  
73              
74 126     126   733 use constant SMFIS_CONTINUE => 100;
  126         198  
  126         6238  
75 126     126   821 use constant SMFIS_REJECT => 101;
  126         202  
  126         9083  
76 126     126   837 use constant SMFIS_DISCARD => 102;
  126         197  
  126         8896  
77 126     126   3175 use constant SMFIS_ACCEPT => 103;
  126         433  
  126         5863  
78 126     126   776 use constant SMFIS_TEMPFAIL => 104;
  126         212  
  126         5027  
79              
80 126     126   709 use constant SMFIF_ADDHDRS => 0x01;
  126         207  
  126         8649  
81 126     126   1521 use constant SMFIF_CHGBODY => 0x02;
  126         847  
  126         7416  
82 126     126   774 use constant SMFIF_ADDRCPT => 0x04;
  126         251  
  126         8029  
83 126     126   978 use constant SMFIF_DELRCPT => 0x08;
  126         182  
  126         6194  
84 126     126   703 use constant SMFIF_CHGHDRS => 0x10;
  126         264  
  126         5526  
85 126     126   653 use constant SMFIF_MODBODY => SMFIF_CHGBODY;
  126         251  
  126         5706  
86 126     126   768 use constant SMFIF_QUARANTINE => 0x20;
  126         252  
  126         5732  
87 126     126   714 use constant SMFIF_SETSENDER => 0x40;
  126         279  
  126         7868  
88              
89 126     126   871 use constant SMFI_V1_ACTS => SMFIF_ADDHDRS|SMFIF_CHGBODY|SMFIF_ADDRCPT|SMFIF_DELRCPT;
  126         198  
  126         5918  
90 126     126   667 use constant SMFI_V2_ACTS => SMFI_V1_ACTS|SMFIF_CHGHDRS;
  126         265  
  126         7743  
91 126     126   884 use constant SMFI_CURR_ACTS => SMFI_V2_ACTS;
  126         274  
  126         21321  
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.20230629
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