File Coverage

blib/lib/SBOM/CycloneDX/Enum/CryptoMode.pm
Criterion Covered Total %
statement 20 20 100.0
branch n/a
condition n/a
subroutine 7 7 100.0
pod 0 1 0.0
total 27 28 96.4


line stmt bran cond sub pod time code
1             package SBOM::CycloneDX::Enum::CryptoMode;
2              
3 16     16   337 use 5.010001;
  16         65  
4 16     16   98 use strict;
  16         31  
  16         481  
5 16     16   80 use warnings;
  16         61  
  16         831  
6 16     16   89 use utf8;
  16         37  
  16         172  
7              
8 16     16   751 use Exporter 'import';
  16         32  
  16         3129  
9             our (@EXPORT_OK, %EXPORT_TAGS, %ENUM);
10              
11             BEGIN {
12              
13 16     16   230 %ENUM = (
14             CBC => 'cbc',
15             ECB => 'ecb',
16             CCM => 'ccm',
17             GCM => 'gcm',
18             CFB => 'cfb',
19             OFB => 'ofb',
20             CTR => 'ctr',
21             OTHER => 'other',
22             UNKNOWN => 'unknown',
23             );
24              
25 16         95 require constant;
26 16         1575 constant->import(\%ENUM);
27              
28 16         244 @EXPORT_OK = sort keys %ENUM;
29 16         1559 %EXPORT_TAGS = (all => \@EXPORT_OK);
30              
31             }
32              
33 2     2 0 18 sub values { sort values %ENUM }
34              
35              
36             1;
37              
38             =encoding utf-8
39              
40             =head1 NAME
41              
42             SBOM::CycloneDX::Enum::CryptoMode - Crypto Mode
43              
44             =head1 SYNOPSIS
45              
46             use SBOM::CycloneDX::Enum qw(CRYPTO_MODE);
47              
48             say CRYPTO_MODE->CBC;
49              
50              
51             use SBOM::CycloneDX::Enum::CryptoMode;
52              
53             say SBOM::CycloneDX::Enum::CryptoMode->ECB;
54              
55              
56             use SBOM::CycloneDX::Enum::CryptoMode qw(:all);
57              
58             say GCM;
59              
60              
61             =head1 DESCRIPTION
62              
63             L is ENUM package used by L.
64              
65             The mode of operation in which the cryptographic algorithm (block cipher)
66             is used.
67              
68              
69             =head1 CONSTANTS
70              
71             =over
72              
73             =item * C, Cipher block chaining
74              
75             =item * C, Electronic codebook
76              
77             =item * C, Counter with cipher block chaining message authentication
78             code
79              
80             =item * C, Galois/counter
81              
82             =item * C, Cipher feedback
83              
84             =item * C, Output feedback
85              
86             =item * C, Counter
87              
88             =item * C, Another mode of operation
89              
90             =item * C, The mode of operation is not known
91              
92             =back
93              
94             =head1 SUPPORT
95              
96             =head2 Bugs / Feature Requests
97              
98             Please report any bugs or feature requests through the issue tracker
99             at L.
100             You will be notified automatically of any progress on your issue.
101              
102             =head2 Source Code
103              
104             This is open source software. The code repository is available for
105             public review and contribution under the terms of the license.
106              
107             L
108              
109             git clone https://github.com/giterlizzi/perl-SBOM-CycloneDX.git
110              
111              
112             =head1 AUTHOR
113              
114             =over 4
115              
116             =item * Giuseppe Di Terlizzi
117              
118             =back
119              
120              
121             =head1 LICENSE AND COPYRIGHT
122              
123             This software is copyright (c) 2025-2026 by Giuseppe Di Terlizzi.
124              
125             This is free software; you can redistribute it and/or modify it under
126             the same terms as the Perl 5 programming language system itself.
127              
128             =cut