s3: On Solaris, iov_len is an int
authorVolker Lendecke <vl@samba.org>
Sun, 5 Sep 2010 14:27:43 +0000 (16:27 +0200)
committerVolker Lendecke <vl@samba.org>
Sun, 5 Sep 2010 14:41:28 +0000 (16:41 +0200)
We can't use &iov.iov_len passing it to a size_t *

source3/smbd/process.c

index 4d34bcf8581a911e4d3701fb605276aa93b6dcdf..40009c8a3c738dc48d61f5b09e5307d5a7bf0035 100644 (file)
@@ -2688,6 +2688,7 @@ static void smbd_echo_reader(struct tevent_context *ev,
        size_t unread, num_pending;
        NTSTATUS status;
        struct iovec *tmp;
+       size_t iov_len;
        uint32_t seqnum = 0;
        bool reply;
        bool ok;
@@ -2730,7 +2731,7 @@ static void smbd_echo_reader(struct tevent_context *ev,
                                    0 /* timeout */,
                                    &unread,
                                    &encrypted,
-                                   &state->pending[num_pending].iov_len,
+                                   &iov_len,
                                    &seqnum,
                                    false /* trusted_channel*/);
        if (!NT_STATUS_IS_OK(status)) {
@@ -2738,6 +2739,7 @@ static void smbd_echo_reader(struct tevent_context *ev,
                          (int)sys_getpid(), nt_errstr(status)));
                exit(1);
        }
+       state->pending[num_pending].iov_len = iov_len;
 
        ok = smbd_unlock_socket_internal(sconn);
        if (!ok) {