NAME
ppp_chap_dissect - point-to-point challange authentication protocol dissect function
SYNOPSIS
data,offset=ppp_chap_dissect(pkt,offset)
PPP_CHAP_CHALLENGE = 1
PPP_CHAP_RESPONSE = 2
PPP_CHAP_SUCCESS = 3
PPP_CHAP_FAILURE = 4
DESCRIPTION
dissect point-to-point challange authentication protocol
chap fixed-part
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Code | Identifier | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
chap code-dependant-part
Challenge or Response
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Value-Size | Value ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Name ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Success or Failure
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Message ...
+-+-+-+-+-+-+-+-+-+-+-+-+-
reference RFC 1994
funtion accepts two arguments:
pkt is a packet reference containing the whole packet to be dissect
offset is the position inside packet to start dissection
funtion return two values:
data is a variable long tuple:
if code == 1 or 2 data items are:
code
identifier
length
value-size
value
name
if code == 3 or 4 data items are:
codeoffset is the original offset plus length
identifier
length
message