s4-libcli: Check return value of smbcli_request_setup().
authorAndreas Schneider <asn@samba.org>
Tue, 19 Feb 2013 08:00:51 +0000 (09:00 +0100)
committerAlexander Bokovoy <ab@samba.org>
Fri, 22 Feb 2013 15:36:13 +0000 (16:36 +0100)
Reviewed-by: Alexander Bokovoy <ab@samba.org>
source4/libcli/climessage.c
source4/libcli/raw/clioplock.c
source4/libcli/raw/clitree.c

index 5ed0e8e3cd23ada6de8f2338806fdadde8963420..3e9808c128cd40b4beb76cfdac536f66d0cf4858 100644 (file)
@@ -33,6 +33,9 @@ bool smbcli_message_start(struct smbcli_tree *tree, const char *host, const char
        struct smbcli_request *req; 
        
        req = smbcli_request_setup(tree, SMBsendstrt, 0, 0);
+       if (req == NULL) {
+               return false;
+       }
        smbcli_req_append_string(req, username, STR_TERMINATE);
        smbcli_req_append_string(req, host, STR_TERMINATE);
        if (!smbcli_request_send(req) || 
@@ -57,6 +60,9 @@ bool smbcli_message_text(struct smbcli_tree *tree, char *msg, int len, int grp)
        struct smbcli_request *req; 
        
        req = smbcli_request_setup(tree, SMBsendtxt, 1, 0);
+       if (req == NULL) {
+               return false;
+       }
        SSVAL(req->out.vwv, VWV(0), grp);
 
        smbcli_req_append_bytes(req, (const uint8_t *)msg, len);
@@ -80,6 +86,9 @@ bool smbcli_message_end(struct smbcli_tree *tree, int grp)
        struct smbcli_request *req; 
        
        req = smbcli_request_setup(tree, SMBsendend, 1, 0);
+       if (req == NULL) {
+               return false;
+       }
        SSVAL(req->out.vwv, VWV(0), grp);
 
        if (!smbcli_request_send(req) || 
index 396ab96445028d607fabb45cd4bbb26cd9248995..6c04843f3f7e3c1fe1f5e569880bbdeb91e10438 100644 (file)
@@ -30,6 +30,9 @@ _PUBLIC_ bool smbcli_oplock_ack(struct smbcli_tree *tree, uint16_t fnum, uint16_
        struct smbcli_request *req;
 
        req = smbcli_request_setup(tree, SMBlockingX, 8, 0);
+       if (req == NULL) {
+               return false;
+       }
 
        SSVAL(req->out.vwv,VWV(0),0xFF);
        SSVAL(req->out.vwv,VWV(1),0);
index 1c3321e6b83008f4c6f4b3c92692bfbea0ef39b4..11be5485f2611e02182fcfca39d1b8e0b2a8cd79 100644 (file)
@@ -168,6 +168,9 @@ _PUBLIC_ NTSTATUS smb_tree_disconnect(struct smbcli_tree *tree)
 
        if (!tree) return NT_STATUS_OK;
        req = smbcli_request_setup(tree, SMBtdis, 0, 0);
+       if (req == NULL) {
+               return NT_STATUS_NO_MEMORY;
+       }
 
        if (smbcli_request_send(req)) {
                (void) smbcli_request_receive(req);