git: 042fb58d009e - main - sys/netinet6/in6_pcb.c: fix compile without INET
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 12 Apr 2024 16:58:15 UTC
The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=042fb58d009e7efc5b334b68fffbef9b1f620ec8 commit 042fb58d009e7efc5b334b68fffbef9b1f620ec8 Author: Lexi Winter <lexi@le-Fay.ORG> AuthorDate: 2024-04-12 16:54:24 +0000 Commit: Warner Losh <imp@FreeBSD.org> CommitDate: 2024-04-12 16:54:27 +0000 sys/netinet6/in6_pcb.c: fix compile without INET in6_mapped_sockaddr() and in6_mapped_peeraddr() both define a local variable named 'inp', but in the non-INET case, this variable is set and never used, causing a compiler error: /src/freebsd/src/lf/sys/netinet6/in6_pcb.c:547:16: error: variable 'inp' set but not used [-Werror,-Wunused-but-set-variable] 547 | struct inpcb *inp; | ^ /src/freebsd/src/lf/sys/netinet6/in6_pcb.c:573:16: error: variable 'inp' set but not used [-Werror,-Wunused-but-set-variable] 573 | struct inpcb *inp; Fix this by guarding all the INET-specific logic, including the variable definition, behind #ifdef INET. While here, tweak formatting in in6_mapped_peeraddr() so both functions are the same. Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1155 --- sys/netinet6/in6_pcb.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/sys/netinet6/in6_pcb.c b/sys/netinet6/in6_pcb.c index d18a7283ba05..e6ec0f24c898 100644 --- a/sys/netinet6/in6_pcb.c +++ b/sys/netinet6/in6_pcb.c @@ -544,13 +544,13 @@ in6_getpeeraddr(struct socket *so, struct sockaddr *sa) int in6_mapped_sockaddr(struct socket *so, struct sockaddr *sa) { - struct inpcb *inp; int error; +#ifdef INET + struct inpcb *inp; inp = sotoinpcb(so); KASSERT(inp != NULL, ("in6_mapped_sockaddr: inp == NULL")); -#ifdef INET if ((inp->inp_vflag & (INP_IPV4 | INP_IPV6)) == INP_IPV4) { struct sockaddr_in sin; @@ -570,13 +570,13 @@ in6_mapped_sockaddr(struct socket *so, struct sockaddr *sa) int in6_mapped_peeraddr(struct socket *so, struct sockaddr *sa) { - struct inpcb *inp; int error; +#ifdef INET + struct inpcb *inp; inp = sotoinpcb(so); KASSERT(inp != NULL, ("in6_mapped_peeraddr: inp == NULL")); -#ifdef INET if ((inp->inp_vflag & (INP_IPV4 | INP_IPV6)) == INP_IPV4) { struct sockaddr_in sin; @@ -585,8 +585,10 @@ in6_mapped_peeraddr(struct socket *so, struct sockaddr *sa) in6_sin_2_v4mapsin6(&sin, (struct sockaddr_in6 *)sa); } else #endif - /* scope issues will be handled in in6_getpeeraddr(). */ - error = in6_getpeeraddr(so, sa); + { + /* scope issues will be handled in in6_getpeeraddr(). */ + error = in6_getpeeraddr(so, sa); + } return error; }