summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVolker Lendecke <vl@samba.org>2016-01-04 10:30:35 +0100
committerJeremy Allison <jra@samba.org>2016-01-06 00:54:18 +0100
commit3c340d81d8bf2e7b8488b150452bbcc4e3b521b6 (patch)
treed75ce458cc09e8f8510988dfa006e5644845a257
parentb7f0e29fd2c30024d5a7da7aa6a1f0084612f9d2 (diff)
downloadsamba-3c340d81d8bf2e7b8488b150452bbcc4e3b521b6.tar.gz
libcli: Remove a reference to asn1->ofs
Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
-rw-r--r--libcli/cldap/cldap.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/libcli/cldap/cldap.c b/libcli/cldap/cldap.c
index 964cb0a18cd..dd9d40b0c36 100644
--- a/libcli/cldap/cldap.c
+++ b/libcli/cldap/cldap.c
@@ -220,7 +220,6 @@ nomem:
static bool cldap_socket_recv_dgram(struct cldap_socket *c,
struct cldap_incoming *in)
{
- DATA_BLOB blob;
struct asn1_data *asn1;
void *p;
struct cldap_search_state *search;
@@ -230,16 +229,12 @@ static bool cldap_socket_recv_dgram(struct cldap_socket *c,
goto error;
}
- blob = data_blob_const(in->buf, in->len);
-
asn1 = asn1_init(in);
if (!asn1) {
goto nomem;
}
- if (!asn1_load(asn1, blob)) {
- goto nomem;
- }
+ asn1_load_nocopy(asn1, in->buf, in->len);
in->ldap_msg = talloc(in, struct ldap_message);
if (in->ldap_msg == NULL) {
@@ -267,8 +262,11 @@ static bool cldap_socket_recv_dgram(struct cldap_socket *c,
search = talloc_get_type_abort(p, struct cldap_search_state);
search->response.in = talloc_move(search, &in);
+
search->response.asn1 = asn1;
- search->response.asn1->ofs = 0;
+
+ asn1_load_nocopy(search->response.asn1,
+ search->response.in->buf, search->response.in->len);
DLIST_REMOVE(c->searches.list, search);