lib: Move get_socket_port() to its only consumer
authorVolker Lendecke <vl@samba.org>
Fri, 17 Jul 2020 20:29:10 +0000 (22:29 +0200)
committerJeremy Allison <jra@samba.org>
Mon, 17 Aug 2020 19:35:37 +0000 (19:35 +0000)
This is only used in netbios_session_retarget()

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
lib/util/util_net.c
lib/util/util_net.h
source3/include/proto.h
source3/smbd/reply.c

index 8f47eb88ab548eaf732fabe3fec78cc50c11a84e..daaf9808b8f70fda9e0e9badbb4ec770b74bd426 100644 (file)
@@ -894,39 +894,6 @@ char *print_canonical_sockaddr(TALLOC_CTX *ctx,
        return dest;
 }
 
-/****************************************************************************
- Return the port number we've bound to on a socket.
-****************************************************************************/
-
-int get_socket_port(int fd)
-{
-       struct sockaddr_storage sa;
-       socklen_t length = sizeof(sa);
-
-       if (fd == -1) {
-               return -1;
-       }
-
-       if (getsockname(fd, (struct sockaddr *)&sa, &length) < 0) {
-               int level = (errno == ENOTCONN) ? 2 : 0;
-               DEBUG(level, ("getsockname failed. Error was %s\n",
-                              strerror(errno)));
-               return -1;
-       }
-
-#if defined(HAVE_IPV6)
-       if (sa.ss_family == AF_INET6) {
-               struct sockaddr_in6 *sa_in6 = (struct sockaddr_in6 *)&sa;
-               return ntohs(sa_in6->sin6_port);
-       }
-#endif
-       if (sa.ss_family == AF_INET) {
-               struct sockaddr_in *sa_in = (struct sockaddr_in *)&sa;
-               return ntohs(sa_in->sin_port);
-       }
-       return -1;
-}
-
 enum SOCK_OPT_TYPES {OPT_BOOL,OPT_INT,OPT_ON};
 
 typedef struct smb_socket_option {
index 6e991b8f904199576a4cae014720d8ac282b99e4..80a7e08b7e8015e60ce0571cd51fe294c0d3c2f2 100644 (file)
@@ -120,7 +120,6 @@ char *print_sockaddr(char *dest,
                        const struct sockaddr_storage *psa);
 char *print_canonical_sockaddr(TALLOC_CTX *ctx,
                        const struct sockaddr_storage *pss);
-int get_socket_port(int fd);
 
 void set_socket_options(int fd, const char *options);
 
index ff58bc7e52ec5c113e9dfea1efb099e30316dd2d..506e2e80fa117ec6b8395fecbe71610d1738d79f 100644 (file)
@@ -519,7 +519,6 @@ char *print_sockaddr(char *dest,
                        const struct sockaddr_storage *psa);
 char *print_canonical_sockaddr(TALLOC_CTX *ctx,
                        const struct sockaddr_storage *pss);
-int get_socket_port(int fd);
 bool is_a_socket(int fd);
 void set_socket_options(int fd, const char *options);
 NTSTATUS read_fd_with_timeout(int fd, char *buf,
index 252b9556c3fa052963739ffaa483a9890cf62049..63d62a88a4633039afd6c2802d4fb452c6d3e6de 100644 (file)
@@ -543,6 +543,39 @@ bool check_fsp_ntquota_handle(connection_struct *conn, struct smb_request *req,
        return true;
 }
 
+/****************************************************************************
+ Return the port number we've bound to on a socket.
+****************************************************************************/
+
+static int get_socket_port(int fd)
+{
+       struct sockaddr_storage sa;
+       socklen_t length = sizeof(sa);
+
+       if (fd == -1) {
+               return -1;
+       }
+
+       if (getsockname(fd, (struct sockaddr *)&sa, &length) < 0) {
+               int level = (errno == ENOTCONN) ? 2 : 0;
+               DEBUG(level, ("getsockname failed. Error was %s\n",
+                              strerror(errno)));
+               return -1;
+       }
+
+#if defined(HAVE_IPV6)
+       if (sa.ss_family == AF_INET6) {
+               struct sockaddr_in6 *sa_in6 = (struct sockaddr_in6 *)&sa;
+               return ntohs(sa_in6->sin6_port);
+       }
+#endif
+       if (sa.ss_family == AF_INET) {
+               struct sockaddr_in *sa_in = (struct sockaddr_in *)&sa;
+               return ntohs(sa_in->sin_port);
+       }
+       return -1;
+}
+
 static bool netbios_session_retarget(struct smbXsrv_connection *xconn,
                                     const char *name, int name_type)
 {