s4:librpc/rpc: don't ask for auth_length if we ask for auth data only
authorStefan Metzmacher <metze@samba.org>
Mon, 20 Jun 2016 14:16:23 +0000 (16:16 +0200)
committerKarolin Seeger <kseeger@samba.org>
Thu, 4 Aug 2016 08:59:19 +0000 (10:59 +0200)
dcerpc_pull_auth_trailer() handles auth_length=NULL just fine.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=11982

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Ralph Boehme <slow@samba.org>
(cherry picked from commit e05c732c6074df2524403ad7bb30eade91443525)

source4/librpc/rpc/dcerpc.c

index 4225e1d1157df83df98f531bc80a65bb08f9621f..de3f425870e005b20a1f6d8dca932bf55fafe790 100644 (file)
@@ -1413,12 +1413,10 @@ static void dcerpc_bind_recv_handler(struct rpc_request *subreq,
 
        /* the bind_ack might contain a reply set of credentials */
        if (pkt->auth_length != 0 && sec->tmp_auth_info.in != NULL) {
-               uint32_t auth_length;
-
                status = dcerpc_pull_auth_trailer(pkt, sec->tmp_auth_info.mem,
                                                  &pkt->u.bind_ack.auth_info,
                                                  sec->tmp_auth_info.in,
-                                                 &auth_length, true);
+                                                 NULL, true);
                if (tevent_req_nterror(req, status)) {
                        return;
                }
@@ -2433,12 +2431,10 @@ static void dcerpc_alter_context_recv_handler(struct rpc_request *subreq,
 
        /* the alter_resp might contain a reply set of credentials */
        if (pkt->auth_length != 0 && sec->tmp_auth_info.in != NULL) {
-               uint32_t auth_length;
-
                status = dcerpc_pull_auth_trailer(pkt, sec->tmp_auth_info.mem,
                                                  &pkt->u.alter_resp.auth_info,
                                                  sec->tmp_auth_info.in,
-                                                 &auth_length, true);
+                                                 NULL, true);
                if (tevent_req_nterror(req, status)) {
                        return;
                }