socket-util: Unix socket related calls for non-windows platform.
authorGurucharan Shetty <gshetty@nicira.com>
Tue, 18 Feb 2014 22:39:47 +0000 (14:39 -0800)
committerGurucharan Shetty <gshetty@nicira.com>
Fri, 21 Feb 2014 22:44:31 +0000 (14:44 -0800)
Don't try to compile Unix socket related functions for Windows.

Signed-off-by: Gurucharan Shetty <gshetty@nicira.com>
lib/automake.mk
lib/socket-util.c
lib/socket-util.h
lib/stream.c

index 4ecd61d..6c5ad8d 100644 (file)
@@ -193,7 +193,6 @@ lib_libopenvswitch_la_SOURCES = \
        lib/stream-provider.h \
        lib/stream-ssl.h \
        lib/stream-tcp.c \
-       lib/stream-unix.c \
        lib/stream.c \
        lib/stream.h \
        lib/stdio.c \
@@ -244,7 +243,8 @@ lib_libopenvswitch_la_SOURCES += \
 else
 lib_libopenvswitch_la_SOURCES += \
        lib/daemon.c \
-       lib/latch.c
+       lib/latch.c \
+       lib/stream-unix.c
 endif
 
 EXTRA_DIST += \
index 20caddd..a428534 100644 (file)
@@ -354,6 +354,7 @@ drain_fd(int fd, size_t n_packets)
     }
 }
 
+#ifndef _WIN32
 /* Attempts to shorten 'name' by opening a file descriptor for the directory
  * part of the name and indirecting through /proc/self/fd/<dirfd>/<basename>.
  * On systems with Linux-like /proc, this works as long as <basename> isn't too
@@ -614,6 +615,7 @@ get_unix_name_len(socklen_t sun_len)
             ? sun_len - offsetof(struct sockaddr_un, sun_path)
             : 0);
 }
+#endif /* _WIN32 */
 
 ovs_be32
 guess_netmask(ovs_be32 ip_)
@@ -1141,6 +1143,7 @@ describe_sockaddr(struct ds *string, int fd,
             ds_put_format(string, "%s:%"PRIu16,
                           ss_format_address(&ss, addrbuf, sizeof addrbuf),
                           ss_get_port(&ss));
+#ifndef _WIN32
         } else if (ss.ss_family == AF_UNIX) {
             struct sockaddr_un sun;
             const char *null;
@@ -1151,6 +1154,7 @@ describe_sockaddr(struct ds *string, int fd,
             null = memchr(sun.sun_path, '\0', maxlen);
             ds_put_buffer(string, sun.sun_path,
                           null ? null - sun.sun_path : maxlen);
+#endif
         }
 #ifdef HAVE_NETLINK
         else if (ss.ss_family == AF_NETLINK) {
index 1695985..c303ad0 100644 (file)
@@ -42,9 +42,11 @@ int get_socket_rcvbuf(int sock);
 int check_connection_completion(int fd);
 int drain_rcvbuf(int fd);
 void drain_fd(int fd, size_t n_packets);
+#ifndef _WIN32
 int make_unix_socket(int style, bool nonblock,
                      const char *bind_path, const char *connect_path);
 int get_unix_name_len(socklen_t sun_len);
+#endif
 ovs_be32 guess_netmask(ovs_be32 ip);
 int get_null_fd(void);
 
index b69f03c..2e7accb 100644 (file)
@@ -51,7 +51,9 @@ enum stream_state {
 
 static const struct stream_class *stream_classes[] = {
     &tcp_stream_class,
+#ifdef AF_UNIX
     &unix_stream_class,
+#endif
 #ifdef HAVE_OPENSSL
     &ssl_stream_class,
 #endif
@@ -59,7 +61,9 @@ static const struct stream_class *stream_classes[] = {
 
 static const struct pstream_class *pstream_classes[] = {
     &ptcp_pstream_class,
+#ifdef AF_UNIX
     &punix_pstream_class,
+#endif
 #ifdef HAVE_OPENSSL
     &pssl_pstream_class,
 #endif