socket_wrapper: readv() should only work on connected sockets
authorStefan Metzmacher <metze@samba.org>
Sat, 30 Oct 2010 14:28:23 +0000 (16:28 +0200)
committerStefan Metzmacher <metze@samba.org>
Thu, 3 Mar 2011 21:57:26 +0000 (22:57 +0100)
metze

lib/socket_wrapper/socket_wrapper.c

index d1508adbca97344dd9259ba43296dabc6202553c..26988f0b1fc0afee61af5ca9d89e6c7191daff68 100644 (file)
@@ -2244,6 +2244,11 @@ int swrap_readv(int s, const struct iovec *vector, size_t count)
                return real_readv(s, vector, count);
        }
 
+       if (!si->connected) {
+               errno = ENOTCONN;
+               return -1;
+       }
+
        if (si->type == SOCK_STREAM && count > 0) {
                /* cut down to 1500 byte packets for stream sockets,
                 * which makes it easier to format PCAP capture files