Net::F...sement(3pm)

πŸ“¦
version 1.11 Β· 2 versions
, in debian bookworm, debian trixie, ubuntu jammy, ubuntu noble

πŸ’– Net::F...sement(3pm) β€” bestie edition πŸ’–

okay so this is a page from the User Contributed Perl Documentation set, filed under Net::F...sement(3pm), and it's all about one lil' ICMPv6 object. grab a snack, we're doing networking ✨


🌸 NAME 🌸

Net::Frame::Layer::ICMPv6::RouterAdvertisement β€” it's the ICMPv6 Router Advertisement type object, and yes she is exactly as iconic as she sounds πŸ‘‘


πŸ¦‹ SYNOPSIS πŸ¦‹

here's the vibe, copy-paste ready, no cap:

use Net::Frame::Layer::ICMPv6::RouterAdvertisement;

my $layer = Net::Frame::Layer::ICMPv6::RouterAdvertisement->new(
   curHopLimit   => 64,
   flags         => NF_ICMPv6_FLAG_MANAGEDADDRESSCONFIGURATION,
);
$layer->pack;

print 'RAW: '.$layer->dump."\n";

# Read a raw layer
my $layer = Net::Frame::Layer::ICMPv6::RouterAdvertisement->new(
   raw => $raw,
);

print $layer->print."\n";
print 'PAYLOAD: '.unpack('H*', $layer->payload)."\n"
   if $layer->payload;

like… build it, pack it, dump it, or feed it raw bytes and let it figure herself out. both directions, she serves πŸ’…


✨ DESCRIPTION ✨

this module is the whole encoder and decoder situation for the ICMPv6 Router Advertisement object. so like, it can take your attributes and turn them into bytes, and it can take bytes and turn them back into attributes. full glow-up in both directions πŸ”₯

also, for the other attributes and methods floating around, go peek at Net::Frame::Layer. she's the mothership 🫢


πŸŽ€ ATTRIBUTES πŸŽ€

for the tea on all of these, refer to RFC 5175. that's the source of truth, bestie, not me πŸ’œ

  • curHopLimit
  • flags
  • reserved
  • routerLifetime
  • reachableTime
  • retransTimer
  • options

and these next ones are the inherited attributes β€” they're not hers originally, she got them from the family. see Net::Frame::Layer for the full lore:

  • raw
  • payload
  • nextLayer

πŸ‘‘ METHODS πŸ‘‘

  • new
  • new (hash) β€” the object constructor, periodt. you can pass in attributes and they'll overwrite the defaults. wanna know what the defaults even are? look at SYNOPSIS above, they're all sitting right there ✨
  • getOptionsLength β€” hands you the length, in bytes, of options. and if there are no options? she gives you 0. that's it, that's the whole thing, and honestly? queen behavior πŸ’…

the following are inherited methods. heads up though: some of them might get overridden in this layer, and some of them might not even be meaningful here. so don't come for her if one of them acts weird β€” check Net::Frame::Layer for the real details:

  • layer
  • computeLengths
  • computeChecksums
  • pack
  • unpack
  • encapsulate
  • getLength
  • getPayloadLength
  • print
  • dump

🌈 CONSTANTS 🌈

No constants here.

that's it. that's the section. empty. nothing. and you know what, that's valid, not every layer needs a personality trait 😭


🧚 SEE ALSO 🧚

go read these next, they're the friend group:

  • Net::Frame::Layer::ICMPv6
  • Net::Frame::Layer

πŸ’œ AUTHOR πŸ’œ

Patrice <GomoR> Auffret Paolo Vanni Venegas

(iconic duo, no notes 🫢)


Copyright (c) 2006-2019, Patrice <GomoR> Auffret Copyright (c) 2009-2019, Paolo Vanni Venegas

you're allowed to distribute this module under the terms of the Artistic license. see the LICENSE.Artistic file in the source distribution archive for the whole legal situation ✨


⭐ ok final thing: this whole page comes from perl v5.30.0, dated 2019-12-26, filed under Net::F...sement(3pm). that's the sign-off bestie, mwah πŸ’–