aboutsummaryrefslogtreecommitdiff
path: root/sys/netinet/sctp_syscalls.c
diff options
context:
space:
mode:
authorGleb Smirnoff <glebius@FreeBSD.org>2017-01-13 16:54:44 +0000
committerGleb Smirnoff <glebius@FreeBSD.org>2017-01-13 16:54:44 +0000
commit0f7ddf91e98ae4906294bd21bf397f84b331c67c (patch)
tree25af30d0241ad000c1c7abcb42280b4e9a74986c /sys/netinet/sctp_syscalls.c
parentb632b0008778cad9a75b9cd5f0db3d0d535fb62f (diff)
downloadsrc-0f7ddf91e98ae4906294bd21bf397f84b331c67c.tar.gz
src-0f7ddf91e98ae4906294bd21bf397f84b331c67c.zip
Use getsock_cap() instead of deprecated fgetsock().
Reviewed by: tuexen
Notes
Notes: svn path=/head/; revision=312079
Diffstat (limited to 'sys/netinet/sctp_syscalls.c')
-rw-r--r--sys/netinet/sctp_syscalls.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/sys/netinet/sctp_syscalls.c b/sys/netinet/sctp_syscalls.c
index eea70e23d208..66df3141ec5a 100644
--- a/sys/netinet/sctp_syscalls.c
+++ b/sys/netinet/sctp_syscalls.c
@@ -121,17 +121,18 @@ sys_sctp_peeloff(td, uap)
} */ *uap;
{
#if (defined(INET) || defined(INET6)) && defined(SCTP)
- struct file *nfp = NULL;
+ struct file *headfp, *nfp = NULL;
struct socket *head, *so;
cap_rights_t rights;
u_int fflag;
int error, fd;
AUDIT_ARG_FD(uap->sd);
- error = fgetsock(td, uap->sd, cap_rights_init(&rights, CAP_PEELOFF),
- &head, &fflag);
+ error = getsock_cap(td, uap->sd, cap_rights_init(&rights, CAP_PEELOFF),
+ &headfp, &fflag, NULL);
if (error != 0)
goto done2;
+ head = headfp->f_data;
if (head->so_proto->pr_protocol != IPPROTO_SCTP) {
error = EOPNOTSUPP;
goto done;
@@ -196,7 +197,7 @@ noconnection:
done:
if (nfp != NULL)
fdrop(nfp, td);
- fputsock(head);
+ fdrop(headfp, td);
done2:
return (error);
#else /* SCTP */