From 7ff04d92445beaaea4123cbc3083d950278b1d55 Mon Sep 17 00:00:00 2001 From: Gurucharan Shetty Date: Tue, 18 Feb 2014 14:39:47 -0800 Subject: [PATCH] socket-util: Unix socket related calls for non-windows platform. Don't try to compile Unix socket related functions for Windows. Signed-off-by: Gurucharan Shetty --- lib/automake.mk | 4 ++-- lib/socket-util.c | 4 ++++ lib/socket-util.h | 2 ++ lib/stream.c | 4 ++++ 4 files changed, 12 insertions(+), 2 deletions(-) diff --git a/lib/automake.mk b/lib/automake.mk index 4ecd61df0..6c5ad8dfa 100644 --- a/lib/automake.mk +++ b/lib/automake.mk @@ -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 += \ diff --git a/lib/socket-util.c b/lib/socket-util.c index 20caddd9a..a428534e2 100644 --- a/lib/socket-util.c +++ b/lib/socket-util.c @@ -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//. * On systems with Linux-like /proc, this works as long as 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) { diff --git a/lib/socket-util.h b/lib/socket-util.h index 1695985bd..c303ad031 100644 --- a/lib/socket-util.h +++ b/lib/socket-util.h @@ -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); diff --git a/lib/stream.c b/lib/stream.c index b69f03cba..2e7accb80 100644 --- a/lib/stream.c +++ b/lib/stream.c @@ -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 -- 2.43.0