1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77
|
[](https://github.com/giterlizzi/perl-CSAF/releases) [](https://github.com/giterlizzi/perl-CSAF/actions) [](https://github.com/giterlizzi/perl-CSAF) [](https://github.com/giterlizzi/perl-CSAF) [](https://github.com/giterlizzi/perl-CSAF) [](https://github.com/giterlizzi/perl-CSAF/issues) [](https://coveralls.io/github/giterlizzi/perl-CSAF)
# CSAF Perl Toolkit
## Synopsis
```.pl
use CSAF;
my $csaf = CSAF->new;
$csaf->document->title('Base CSAF Document');
$csaf->document->category('csaf_security_advisory');
$csaf->document->publisher(
category => 'vendor',
name => 'CSAF',
namespace => 'https://csaf.io'
);
my $tracking = $csaf->document->tracking(
id => 'CSAF:2024-001',
status => 'final',
version => '1.0.0',
initial_release_date => 'now',
current_release_date => 'now'
);
$tracking->revision_history->add(
date => 'now',
summary => 'First release',
number => '1'
);
my @errors = $csaf->validate;
if (@errors) {
say $_ for (@errors);
Carp::croak "Validation errors";
}
# Save CSAF documents using the
$csaf->writer(directory => '/var/www/html/csaf')->write;
```
## Command-Line Utility
- `csaf-downloader`, Download CSAF documents
- `csaf-rolie`, Create ROLIE feed
- `csaf-validator`, Validate a CSAF document
- `csaf2html`, Convert CSAF documents in HTML
## Install
Using Makefile.PL:
To install `CSAF` distribution, run the following commands.
perl Makefile.PL
make
make test
make install
Using App::cpanminus:
cpanm CSAF
## Documentation
- `perldoc CSAF`
- https://metacpan.org/release/CSAF
- https://docs.oasis-open.org/csaf/csaf/v2.0/os/csaf-v2.0-os.html
## Copyright
- Copyright 2023-2025 © Giuseppe Di Terlizzi
|