aboutsummaryrefslogtreecommitdiffstats
path: root/packet-ldap.c
diff options
context:
space:
mode:
authorTim Potter <tpot@samba.org>2003-07-02 04:03:27 +0000
committerTim Potter <tpot@samba.org>2003-07-02 04:03:27 +0000
commit5a0b62667414a3d367371d71cfe6f90409d5c6f4 (patch)
treee3f1f56449089bf87c3a7195d2d89b260c16f149 /packet-ldap.c
parente0666c0dd82c745d77ba2b0d52a10edf256d7c20 (diff)
Dissect LDAPv3 search result references (s4.5.3 in rfc 2251).
svn path=/trunk/; revision=7959
Diffstat (limited to 'packet-ldap.c')
-rw-r--r--packet-ldap.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/packet-ldap.c b/packet-ldap.c
index 78371f3280..1e690fa5da 100644
--- a/packet-ldap.c
+++ b/packet-ldap.c
@@ -3,7 +3,7 @@
*
* See RFC 1777 (LDAP v2), RFC 2251 (LDAP v3), and RFC 2222 (SASL).
*
- * $Id: packet-ldap.c,v 1.56 2003/06/09 07:45:36 guy Exp $
+ * $Id: packet-ldap.c,v 1.57 2003/07/02 04:03:27 tpot Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@@ -96,6 +96,7 @@ static int hf_ldap_message_search_sizeLimit = -1;
static int hf_ldap_message_search_timeLimit = -1;
static int hf_ldap_message_search_typesOnly = -1;
static int hf_ldap_message_search_filter = -1;
+static int hf_ldap_message_search_reference = -1;
static int hf_ldap_message_dn = -1;
static int hf_ldap_message_attribute = -1;
@@ -1186,6 +1187,11 @@ static void dissect_ldap_response_search_entry(ASN1_SCK *a, proto_tree *tree)
}
}
+static void dissect_ldap_response_search_ref(ASN1_SCK *a, proto_tree *tree)
+{
+ read_string(a, tree, hf_ldap_message_search_reference, 0, 0, ASN1_UNI, ASN1_OTS);
+}
+
static void dissect_ldap_request_add(ASN1_SCK *a, proto_tree *tree)
{
guint seq_length;
@@ -1562,6 +1568,10 @@ dissect_ldap_message(tvbuff_t *tvb, int offset, packet_info *pinfo,
if (ldap_tree)
dissect_ldap_response_search_entry(&a, ldap_tree);
break;
+ case LDAP_RES_SEARCH_REF:
+ if (ldap_tree)
+ dissect_ldap_response_search_ref(&a, ldap_tree);
+ break;
case LDAP_RES_SEARCH_RESULT:
case LDAP_RES_MODIFY:
case LDAP_RES_ADD:
@@ -2122,6 +2132,10 @@ proto_register_ldap(void)
{ "Filter", "ldap.search.filter",
FT_STRING, BASE_NONE, NULL, 0x0,
"LDAP Search Filter", HFILL }},
+ { &hf_ldap_message_search_reference,
+ { "Reference URL", "ldap.search.reference",
+ FT_STRING, BASE_NONE, NULL, 0x0,
+ "LDAP Search Reference URL", HFILL }},
{ &hf_ldap_message_dn,
{ "Distinguished Name", "ldap.dn",
FT_STRING, BASE_NONE, NULL, 0x0,