GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
Net::Packet::PPPoE(3) User Contributed Perl Documentation Net::Packet::PPPoE(3)

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.

version - 4 bits
code - 4 bits
type - 8 bits
sessionId - 16 bits
payloadLength - 16 bits
pppProtocol - 16 bits
For this last attribute, we can note that it is included in the computation of payloadLength.

new
Object constructor. You can pass attributes that will overwrite default ones. Default values:

version: 1

type: 1

code: 0

sessionId: 1

payloadLength: 0

pppProtocol: NP_PPPoE_PPP_PROTOCOL_IPv4

pack
Packs all attributes into a raw format, in order to inject to network. Returns 1 on success, undef otherwise.
unpack
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);
NP_PPPoE_HDR_LEN
PPPoE header length.
NP_PPPoE_PPP_PROTOCOL_IPv4
NP_PPPoE_PPP_PROTOCOL_PPPLCP
Various supported encapsulated PPP protocols.

Patrice <GomoR> Auffret

Copyright (c) 2004-2009, Patrice <GomoR> Auffret

You may distribute this module under the terms of the Artistic license. See LICENSE.Artistic file in the source distribution archive.

NetPacket, Net::RawIP, Net::RawSock
2009-11-09 perl v5.32.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.