Net::Packet::LLC - Logical-Link Control layer 3 object
use Net::Packet::Consts qw(:llc);
require Net::Packet::LLC;
# Build a layer
my $layer = Net::Packet::LLC->new(
dsap => NP_LLC_DSAP_SNAP,
ig => 1,
ssap => NP_LLC_SSAP_SNAP,
cr => 1,
control => 0x03,
oui => NP_LLC_OUI_CISCO,
pid => NP_LLC_PID_CDP,
);
$layer->pack;
print 'RAW: '.unpack('H*', $layer->raw)."\n";
# Read a raw layer
my $layer = Net::Packet::LLC->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 Logical-Link Control
layer.
See also Net::Packet::Layer and Net::Packet::Layer3
for other attributes and methods.
- dsap - 7 bits
- ig - 1 bit
- ssap - 7 bits
- cr - 1 bit
- control - 8 bits
- oui - 24 bits
- pid - 16 bits
- new
- Object constructor. You can pass attributes that will overwrite default
ones. Default values:
dsap: NP_LLC_DSAP_SNAP
ig: 1
ssap: NP_LLC_SSAP_SNAP
cr: 1
control: 0x03
oui: NP_LLC_OUI_CISCO
pid: NP_LLC_PID_CDP
- 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(:llc);
- NP_LLC_HDR_LEN
- LLC header length.
- NP_LLC_OUI_CISCO
- Oui attribute constants.
- NP_LLC_PID_CDP
- NP_LLC_PID_STP
- Pid attribute constants.
- NP_LLC_DSAP_SNAP
- Dsap attribute constants.
- NP_LLC_SSAP_SNAP
- Ssap attribute constants.
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