mirror of
https://github.com/samba-team/samba.git
synced 2025-03-09 08:58:35 +03:00
lib: Move get_socket_port() to its only consumer
This is only used in netbios_session_retarget() Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
This commit is contained in:
parent
f3c43c6595
commit
753b6cc572
@ -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 {
|
||||
|
@ -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);
|
||||
|
||||
|
@ -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,
|
||||
|
@ -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)
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user