summaryrefslogtreecommitdiffstats
path: root/sys/netinet6
diff options
context:
space:
mode:
authortuexen <tuexen@FreeBSD.org>2011-12-27 10:16:24 +0000
committertuexen <tuexen@FreeBSD.org>2011-12-27 10:16:24 +0000
commitb9ef107414848cd42bfb431cc80e5187bdfb53fa (patch)
treece50f6b6186eabeaf9efcd3c9f23634ecb1ea357 /sys/netinet6
parentb0b064ff30f64fde4b2fc99c2dc6c840ecb6a95c (diff)
downloadFreeBSD-src-b9ef107414848cd42bfb431cc80e5187bdfb53fa.zip
FreeBSD-src-b9ef107414848cd42bfb431cc80e5187bdfb53fa.tar.gz
Address issues found by clang. While there, fix also some style
issues. MFC after: 3 months.
Diffstat (limited to 'sys/netinet6')
-rw-r--r--sys/netinet6/sctp6_usrreq.c86
1 files changed, 39 insertions, 47 deletions
diff --git a/sys/netinet6/sctp6_usrreq.c b/sys/netinet6/sctp6_usrreq.c
index 7176ed7..23d3dea 100644
--- a/sys/netinet6/sctp6_usrreq.c
+++ b/sys/netinet6/sctp6_usrreq.c
@@ -110,7 +110,7 @@ sctp6_input(struct mbuf **i_pak, int *offp, int proto)
(int)(sizeof(*sh) + sizeof(*ch)));
if (sh == NULL) {
SCTP_STAT_INCR(sctps_hdrops);
- return IPPROTO_DONE;
+ return (IPPROTO_DONE);
}
ch = (struct sctp_chunkhdr *)((caddr_t)sh + sizeof(struct sctphdr));
iphlen = off;
@@ -276,7 +276,7 @@ sctp_skip_csum:
SCTP_INP_DECR_REF(in6p);
SCTP_INP_WUNLOCK(in6p);
}
- return IPPROTO_DONE;
+ return (IPPROTO_DONE);
bad:
if (stcb) {
@@ -290,7 +290,7 @@ bad:
}
if (m)
sctp_m_freem(m);
- return IPPROTO_DONE;
+ return (IPPROTO_DONE);
}
@@ -673,16 +673,16 @@ sctp6_attach(struct socket *so, int proto SCTP_UNUSED, struct thread *p SCTP_UNU
inp = (struct sctp_inpcb *)so->so_pcb;
if (inp != NULL) {
SCTP_LTRACE_ERR_RET(inp, NULL, NULL, SCTP_FROM_SCTP6_USRREQ, EINVAL);
- return EINVAL;
+ return (EINVAL);
}
if (so->so_snd.sb_hiwat == 0 || so->so_rcv.sb_hiwat == 0) {
error = SCTP_SORESERVE(so, SCTP_BASE_SYSCTL(sctp_sendspace), SCTP_BASE_SYSCTL(sctp_recvspace));
if (error)
- return error;
+ return (error);
}
error = sctp_inpcb_alloc(so, vrf_id);
if (error)
- return error;
+ return (error);
inp = (struct sctp_inpcb *)so->so_pcb;
SCTP_INP_WLOCK(inp);
inp->sctp_flags |= SCTP_PCB_FLAGS_BOUND_V6; /* I'm v6! */
@@ -704,7 +704,7 @@ sctp6_attach(struct socket *so, int proto SCTP_UNUSED, struct thread *p SCTP_UNU
* sctp_attach()?
*/
SCTP_INP_WUNLOCK(inp);
- return 0;
+ return (0);
}
static int
@@ -717,7 +717,7 @@ sctp6_bind(struct socket *so, struct sockaddr *addr, struct thread *p)
inp = (struct sctp_inpcb *)so->so_pcb;
if (inp == 0) {
SCTP_LTRACE_ERR_RET(inp, NULL, NULL, SCTP_FROM_SCTP6_USRREQ, EINVAL);
- return EINVAL;
+ return (EINVAL);
}
if (addr) {
switch (addr->sa_family) {
@@ -725,7 +725,7 @@ sctp6_bind(struct socket *so, struct sockaddr *addr, struct thread *p)
case AF_INET:
if (addr->sa_len != sizeof(struct sockaddr_in)) {
SCTP_LTRACE_ERR_RET(inp, NULL, NULL, SCTP_FROM_SCTP6_USRREQ, EINVAL);
- return EINVAL;
+ return (EINVAL);
}
break;
#endif
@@ -733,13 +733,13 @@ sctp6_bind(struct socket *so, struct sockaddr *addr, struct thread *p)
case AF_INET6:
if (addr->sa_len != sizeof(struct sockaddr_in6)) {
SCTP_LTRACE_ERR_RET(inp, NULL, NULL, SCTP_FROM_SCTP6_USRREQ, EINVAL);
- return EINVAL;
+ return (EINVAL);
}
break;
#endif
default:
SCTP_LTRACE_ERR_RET(inp, NULL, NULL, SCTP_FROM_SCTP6_USRREQ, EINVAL);
- return EINVAL;
+ return (EINVAL);
}
}
inp6 = (struct in6pcb *)inp;
@@ -772,7 +772,7 @@ sctp6_bind(struct socket *so, struct sockaddr *addr, struct thread *p)
inp6->inp_vflag |= INP_IPV4;
inp6->inp_vflag &= ~INP_IPV6;
error = sctp_inpcb_bind(so, (struct sockaddr *)&sin, NULL, p);
- return error;
+ return (error);
}
#endif
break;
@@ -789,7 +789,7 @@ sctp6_bind(struct socket *so, struct sockaddr *addr, struct thread *p)
if (addr->sa_family == AF_INET) {
/* can't bind v4 addr to v6 only socket! */
SCTP_LTRACE_ERR_RET(inp, NULL, NULL, SCTP_FROM_SCTP6_USRREQ, EINVAL);
- return EINVAL;
+ return (EINVAL);
}
#endif
sin6_p = (struct sockaddr_in6 *)addr;
@@ -798,11 +798,11 @@ sctp6_bind(struct socket *so, struct sockaddr *addr, struct thread *p)
/* can't bind v4-mapped addrs either! */
/* NOTE: we don't support SIIT */
SCTP_LTRACE_ERR_RET(inp, NULL, NULL, SCTP_FROM_SCTP6_USRREQ, EINVAL);
- return EINVAL;
+ return (EINVAL);
}
}
error = sctp_inpcb_bind(so, addr, NULL, p);
- return error;
+ return (error);
}
@@ -848,7 +848,7 @@ sctp6_send(struct socket *so, int flags, struct mbuf *m, struct sockaddr *addr,
}
SCTP_RELEASE_PKT(m);
SCTP_LTRACE_ERR_RET(inp, NULL, NULL, SCTP_FROM_SCTP6_USRREQ, EINVAL);
- return EINVAL;
+ return (EINVAL);
}
inp6 = (struct in6pcb *)inp;
/*
@@ -877,11 +877,11 @@ sctp6_send(struct socket *so, int flags, struct mbuf *m, struct sockaddr *addr,
*/
if (addr->sa_family == AF_INET) {
SCTP_LTRACE_ERR_RET(inp, NULL, NULL, SCTP_FROM_SCTP6_USRREQ, EINVAL);
- return EINVAL;
+ return (EINVAL);
}
if (IN6_IS_ADDR_V4MAPPED(&sin6->sin6_addr)) {
SCTP_LTRACE_ERR_RET(inp, NULL, NULL, SCTP_FROM_SCTP6_USRREQ, EINVAL);
- return EINVAL;
+ return (EINVAL);
}
}
if (IN6_IS_ADDR_V4MAPPED(&sin6->sin6_addr)) {
@@ -890,12 +890,12 @@ sctp6_send(struct socket *so, int flags, struct mbuf *m, struct sockaddr *addr,
/* convert v4-mapped into v4 addr and send */
in6_sin6_2_sin(&sin, sin6);
- return sctp_sendm(so, flags, m, (struct sockaddr *)&sin,
- control, p);
+ return (sctp_sendm(so, flags, m, (struct sockaddr *)&sin,
+ control, p));
} else {
/* mapped addresses aren't enabled */
SCTP_LTRACE_ERR_RET(inp, NULL, NULL, SCTP_FROM_SCTP6_USRREQ, EINVAL);
- return EINVAL;
+ return (EINVAL);
}
}
#endif /* INET */
@@ -1020,13 +1020,13 @@ sctp6_connect(struct socket *so, struct sockaddr *addr, struct thread *p)
SCTP_INP_RUNLOCK(inp);
SCTP_ASOC_CREATE_UNLOCK(inp);
SCTP_LTRACE_ERR_RET(inp, NULL, NULL, SCTP_FROM_SCTP6_USRREQ, EINVAL);
- return EINVAL;
+ return (EINVAL);
}
if (IN6_IS_ADDR_V4MAPPED(&sin6->sin6_addr)) {
SCTP_INP_RUNLOCK(inp);
SCTP_ASOC_CREATE_UNLOCK(inp);
SCTP_LTRACE_ERR_RET(inp, NULL, NULL, SCTP_FROM_SCTP6_USRREQ, EINVAL);
- return EINVAL;
+ return (EINVAL);
}
}
if (IN6_IS_ADDR_V4MAPPED(&sin6->sin6_addr)) {
@@ -1039,7 +1039,7 @@ sctp6_connect(struct socket *so, struct sockaddr *addr, struct thread *p)
SCTP_INP_RUNLOCK(inp);
SCTP_ASOC_CREATE_UNLOCK(inp);
SCTP_LTRACE_ERR_RET(inp, NULL, NULL, SCTP_FROM_SCTP6_USRREQ, EINVAL);
- return EINVAL;
+ return (EINVAL);
}
}
#endif /* INET */
@@ -1090,7 +1090,7 @@ sctp6_connect(struct socket *so, struct sockaddr *addr, struct thread *p)
sctp_send_initiate(inp, stcb, SCTP_SO_LOCKED);
SCTP_TCB_UNLOCK(stcb);
- return error;
+ return (error);
}
static int
@@ -1108,7 +1108,7 @@ sctp6_getaddr(struct socket *so, struct sockaddr **addr)
*/
SCTP_MALLOC_SONAME(sin6, struct sockaddr_in6 *, sizeof(*sin6));
if (sin6 == NULL)
- return ENOMEM;
+ return (ENOMEM);
sin6->sin6_family = AF_INET6;
sin6->sin6_len = sizeof(*sin6);
@@ -1116,7 +1116,7 @@ sctp6_getaddr(struct socket *so, struct sockaddr **addr)
if (inp == NULL) {
SCTP_FREE_SONAME(sin6);
SCTP_LTRACE_ERR_RET(inp, NULL, NULL, SCTP_FROM_SCTP6_USRREQ, ECONNRESET);
- return ECONNRESET;
+ return (ECONNRESET);
}
SCTP_INP_RLOCK(inp);
sin6->sin6_port = inp->sctp_lport;
@@ -1178,7 +1178,7 @@ sctp6_getaddr(struct socket *so, struct sockaddr **addr)
SCTP_FREE_SONAME(sin6);
SCTP_INP_RUNLOCK(inp);
SCTP_LTRACE_ERR_RET(inp, NULL, NULL, SCTP_FROM_SCTP6_USRREQ, ENOENT);
- return ENOENT;
+ return (ENOENT);
}
}
SCTP_INP_RUNLOCK(inp);
@@ -1200,30 +1200,22 @@ sctp6_peeraddr(struct socket *so, struct sockaddr **addr)
struct sctp_inpcb *inp;
struct sctp_tcb *stcb;
struct sctp_nets *net;
-
int error;
- /*
- * Do the malloc first in case it blocks.
- */
- inp = (struct sctp_inpcb *)so->so_pcb;
- if ((inp->sctp_flags & SCTP_PCB_FLAGS_CONNECTED) == 0) {
- /* UDP type and listeners will drop out here */
- SCTP_LTRACE_ERR_RET(inp, NULL, NULL, SCTP_FROM_SCTP6_USRREQ, ENOTCONN);
- return (ENOTCONN);
- }
+ /* Do the malloc first in case it blocks. */
SCTP_MALLOC_SONAME(sin6, struct sockaddr_in6 *, sizeof *sin6);
if (sin6 == NULL)
return (ENOMEM);
sin6->sin6_family = AF_INET6;
sin6->sin6_len = sizeof(*sin6);
- /* We must recapture incase we blocked */
inp = (struct sctp_inpcb *)so->so_pcb;
- if (inp == NULL) {
+ if ((inp == NULL) ||
+ ((inp->sctp_flags & SCTP_PCB_FLAGS_CONNECTED) == 0)) {
+ /* UDP type and listeners will drop out here */
SCTP_FREE_SONAME(sin6);
- SCTP_LTRACE_ERR_RET(inp, NULL, NULL, SCTP_FROM_SCTP6_USRREQ, ECONNRESET);
- return ECONNRESET;
+ SCTP_LTRACE_ERR_RET(inp, NULL, NULL, SCTP_FROM_SCTP6_USRREQ, ENOTCONN);
+ return (ENOTCONN);
}
SCTP_INP_RLOCK(inp);
stcb = LIST_FIRST(&inp->sctp_asoc_list);
@@ -1234,7 +1226,7 @@ sctp6_peeraddr(struct socket *so, struct sockaddr **addr)
if (stcb == NULL) {
SCTP_FREE_SONAME(sin6);
SCTP_LTRACE_ERR_RET(inp, NULL, NULL, SCTP_FROM_SCTP6_USRREQ, ECONNRESET);
- return ECONNRESET;
+ return (ECONNRESET);
}
fnd = 0;
TAILQ_FOREACH(net, &stcb->asoc.nets, sctp_next) {
@@ -1251,7 +1243,7 @@ sctp6_peeraddr(struct socket *so, struct sockaddr **addr)
/* No IPv4 address */
SCTP_FREE_SONAME(sin6);
SCTP_LTRACE_ERR_RET(inp, NULL, NULL, SCTP_FROM_SCTP6_USRREQ, ENOENT);
- return ENOENT;
+ return (ENOENT);
}
if ((error = sa6_recoverscope(sin6)) != 0)
return (error);
@@ -1271,7 +1263,7 @@ sctp6_in6getaddr(struct socket *so, struct sockaddr **nam)
if (inp6 == NULL) {
SCTP_LTRACE_ERR_RET(NULL, NULL, NULL, SCTP_FROM_SCTP6_USRREQ, EINVAL);
- return EINVAL;
+ return (EINVAL);
}
/* allow v6 addresses precedence */
error = sctp6_getaddr(so, nam);
@@ -1308,7 +1300,7 @@ sctp6_getpeeraddr(struct socket *so, struct sockaddr **nam)
if (inp6 == NULL) {
SCTP_LTRACE_ERR_RET(NULL, NULL, NULL, SCTP_FROM_SCTP6_USRREQ, EINVAL);
- return EINVAL;
+ return (EINVAL);
}
/* allow v6 addresses precedence */
error = sctp6_peeraddr(so, nam);
@@ -1329,7 +1321,7 @@ sctp6_getpeeraddr(struct socket *so, struct sockaddr **nam)
}
}
#endif
- return error;
+ return (error);
}
struct pr_usrreqs sctp6_usrreqs = {
OpenPOWER on IntegriCloud