CSAF::...E::Feed(3pm)

πŸ“¦
version 0.26 Β· 2 versions
, in ubuntu resolute, ubuntu stonking

πŸ’– 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.
  • link
  • category β€” the Feed category.
  • entry β€” the Feed entries.
  • updated β€” when the Feed was last updated.

πŸ’… METHODS πŸ’…

  • $rolie->options β€” change the default options for the CSAF::Options::ROLIE configurator.
$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 $options hash 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 in CSAF::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 in CSAF::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>

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