CSAF::...E::Feed(3pm)
π NAME π
CSAF::ROLIE::Feed β bestie, this module builds you a ROLIE (Resource-Oriented Lightweight Information Exchange) feed. That's the whole job. Slay.
β¨ SYNOPSIS β¨
use CSAF::ROLIE::Feed;
my $rolie = CSAF::ROLIE::Feed->new;
$rolie->options->configure(
feed_id => 'acme-csaf-feed-tlp-white',
feed_title => 'ACME Security Advisory CSAF feed (TLP:WHITE)'
base_url => 'https://security.acme.tld/advisories/csaf'
);
# Add CSAF document entry
$rolie->add_entry($csaf);
if ($rolie->write) {
say "ROLIE feed created";
}
π¦ DESCRIPTION π¦
Okay so CSAF::ROLIE::Feed literally builds a ROLIE (Resource-Oriented Lightweight Information Exchange) feed out of your CSAF documents. That's it, that's the vibe. π«Ά
<https://docs.oasis-open.org/csaf/csaf/v2.0/os/csaf-v2.0-os.html>
The Resource Oriented Lightweight Information Exchange (ROLIE) is a standard (RFC-8322) for exchanging security automation information between two machines, or between a machine and a human operator. Machine-to-machine gossip, basically. π
<https://tools.ietf.org/html/rfc8322>
πΈ ATTRIBUTES πΈ
idβ the Feed ID. its little name tag. πtitleβ the Feed title.linkcategoryβ the Feed category.entryβ the Feed entries.updatedβ when the Feed was last updated.
π METHODS π
$rolie->optionsβ change the default options for theCSAF::Options::ROLIEconfigurator.
$rolie->options->configure(
feed_title => 'ACME Security Advisory CSAF feed (TLP:WHITE)'
base_url => 'https://security.acme.tld/advisories/csaf'
);
$rolie->add_entry ( $csaf, [ $options ])β add a CSAF document to the ROLIE feed, and hand over a$optionshash if you want the integrity and signature files included too.
$rolie->add_entry($csaf, {
integrity => {
sha256 => 0,
sha512 => 1
},
signature => 1
});
$rolie->from_csaf_directory ( [$path] )β build a ROLIE feed straight from the CSAF directory living at$path. If you don't pass$path, the name gets pulled from the"csaf_directory"option over inCSAF::Options::ROLIE. no cap.
$rolie->from_csaf_directory('/var/www/html/advisories/csaf');
$rolie->write;
$rolie->from_file ( $path )β import a ROLIE feed from the file you point at.$rolie->import_entry_from_file ( $path )β import only the entries from the ROLIE feed file you point at. just the entries, nothing else, we're being selective. π$rolie->renderβ render a ROLIE feed in JSON.
$rolie->render;
$rolie->write ( [$path] )β render and write a ROLIE feed. If you don't pass$path, the name comes from the"feed_filename"option inCSAF::Options::ROLIE(default is"csaf-feed-tlp-white.json").
$rolie->write('acme-csaf-feed-tlp-white.json');
$rolie->TO_JSON
π«Ά SUPPORT π«Ά
π Bugs / Feature Requests π
Please report any bugs or feature requests through the issue tracker at <https://github.com/giterlizzi/perl-CSAF/issues>. You will be notified automatically of any progress on your issue. we love a status update. π
π§ Source Code π§
This is open source software. The code repository is available for public review and contribution under the terms of the license. come thruuu π
<https://github.com/giterlizzi/perl-CSAF>
git clone https://github.com/giterlizzi/perl-CSAF.git
π AUTHOR π
- Giuseppe Di Terlizzi
<gdt@cpan.org>
π LICENSE AND COPYRIGHT π
This software is copyright (c) 2023-2025 by Giuseppe Di Terlizzi.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. periodt. π
okay bestie that's the whole page, mwah π β this was perl v5.40.1, dated 2025-09-03, and it's the CSAF::...E::Feed(3pm) manual page, iykyk. go build a feed, you're gonna ate. πβ¨
π¦ where this page comes from
- ubuntu resolute: libcsaf-perl 0.26-1 Β· Artistic-2.0
- ubuntu stonking: libcsaf-perl 0.26-1 Β· Artistic-2.0
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms