diff options
author | Anders Broman <anders.broman@ericsson.com> | 2005-06-28 21:14:09 +0000 |
---|---|---|
committer | Anders Broman <anders.broman@ericsson.com> | 2005-06-28 21:14:09 +0000 |
commit | e824655d635ea2a8321ba8a06c56c05393606a0b (patch) | |
tree | 827ba7a88b122a8830763a6ece9e4965d2b3e60d /asn1/gsmmap/packet-gsm_map-template.c | |
parent | 8f962c973f420bc1eae5b44302b2b6e00bf69da6 (diff) |
Fix to SendAuthenticationInfoRes.
svn path=/trunk/; revision=14807
Diffstat (limited to 'asn1/gsmmap/packet-gsm_map-template.c')
-rw-r--r-- | asn1/gsmmap/packet-gsm_map-template.c | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/asn1/gsmmap/packet-gsm_map-template.c b/asn1/gsmmap/packet-gsm_map-template.c index 2c5d9a86a8..806a834a2b 100644 --- a/asn1/gsmmap/packet-gsm_map-template.c +++ b/asn1/gsmmap/packet-gsm_map-template.c @@ -742,12 +742,14 @@ static int dissect_returnResultData(packet_info *pinfo, proto_tree *tree, tvbuff offset=dissect_gsm_map_SendIdentificationRes(FALSE, tvb, offset, pinfo, tree, -1); break; case 56: /*sendAuthenticationInfo*/ - if (application_context_version < 2 ){ - offset=dissect_gsm_map_SendAuthenticationInfoRes(FALSE, tvb, offset, pinfo, tree, hf_gsm_map_SendAuthenticationInfoRes); - }else{ - offset=dissect_gsm_map_SendAuthenticationInfoResV3(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_SendAuthenticationInfoRes); - } - break; + octet = tvb_get_guint8(tvb,0) & 0xf; + if ( octet == 3){ /* This is a V3 message ??? */ + offset = offset +2; + offset=dissect_gsm_map_SendAuthenticationInfoResV3(TRUE, tvb, offset, pinfo, tree, hf_gsm_map_SendAuthenticationInfoRes); + }else{ + offset=dissect_gsm_map_SendAuthenticationInfoRes(FALSE, tvb, offset, pinfo, tree, -1); + } + break; case 57: /*restoreData*/ offset=dissect_gsm_map_RestoreDataRes(FALSE, tvb, offset, pinfo, tree, -1); break; @@ -813,9 +815,9 @@ static int dissect_returnResultData(packet_info *pinfo, proto_tree *tree, tvbuff offset=dissect_gsm_map_EraseCC_EntryRes(FALSE, tvb, offset, pinfo, tree, -1); break; case 78: /*secureTransportClass1*/ - case 79: /*secureTransportClass1*/ - case 80: /*secureTransportClass1*/ - case 81: /*secureTransportClass1*/ + case 79: /*secureTransportClass2*/ + case 80: /*secureTransportClass3*/ + case 81: /*secureTransportClass4*/ offset=dissect_gsm_map_SecureTransportRes(FALSE, tvb, offset, pinfo, tree, -1); break; case 83: /*provideSubscriberLocation*/ |