aboutsummaryrefslogtreecommitdiff
path: root/sys/netlink
diff options
context:
space:
mode:
authorGleb Smirnoff <glebius@FreeBSD.org>2023-11-30 16:30:55 +0000
committerGleb Smirnoff <glebius@FreeBSD.org>2023-11-30 16:31:10 +0000
commit0fac350c54d0a72f5341e15021efcde63eb58a4b (patch)
tree6b4229e6fe419e850c04226390fbe5396569aba6 /sys/netlink
parentcfb1e92912b4cf75360b7fbe86197cc29bc212c1 (diff)
Diffstat (limited to 'sys/netlink')
-rw-r--r--sys/netlink/netlink_domain.c27
1 files changed, 9 insertions, 18 deletions
diff --git a/sys/netlink/netlink_domain.c b/sys/netlink/netlink_domain.c
index 7b2bbd39447d..1b48ac65cec1 100644
--- a/sys/netlink/netlink_domain.c
+++ b/sys/netlink/netlink_domain.c
@@ -541,14 +541,6 @@ nl_pru_disconnect(struct socket *so)
}
static int
-nl_pru_peeraddr(struct socket *so, struct sockaddr **sa)
-{
- NL_LOG(LOG_DEBUG3, "socket %p, PID %d", so, curproc->p_pid);
- MPASS(sotonlpcb(so) != NULL);
- return (ENOTCONN);
-}
-
-static int
nl_pru_shutdown(struct socket *so)
{
NL_LOG(LOG_DEBUG3, "socket %p, PID %d", so, curproc->p_pid);
@@ -558,16 +550,16 @@ nl_pru_shutdown(struct socket *so)
}
static int
-nl_pru_sockaddr(struct socket *so, struct sockaddr **sa)
+nl_sockaddr(struct socket *so, struct sockaddr *sa)
{
- struct sockaddr_nl *snl;
- snl = malloc(sizeof(struct sockaddr_nl), M_SONAME, M_WAITOK | M_ZERO);
- /* TODO: set other fields */
- snl->nl_len = sizeof(struct sockaddr_nl);
- snl->nl_family = AF_NETLINK;
- snl->nl_pid = sotonlpcb(so)->nl_port;
- *sa = (struct sockaddr *)snl;
+ *(struct sockaddr_nl *)sa = (struct sockaddr_nl ){
+ /* TODO: set other fields */
+ .nl_len = sizeof(struct sockaddr_nl),
+ .nl_family = AF_NETLINK,
+ .nl_pid = sotonlpcb(so)->nl_port,
+ };
+
return (0);
}
@@ -780,11 +772,10 @@ nl_setsbopt(struct socket *so, struct sockopt *sopt)
.pr_connect = nl_pru_connect, \
.pr_detach = nl_pru_detach, \
.pr_disconnect = nl_pru_disconnect, \
- .pr_peeraddr = nl_pru_peeraddr, \
.pr_send = nl_pru_send, \
.pr_rcvd = nl_pru_rcvd, \
.pr_shutdown = nl_pru_shutdown, \
- .pr_sockaddr = nl_pru_sockaddr, \
+ .pr_sockaddr = nl_sockaddr, \
.pr_close = nl_pru_close
static struct protosw netlink_raw_sw = {