Net::Packet::PPPoE - PPP-over-Ethernet layer 3 object
use Net::Packet::Consts qw(:pppoe); require Net::Packet::PPPoE; # Build a layer my $layer = Net::Packet::PPPoE->new( version => 1, type => 1, code => 0, sessionId => 1, payloadLength => 0, pppProtocol => NP_PPPoE_PPP_PROTOCOL_IPv4, ); $layer->pack; print 'RAW: '.unpack('H*', $layer->raw)."\n"; # Read a raw layer my $layer = Net::Packet::PPPoE->new(raw => $raw); print $layer->print."\n"; print 'PAYLOAD: '.unpack('H*', $layer->payload)."\n" if $layer->payload;
This modules implements the encoding and decoding of the PPP-over-Ethernet layer.
See also Net::Packet::Layer and Net::Packet::Layer3 for other attributes and methods.
For this last attribute, we can note that it is included in the computation of payloadLength.
Object constructor. You can pass attributes that will overwrite default ones. Default values:
Packs all attributes into a raw format, in order to inject to network. Returns 1 on success, undef otherwise.
Unpacks raw data from network and stores attributes into the object. Returns 1 on success, undef otherwise.
Load them: use Net::Packet::Consts qw(:pppoe);
PPPoE header length.
Various supported encapsulated PPP protocols.
Patrice <GomoR> Auffret
Copyright (c) 2004-2015, Patrice <GomoR> Auffret
You may distribute this module under the terms of the Artistic license. See LICENSE.Artistic file in the source distribution archive.