Library eigrp
A library supporting parsing and generating a limited subset of the Cisco' EIGRP packets.
Author:
Copyright© Same as Nmap--See https://nmap.org/book/man-legal.html Version 0.1 19/07/2012 - First version.
Source: https://svn.nmap.org/nmap/nselib/eigrp.lua
Functions
__tostring (self) |
Converts the request to a string suitable to be sent over a socket. |
addTLV (self, tlv) |
Adds a TLV table to the table of TLVs. |
isRoutingTLV (tlvtype) |
Checks if TLV type is one that should contain routing information. |
new (self, opcode, as, routerid, flags, seq, ack, checksum, tlvs, Checksum, Table) |
Creates a new instance of EIGRP class. |
parse (eigrp_raw) |
Parses a raw eigrp packet and returns a structured response. |
setAcknowledge (self, ack) |
Sets the EIGRP Packet acknowledge field. |
setAS (self, as) |
Sets the EIGRP Packet Autonomous System. |
setChecksum (self, checksum, integer) |
Sets the EIGRP packet checksum |
setFlags (self, flags) |
Sets the EIGRP packet flags field. |
setOpcode (self, opcode) |
Sets the EIGRP Packet opcode |
setRouterID (self, routerid) |
Sets the EIGRP Packet Virtual Router ID. |
setSequence (self, seq) |
Sets the EIGRP packet sequence field. |
setTlvs (self, tlvs) |
Sets the EIGRP Packet tlvs |
setVersion (self, ver) |
Sets the EIGRP version. |
Functions
- __tostring (self)
-
Converts the request to a string suitable to be sent over a socket.
Parameters
- self:
Return value:
data string containing the complete request to send over the socket - addTLV (self, tlv)
-
Adds a TLV table to the table of TLVs.
Parameters
- self:
- tlv: TLV table.
- isRoutingTLV (tlvtype)
-
Checks if TLV type is one that should contain routing information.
Parameters
- tlvtype: integer TLV type integer to check.
Return value:
status true if tlvtype is a routing information tlv. - new (self, opcode, as, routerid, flags, seq, ack, checksum, tlvs, Checksum, Table)
-
Creates a new instance of EIGRP class.
Parameters
- self:
- opcode: integer Opcode. Defaults to 5 (Hello)
- as: integer Autonomous System. Defaults to 0.
- routerid: integer virtual router ID. defaults to 0.
- flags: integer flags field value. Defaults to 0.
- seq: integer sequence value. Defaults to 0.
- ack: integer acknowledge value. Defaults to 0.
- checksum:
- tlvs:
- Checksum: integer EIGRP packet checksum. Calculated automatically if not manually set.
- Table: TLVs table.
Return value:
o Instance of EIGRP - parse (eigrp_raw)
-
Parses a raw eigrp packet and returns a structured response.
Parameters
- eigrp_raw: string EIGRP Raw packet.
Return value:
response table Structured eigrp packet. - setAcknowledge (self, ack)
-
Sets the EIGRP Packet acknowledge field.
Parameters
- self:
- ack: EIGRP acknowledge.
- setAS (self, as)
-
Sets the EIGRP Packet Autonomous System.
Parameters
- self:
- as: EIGRP A.S.
- setChecksum (self, checksum, integer)
-
Sets the EIGRP packet checksum
Parameters
- self:
- checksum:
- integer: checksum Checksum to set.
- setFlags (self, flags)
-
Sets the EIGRP packet flags field.
Parameters
- self:
- flags: Flags integer value.
- setOpcode (self, opcode)
-
Sets the EIGRP Packet opcode
Parameters
- self:
- opcode: integer EIGRP opcode.
- setRouterID (self, routerid)
-
Sets the EIGRP Packet Virtual Router ID.
Parameters
- self:
- routerid: EIGRP Virtual Router ID.
- setSequence (self, seq)
-
Sets the EIGRP packet sequence field.
Parameters
- self:
- seq: EIGRP sequence.
- setTlvs (self, tlvs)
-
Sets the EIGRP Packet tlvs
Parameters
- self:
- tlvs: table of EIGRP tlvs.
- setVersion (self, ver)
-
Sets the EIGRP version.
Parameters
- self:
- ver: integer version to set.