IPCOMP transformation and ID_IPV4_ADDR_SUBNET for ISAKMP, from

<a.stockmeier[AT]avm.de>.

svn path=/trunk/; revision=4162
This commit is contained in:
Guy Harris 2001-11-05 21:36:07 +00:00
parent d5727068bb
commit a968373a7a
3 changed files with 29 additions and 2 deletions

View File

@ -867,6 +867,10 @@ Tomas Kukosa <tomas.kukosa[AT]anfdata.cz> {
Additional routines made available to plugins
}
<a.stockmeier[AT]avm.de> {
IPCOMP transformation and ID_IPV4_ADDR_SUBNET for ISAKMP
}
Alain Magloire <alainm[AT]rcsm.ece.mcgill.ca> was kind enough to
give his permission to use his version of snprintf.c.

View File

@ -1211,6 +1211,7 @@ B<http://www.ethereal.com>.
Shinsuke Suzuki <suz[AT]kame.net>
Andrew C. Feren <aferen[AT]cetacean.com>
Tomas Kukosa <tomas.kukosa[AT]anfdata.cz>
<a.stockmeier[AT]avm.de>
Alain Magloire <alainm[AT]rcsm.ece.mcgill.ca> was kind enough to give his
permission to use his version of snprintf.c.

View File

@ -4,7 +4,7 @@
* for ISAKMP (RFC 2407)
* Brad Robel-Forrest <brad.robel-forrest@watchguard.com>
*
* $Id: packet-isakmp.c,v 1.47 2001/10/26 10:30:16 guy Exp $
* $Id: packet-isakmp.c,v 1.48 2001/11/05 21:36:06 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@ -156,6 +156,18 @@ static const char *esp_transtypestr[NUM_ESP_TRANS_TYPES] = {
"AES"
};
#define NUM_IPCOMP_TRANS_TYPES 5
#define ipcomp_trans2str(t) \
((t < NUM_IPCOMP_TRANS_TYPES) ? ipcomp_transtypestr[t] : "UNKNOWN-IPCOMP-TRANS-TYPE")
static const char *ipcomp_transtypestr[NUM_IPCOMP_TRANS_TYPES] = {
"RESERVED",
"OUI",
"DEFLATE",
"LZS",
"LZJH"
};
#define NUM_ID_TYPES 12
#define id2str(t) \
((t < NUM_ID_TYPES) ? idtypestr[t] : "UNKNOWN-ID-TYPE")
@ -614,6 +626,11 @@ dissect_transform(tvbuff_t *tvb, int offset, int length, proto_tree *tree,
"Transform ID: %s (%u)",
esp_trans2str(transform_id), transform_id);
break;
case 4: /* IPCOMP */
proto_tree_add_text(tree, tvb, offset, 1,
"Transform ID: %s (%u)",
ipcomp_trans2str(transform_id), transform_id);
break;
}
offset += 3;
length -= 3;
@ -706,7 +723,6 @@ dissect_id(tvbuff_t *tvb, int offset, int length, proto_tree *tree,
switch (id_type) {
case 1:
case 4:
proto_tree_add_text(tree, tvb, offset, length,
"Identification data: %s",
ip_to_str(tvb_get_ptr(tvb, offset, 4)));
@ -717,6 +733,12 @@ dissect_id(tvbuff_t *tvb, int offset, int length, proto_tree *tree,
"Identification data: %.*s", length,
tvb_get_ptr(tvb, offset, length));
break;
case 4:
proto_tree_add_text(tree, tvb, offset, length,
"Identification data: %s/%s",
ip_to_str(tvb_get_ptr(tvb, offset, 4)),
ip_to_str(tvb_get_ptr(tvb, offset+4, 4)));
break;
default:
proto_tree_add_text(tree, tvb, offset, length, "Identification Data");
break;