]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
libsmb: Simplify cli_smb2_mxac
authorVolker Lendecke <vl@samba.org>
Mon, 4 Mar 2019 20:21:57 +0000 (21:21 +0100)
committerJeremy Allison <jra@samba.org>
Fri, 8 Mar 2019 18:20:10 +0000 (18:20 +0000)
smb2_create_blob_find() can search for a create blob for us

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
source3/libsmb/cli_smb2_fnum.c

index 349d99b8eee92b34563b3f07942d251f79cdb164..3a2cb59581229fa11aca0a1196d891143f559f17 100644 (file)
@@ -2852,9 +2852,8 @@ static void cli_smb2_mxac_opened(struct tevent_req *subreq)
        struct cli_smb2_mxac_state *state = tevent_req_data(
                req, struct cli_smb2_mxac_state);
        struct smb2_create_blobs out_cblobs = {0};
-       DATA_BLOB *mxac_blob = NULL;
+       struct smb2_create_blob *mxac_blob = NULL;
        NTSTATUS status;
-       int i;
 
        status = cli_smb2_create_fnum_recv(
                subreq, &state->fnum, NULL, state, &out_cblobs);
@@ -2864,24 +2863,18 @@ static void cli_smb2_mxac_opened(struct tevent_req *subreq)
                return;
        }
 
-       for (i = 0; i < out_cblobs.num_blobs; i++) {
-               if (strcmp(out_cblobs.blobs[i].tag, SMB2_CREATE_TAG_MXAC) != 0) {
-                       continue;
-               }
-               mxac_blob = &out_cblobs.blobs[i].data;
-               break;
-       }
+       mxac_blob = smb2_create_blob_find(&out_cblobs, SMB2_CREATE_TAG_MXAC);
        if (mxac_blob == NULL) {
                state->status = NT_STATUS_INVALID_NETWORK_RESPONSE;
                goto close;
        }
-       if (mxac_blob->length != 8) {
+       if (mxac_blob->data.length != 8) {
                state->status = NT_STATUS_INVALID_NETWORK_RESPONSE;
                goto close;
        }
 
-       state->status = NT_STATUS(IVAL(mxac_blob->data, 0));
-       state->mxac = IVAL(mxac_blob->data, 4);
+       state->status = NT_STATUS(IVAL(mxac_blob->data.data, 0));
+       state->mxac = IVAL(mxac_blob->data.data, 4);
 
 close:
        subreq = cli_smb2_close_fnum_send(