diff options
author | Tomas Kukosa <tomas.kukosa@siemens.com> | 2009-01-22 19:48:12 +0000 |
---|---|---|
committer | Tomas Kukosa <tomas.kukosa@siemens.com> | 2009-01-22 19:48:12 +0000 |
commit | c0af52c979e31c797735e618f7d530fbb0dbd042 (patch) | |
tree | 55267e3cd7db2090d0b9e8266a28fd1dbf3bf45b /asn1/h225 | |
parent | 51b8e113df2c9ba7ea44c8469bf7e600e93345e4 (diff) |
Fix Bug 3219: avoid overwriting H.323 callIdentifier value when CallIdentifier type is called from another dissector, e.g. H.450
svn path=/trunk/; revision=27287
Diffstat (limited to 'asn1/h225')
-rw-r--r-- | asn1/h225/h225.cnf | 10 | ||||
-rw-r--r-- | asn1/h225/packet-h225-template.c | 1 |
2 files changed, 9 insertions, 2 deletions
diff --git a/asn1/h225/h225.cnf b/asn1/h225/h225.cnf index 2a645dcf80..b1d8bd99e1 100644 --- a/asn1/h225/h225.cnf +++ b/asn1/h225/h225.cnf @@ -242,6 +242,7 @@ IsupNumber/nationalStandardPartyNumber isupNationalStandardPartyNumber gint32 message_body_val; contains_faststart = FALSE; + call_id_guid = NULL; %(DEFAULT_BODY)s if (check_col(%(ACTX)s->pinfo->cinfo, COL_INFO)){ col_append_fstr(%(ACTX)s->pinfo->cinfo, COL_INFO, "CS: %%s ", @@ -253,6 +254,10 @@ IsupNumber/nationalStandardPartyNumber isupNationalStandardPartyNumber h225_pi->msg_tag = message_body_val; } + if (call_id_guid) { + h225_pi->guid = *call_id_guid; + } + if (contains_faststart == TRUE ) { if (check_col(%(ACTX)s->pinfo->cinfo, COL_INFO)) @@ -539,11 +544,12 @@ IsupNumber/nationalStandardPartyNumber isupNationalStandardPartyNumber #.END #---------------------------------------------------------------------------------------- #.FN_BODY CallIdentifier/guid - tvbuff_t *guid_tvb; + tvbuff_t *guid_tvb = NULL; %(ACTX)s->value_ptr = &guid_tvb; %(DEFAULT_BODY)s - tvb_memcpy(guid_tvb,(guint8 *)&h225_pi->guid,0,GUID_LEN); + if (guid_tvb) + tvb_get_ntohguid(guid_tvb, 0, call_id_guid = ep_alloc(sizeof(e_guid_t))); %(ACTX)s->value_ptr = NULL; #.END #---------------------------------------------------------------------------------------- diff --git a/asn1/h225/packet-h225-template.c b/asn1/h225/packet-h225-template.c index e2d3ad9d84..975a57a3a1 100644 --- a/asn1/h225/packet-h225-template.c +++ b/asn1/h225/packet-h225-template.c @@ -124,6 +124,7 @@ static guint32 ipv4_port; guint32 T38_manufacturer_code; guint32 value; static gboolean contains_faststart = FALSE; +static e_guid_t *call_id_guid; /* NonStandardParameter */ static const char *nsiOID; |