libcli: Use iov_buflen in smbXcli_iov_len
authorVolker Lendecke <vl@samba.org>
Tue, 17 Feb 2015 20:16:45 +0000 (20:16 +0000)
committerJeremy Allison <jra@samba.org>
Tue, 24 Feb 2015 16:52:09 +0000 (17:52 +0100)
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
libcli/smb/smbXcli_base.c
libcli/smb/wscript

index 8aa60201901d2446091ce6212fd3c289a1a11660..f8d4df3c14ffee2f217060043ed4c55e095d29a9 100644 (file)
@@ -25,6 +25,7 @@
 #include "../lib/util/tevent_unix.h"
 #include "lib/util/util_net.h"
 #include "lib/util/dlinklist.h"
+#include "lib/util/iov_buf.h"
 #include "../libcli/smb/smb_common.h"
 #include "../libcli/smb/smb_seal.h"
 #include "../libcli/smb/smb_signing.h"
@@ -1115,12 +1116,10 @@ void smb1cli_req_set_seqnum(struct tevent_req *req, uint32_t seqnum)
 
 static size_t smbXcli_iov_len(const struct iovec *iov, int count)
 {
-       size_t result = 0;
-       int i;
-       for (i=0; i<count; i++) {
-               result += iov[i].iov_len;
-       }
-       return result;
+       ssize_t ret = iov_buflen(iov, count);
+
+       /* Ignore the overflow case for now ... */
+       return ret;
 }
 
 static uint8_t *smbXcli_iov_concat(TALLOC_CTX *mem_ctx,
index 48fa2b4e261e22749bd0c22b310f198faf7051a9..dad982157093237b0868d99b0598b5620e03b456 100755 (executable)
@@ -46,7 +46,7 @@ def build(bld):
                 LIBCRYPTO NDR_SMB2_LEASE_STRUCT errors gensec krb5samba
                 smb_transport
         ''',
-       public_deps='talloc samba-util',
+       public_deps='talloc samba-util iov_buf',
        private_library=True,
        public_headers='''
                smb_common.h smb2_constants.h smb_constants.h