diff options
author | Greg Hudson <ghudson@mit.edu> | 2014-07-03 12:17:25 -0400 |
---|---|---|
committer | Greg Hudson <ghudson@mit.edu> | 2014-07-04 15:14:02 -0400 |
commit | 1fde9a67030845d3cae0661595f5737a4db8b9dd (patch) | |
tree | 40a98f75bff979d5c681d21ec45a0ce18a1d3d80 /src/lib | |
parent | dc04419132e73ec5e38f6680055f1e2e627d42d7 (diff) | |
download | krb5-1fde9a67030845d3cae0661595f5737a4db8b9dd.tar.gz krb5-1fde9a67030845d3cae0661595f5737a4db8b9dd.tar.xz krb5-1fde9a67030845d3cae0661595f5737a4db8b9dd.zip |
Don't depend on sa_len sockaddr field
In socket-utils.h, replace the socklen macro with an inline function
sa_socklen which always uses the address family, even on platforms
with the sa_len sockaddr field. This removes the need to set sa_len
in socket addresses we construct.
Diffstat (limited to 'src/lib')
-rw-r--r-- | src/lib/apputils/net-server.c | 4 | ||||
-rw-r--r-- | src/lib/krb5/os/localaddr.c | 6 | ||||
-rw-r--r-- | src/lib/rpc/bindresvport.c | 2 | ||||
-rw-r--r-- | src/lib/rpc/svc_tcp.c | 2 | ||||
-rw-r--r-- | src/lib/rpc/svc_udp.c | 2 |
5 files changed, 8 insertions, 8 deletions
diff --git a/src/lib/apputils/net-server.c b/src/lib/apputils/net-server.c index 2dd435b76..558eee34c 100644 --- a/src/lib/apputils/net-server.c +++ b/src/lib/apputils/net-server.c @@ -139,7 +139,7 @@ paddr(struct sockaddr *sa) { static char buf[100]; char portbuf[10]; - if (getnameinfo(sa, socklen(sa), + if (getnameinfo(sa, sa_socklen(sa), buf, sizeof(buf), portbuf, sizeof(portbuf), NI_NUMERICHOST|NI_NUMERICSERV)) strlcpy(buf, "<unprintable>", sizeof(buf)); @@ -592,7 +592,7 @@ create_server_socket(struct socksetup *data, struct sockaddr *addr, int type) #endif /* IPV6_V6ONLY */ } - if (bind(sock, addr, socklen(addr)) == -1) { + if (bind(sock, addr, sa_socklen(addr)) == -1) { data->retval = errno; com_err(data->prog, errno, _("Cannot bind server socket on %s"), paddr(addr)); diff --git a/src/lib/krb5/os/localaddr.c b/src/lib/krb5/os/localaddr.c index f7eb2d240..0e6a05c66 100644 --- a/src/lib/krb5/os/localaddr.c +++ b/src/lib/krb5/os/localaddr.c @@ -165,7 +165,7 @@ printaddr(struct sockaddr *sa) int err; printf ("%p ", (void *) sa); - err = getnameinfo (sa, socklen (sa), buf, sizeof (buf), 0, 0, + err = getnameinfo (sa, sa_socklen (sa), buf, sizeof (buf), 0, 0, NI_NUMERICHOST); if (err) printf ("<getnameinfo error %d: %s> family=%d", @@ -1085,7 +1085,7 @@ static int print_addr (/*@unused@*/ void *dataptr, struct sockaddr *sa) socklen_t len; printf (" --> family %2d ", sa->sa_family); - len = socklen (sa); + len = sa_socklen (sa); err = getnameinfo (sa, len, hostbuf, (socklen_t) sizeof (hostbuf), (char *) NULL, 0, NI_NUMERICHOST); if (err) { @@ -1423,7 +1423,7 @@ get_localaddrs (krb5_context context, krb5_address ***addr, int use_profile) } if (addrp) memcpy (addrp, addr[0][j]->contents, addr[0][j]->length); - err2 = getnameinfo (ss2sa(&ss), socklen (ss2sa (&ss)), + err2 = getnameinfo (ss2sa(&ss), sa_socklen (ss2sa (&ss)), namebuf, sizeof (namebuf), 0, 0, NI_NUMERICHOST); if (err2 == 0) diff --git a/src/lib/rpc/bindresvport.c b/src/lib/rpc/bindresvport.c index fa28b6071..ba11e0a8b 100644 --- a/src/lib/rpc/bindresvport.c +++ b/src/lib/rpc/bindresvport.c @@ -81,7 +81,7 @@ bindresvport_sa(int sd, struct sockaddr *sa) if (port > ENDPORT) { port = STARTPORT; } - res = bind(sd, sa, socklen(sa)); + res = bind(sd, sa, sa_socklen(sa)); } return (res); } diff --git a/src/lib/rpc/svc_tcp.c b/src/lib/rpc/svc_tcp.c index 7b69c33da..3d0216481 100644 --- a/src/lib/rpc/svc_tcp.c +++ b/src/lib/rpc/svc_tcp.c @@ -174,7 +174,7 @@ svctcp_create( if (bindresvport_sa(sock, sa)) { sa_setport(sa, 0); - (void)bind(sock, sa, socklen(sa)); + (void)bind(sock, sa, sa_socklen(sa)); } len = sizeof(struct sockaddr_storage); if (getsockname(sock, sa, &len) != 0) { diff --git a/src/lib/rpc/svc_udp.c b/src/lib/rpc/svc_udp.c index e9f1c3d00..603f56a0b 100644 --- a/src/lib/rpc/svc_udp.c +++ b/src/lib/rpc/svc_udp.c @@ -145,7 +145,7 @@ svcudp_bufcreate( if (bindresvport_sa(sock, sa)) { sa_setport(sa, 0); - (void)bind(sock, sa, socklen(sa)); + (void)bind(sock, sa, sa_socklen(sa)); } len = sizeof(struct sockaddr_storage); if (getsockname(sock, sa, &len) != 0) { |