aboutsummaryrefslogtreecommitdiffstats
path: root/epan/conversation.c
diff options
context:
space:
mode:
authoretxrab <etxrab@f5534014-38df-0310-8fa8-9805f1628bb7>2006-08-02 19:50:04 +0000
committeretxrab <etxrab@f5534014-38df-0310-8fa8-9805f1628bb7>2006-08-02 19:50:04 +0000
commitcb26b97df5c446a706784b932112f08d577fa811 (patch)
treeb060f269053dadf744aaf9af7e920f6edbaef351 /epan/conversation.c
parent3d98350dca0de70497d14099212eb39f3b36485a (diff)
From Peter Johansson:
the supplied patch fixes a problem where the options value should really be used from the conversation found (using conversation_lookup_hashtable(...) to create a new conversation based on the already stored conversation template (the CONVERSATION_TEMPLATE bit is set in the stored conversation) rather from the options argument passed to the function(s). This solves a problem that otherwise shows itself where "DISSECTOR_ASSERT(!(conv->options & CONVERSATION_TEMPLATE) && "Use the conversation_create_from_template function when the CONVERSATION_TEMPLATE bit is set in the options mask");" fails sometimes. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@18825 f5534014-38df-0310-8fa8-9805f1628bb7
Diffstat (limited to 'epan/conversation.c')
-rw-r--r--epan/conversation.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/epan/conversation.c b/epan/conversation.c
index 777a4e5268..c7a44e9bf7 100644
--- a/epan/conversation.c
+++ b/epan/conversation.c
@@ -790,9 +790,9 @@ find_conversation(guint32 frame_num, address *addr_a, address *addr_b, port_type
* don't get packets in a given direction coming from more than one
* address, unless the CONVERSATION_TEMPLATE option is set.)
*/
- if (!(options & NO_ADDR_B) && ptype != PT_UDP)
+ if (!(conversation->options & NO_ADDR_B) && ptype != PT_UDP)
{
- if(!(options & CONVERSATION_TEMPLATE))
+ if(!(conversation->options & CONVERSATION_TEMPLATE))
{
conversation_set_addr2(conversation, addr_b);
}
@@ -829,7 +829,7 @@ find_conversation(guint32 frame_num, address *addr_a, address *addr_b, port_type
* conversation.
*/
if (ptype != PT_UDP) {
- if(!(options & CONVERSATION_TEMPLATE))
+ if(!(conversation->options & CONVERSATION_TEMPLATE))
{
conversation_set_addr2(conversation, addr_a);
}
@@ -881,9 +881,9 @@ find_conversation(guint32 frame_num, address *addr_a, address *addr_b, port_type
* get packets in a given direction coming from more than one port,
* unless the CONVERSATION_TEMPLATE option is set.)
*/
- if (!(options & NO_PORT_B) && ptype != PT_UDP)
+ if (!(conversation->options & NO_PORT_B) && ptype != PT_UDP)
{
- if(!(options & CONVERSATION_TEMPLATE))
+ if(!(conversation->options & CONVERSATION_TEMPLATE))
{
conversation_set_port2(conversation, port_b);
}
@@ -921,7 +921,7 @@ find_conversation(guint32 frame_num, address *addr_a, address *addr_b, port_type
*/
if (ptype != PT_UDP)
{
- if(!(options & CONVERSATION_TEMPLATE))
+ if(!(conversation->options & CONVERSATION_TEMPLATE))
{
conversation_set_port2(conversation, port_a);
}
@@ -963,11 +963,11 @@ find_conversation(guint32 frame_num, address *addr_a, address *addr_b, port_type
*/
if (ptype != PT_UDP)
{
- if(!(options & CONVERSATION_TEMPLATE))
+ if(!(conversation->options & CONVERSATION_TEMPLATE))
{
- if (!(options & NO_ADDR_B))
+ if (!(conversation->options & NO_ADDR_B))
conversation_set_addr2(conversation, addr_b);
- if (!(options & NO_PORT_B))
+ if (!(conversation->options & NO_PORT_B))
conversation_set_port2(conversation, port_b);
}
else