diff options
author | Michael Mann <mmann78@netscape.net> | 2015-11-26 09:09:23 -0500 |
---|---|---|
committer | Anders Broman <a.broman58@gmail.com> | 2015-11-27 05:24:20 +0000 |
commit | 5eb60c0582f3ada89a636eb494f3e6d8fc04babd (patch) | |
tree | c246f2b57bf0da026ffffba88225e8fbfeb6f471 | |
parent | 5687e94ac3048d72a8838aa3b39ca2141fbe95c1 (diff) | |
download | wireshark-5eb60c0582f3ada89a636eb494f3e6d8fc04babd.tar.gz |
[LDAP] Bugfix counting of search results.
Bug: 11761
Change-Id: Icd955b848edc9f802331f25ab1b8684aa2631553
Reviewed-on: https://code.wireshark.org/review/12184
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
(cherry picked from commit c51f207308d04bda005f84828b59cec4104e4b8f)
Reviewed-on: https://code.wireshark.org/review/12216
-rw-r--r-- | asn1/ldap/ldap.cnf | 6 | ||||
-rw-r--r-- | epan/dissectors/packet-ldap.c | 6 |
2 files changed, 6 insertions, 6 deletions
diff --git a/asn1/ldap/ldap.cnf b/asn1/ldap/ldap.cnf index 1aadfefb6b..a7af368dd0 100644 --- a/asn1/ldap/ldap.cnf +++ b/asn1/ldap/ldap.cnf @@ -116,11 +116,12 @@ PasswordPolicyResponseValue B "1.3.6.1.4.1.42.2.27.8.5.1" "passwordPolicy" /* XXX: the count will not work if the results span multiple TCP packets */ - if(ldap_info && tree) { /* only count once - on tree pass */ + if(ldap_info) { /* only count once */ switch(ProtocolOp) { case LDAP_RES_SEARCH_ENTRY: - ldap_info->num_results++; + if (!actx->pinfo->fd->flags.visited) + ldap_info->num_results++; proto_item_append_text(tree, " [%d result%s]", ldap_info->num_results, ldap_info->num_results == 1 ? "" : "s"); @@ -135,7 +136,6 @@ PasswordPolicyResponseValue B "1.3.6.1.4.1.42.2.27.8.5.1" "passwordPolicy" proto_item_append_text(tree, " [%d result%s]", ldap_info->num_results, ldap_info->num_results == 1 ? "" : "s"); - ldap_info->num_results = 0; break; default: break; diff --git a/epan/dissectors/packet-ldap.c b/epan/dissectors/packet-ldap.c index 8b247f8743..80fc222f1c 100644 --- a/epan/dissectors/packet-ldap.c +++ b/epan/dissectors/packet-ldap.c @@ -3218,11 +3218,12 @@ dissect_ldap_ProtocolOp(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset /* XXX: the count will not work if the results span multiple TCP packets */ - if(ldap_info && tree) { /* only count once - on tree pass */ + if(ldap_info) { /* only count once */ switch(ProtocolOp) { case LDAP_RES_SEARCH_ENTRY: - ldap_info->num_results++; + if (!actx->pinfo->fd->flags.visited) + ldap_info->num_results++; proto_item_append_text(tree, " [%d result%s]", ldap_info->num_results, ldap_info->num_results == 1 ? "" : "s"); @@ -3237,7 +3238,6 @@ dissect_ldap_ProtocolOp(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset proto_item_append_text(tree, " [%d result%s]", ldap_info->num_results, ldap_info->num_results == 1 ? "" : "s"); - ldap_info->num_results = 0; break; default: break; |