git: f277746e1326 - main - protosw: change prototype for pr_control
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 12 Aug 2022 19:10:31 UTC
The branch main has been updated by glebius:
URL: https://cgit.FreeBSD.org/src/commit/?id=f277746e13261e139cbb7a3bbd74dfe104326182
commit f277746e13261e139cbb7a3bbd74dfe104326182
Author: Gleb Smirnoff <glebius@FreeBSD.org>
AuthorDate: 2022-08-12 19:08:18 +0000
Commit: Gleb Smirnoff <glebius@FreeBSD.org>
CommitDate: 2022-08-12 19:08:18 +0000
protosw: change prototype for pr_control
For some reason protosw.h is used during world complation and userland
is not aware of caddr_t, a relic from the first version of C. Broken
buildworld is good reason to get rid of yet another caddr_t in kernel.
Fixes: 886fc1e80490fb03e72e306774766cbb2c733ac6
---
sys/kern/uipc_socket.c | 2 +-
sys/netgraph/bluetooth/include/ng_btsocket_hci_raw.h | 2 +-
sys/netgraph/bluetooth/include/ng_btsocket_l2cap.h | 4 ++--
sys/netgraph/bluetooth/include/ng_btsocket_rfcomm.h | 2 +-
sys/netgraph/bluetooth/include/ng_btsocket_sco.h | 2 +-
sys/netgraph/bluetooth/socket/ng_btsocket_hci_raw.c | 2 +-
sys/netgraph/bluetooth/socket/ng_btsocket_l2cap.c | 2 +-
sys/netgraph/bluetooth/socket/ng_btsocket_l2cap_raw.c | 2 +-
sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c | 2 +-
sys/netgraph/bluetooth/socket/ng_btsocket_sco.c | 2 +-
sys/netinet/in.c | 2 +-
sys/netinet/in_var.h | 2 +-
sys/netinet6/in6.c | 2 +-
sys/netinet6/in6_var.h | 2 +-
sys/ofed/drivers/infiniband/ulp/sdp/sdp_main.c | 8 --------
sys/sys/protosw.h | 6 +++---
16 files changed, 18 insertions(+), 26 deletions(-)
diff --git a/sys/kern/uipc_socket.c b/sys/kern/uipc_socket.c
index e9fe4dfd7feb..bbca2d8663d7 100644
--- a/sys/kern/uipc_socket.c
+++ b/sys/kern/uipc_socket.c
@@ -3725,7 +3725,7 @@ pru_connect2_notsupp(struct socket *so1, struct socket *so2)
}
int
-pru_control_notsupp(struct socket *so, u_long cmd, caddr_t data,
+pru_control_notsupp(struct socket *so, u_long cmd, void *data,
struct ifnet *ifp, struct thread *td)
{
diff --git a/sys/netgraph/bluetooth/include/ng_btsocket_hci_raw.h b/sys/netgraph/bluetooth/include/ng_btsocket_hci_raw.h
index 21ed3928b5ff..7d4da8d4ce45 100644
--- a/sys/netgraph/bluetooth/include/ng_btsocket_hci_raw.h
+++ b/sys/netgraph/bluetooth/include/ng_btsocket_hci_raw.h
@@ -74,7 +74,7 @@ int ng_btsocket_hci_raw_bind (struct socket *, struct sockaddr *,
struct thread *);
int ng_btsocket_hci_raw_connect (struct socket *, struct sockaddr *,
struct thread *);
-int ng_btsocket_hci_raw_control (struct socket *, u_long, caddr_t,
+int ng_btsocket_hci_raw_control (struct socket *, u_long, void *,
struct ifnet *, struct thread *);
int ng_btsocket_hci_raw_ctloutput (struct socket *, struct sockopt *);
void ng_btsocket_hci_raw_detach (struct socket *);
diff --git a/sys/netgraph/bluetooth/include/ng_btsocket_l2cap.h b/sys/netgraph/bluetooth/include/ng_btsocket_l2cap.h
index 34df9179c860..43482c6ca5f6 100644
--- a/sys/netgraph/bluetooth/include/ng_btsocket_l2cap.h
+++ b/sys/netgraph/bluetooth/include/ng_btsocket_l2cap.h
@@ -102,7 +102,7 @@ int ng_btsocket_l2cap_raw_bind (struct socket *, struct sockaddr *,
struct thread *);
int ng_btsocket_l2cap_raw_connect (struct socket *, struct sockaddr *,
struct thread *);
-int ng_btsocket_l2cap_raw_control (struct socket *, u_long, caddr_t,
+int ng_btsocket_l2cap_raw_control (struct socket *, u_long, void *,
struct ifnet *, struct thread *);
void ng_btsocket_l2cap_raw_detach (struct socket *);
int ng_btsocket_l2cap_raw_disconnect (struct socket *);
@@ -198,7 +198,7 @@ int ng_btsocket_l2cap_bind (struct socket *, struct sockaddr *,
struct thread *);
int ng_btsocket_l2cap_connect (struct socket *, struct sockaddr *,
struct thread *);
-int ng_btsocket_l2cap_control (struct socket *, u_long, caddr_t,
+int ng_btsocket_l2cap_control (struct socket *, u_long, void *,
struct ifnet *, struct thread *);
int ng_btsocket_l2cap_ctloutput (struct socket *, struct sockopt *);
void ng_btsocket_l2cap_detach (struct socket *);
diff --git a/sys/netgraph/bluetooth/include/ng_btsocket_rfcomm.h b/sys/netgraph/bluetooth/include/ng_btsocket_rfcomm.h
index 179b6518eb33..ea0928d25044 100644
--- a/sys/netgraph/bluetooth/include/ng_btsocket_rfcomm.h
+++ b/sys/netgraph/bluetooth/include/ng_btsocket_rfcomm.h
@@ -323,7 +323,7 @@ int ng_btsocket_rfcomm_bind (struct socket *, struct sockaddr *,
struct thread *);
int ng_btsocket_rfcomm_connect (struct socket *, struct sockaddr *,
struct thread *);
-int ng_btsocket_rfcomm_control (struct socket *, u_long, caddr_t,
+int ng_btsocket_rfcomm_control (struct socket *, u_long, void *,
struct ifnet *, struct thread *);
int ng_btsocket_rfcomm_ctloutput (struct socket *, struct sockopt *);
void ng_btsocket_rfcomm_detach (struct socket *);
diff --git a/sys/netgraph/bluetooth/include/ng_btsocket_sco.h b/sys/netgraph/bluetooth/include/ng_btsocket_sco.h
index 001be86d0a5f..7a0b0a272f81 100644
--- a/sys/netgraph/bluetooth/include/ng_btsocket_sco.h
+++ b/sys/netgraph/bluetooth/include/ng_btsocket_sco.h
@@ -113,7 +113,7 @@ int ng_btsocket_sco_bind (struct socket *, struct sockaddr *,
struct thread *);
int ng_btsocket_sco_connect (struct socket *, struct sockaddr *,
struct thread *);
-int ng_btsocket_sco_control (struct socket *, u_long, caddr_t,
+int ng_btsocket_sco_control (struct socket *, u_long, void *,
struct ifnet *, struct thread *);
int ng_btsocket_sco_ctloutput (struct socket *, struct sockopt *);
void ng_btsocket_sco_detach (struct socket *);
diff --git a/sys/netgraph/bluetooth/socket/ng_btsocket_hci_raw.c b/sys/netgraph/bluetooth/socket/ng_btsocket_hci_raw.c
index 03894464a69a..ef8e835d0323 100644
--- a/sys/netgraph/bluetooth/socket/ng_btsocket_hci_raw.c
+++ b/sys/netgraph/bluetooth/socket/ng_btsocket_hci_raw.c
@@ -1031,7 +1031,7 @@ ng_btsocket_hci_raw_connect(struct socket *so, struct sockaddr *nam,
*/
int
-ng_btsocket_hci_raw_control(struct socket *so, u_long cmd, caddr_t data,
+ng_btsocket_hci_raw_control(struct socket *so, u_long cmd, void *data,
struct ifnet *ifp, struct thread *td)
{
ng_btsocket_hci_raw_pcb_p pcb = so2hci_raw_pcb(so);
diff --git a/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap.c b/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap.c
index 34d1d69f408f..e4e75327c1ac 100644
--- a/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap.c
+++ b/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap.c
@@ -2280,7 +2280,7 @@ ng_btsocket_l2cap_connect(struct socket *so, struct sockaddr *nam,
*/
int
-ng_btsocket_l2cap_control(struct socket *so, u_long cmd, caddr_t data,
+ng_btsocket_l2cap_control(struct socket *so, u_long cmd, void *data,
struct ifnet *ifp, struct thread *td)
{
return (EINVAL);
diff --git a/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap_raw.c b/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap_raw.c
index 7674c23f25cc..6536413db7ff 100644
--- a/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap_raw.c
+++ b/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap_raw.c
@@ -784,7 +784,7 @@ ng_btsocket_l2cap_raw_connect(struct socket *so, struct sockaddr *nam,
*/
int
-ng_btsocket_l2cap_raw_control(struct socket *so, u_long cmd, caddr_t data,
+ng_btsocket_l2cap_raw_control(struct socket *so, u_long cmd, void *data,
struct ifnet *ifp, struct thread *td)
{
ng_btsocket_l2cap_raw_pcb_p pcb = so2l2cap_raw_pcb(so);
diff --git a/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c b/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c
index 7bdf9c95c53d..ac504483b0a8 100644
--- a/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c
+++ b/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c
@@ -637,7 +637,7 @@ ng_btsocket_rfcomm_connect(struct socket *so, struct sockaddr *nam,
*/
int
-ng_btsocket_rfcomm_control(struct socket *so, u_long cmd, caddr_t data,
+ng_btsocket_rfcomm_control(struct socket *so, u_long cmd, void *data,
struct ifnet *ifp, struct thread *td)
{
return (EINVAL);
diff --git a/sys/netgraph/bluetooth/socket/ng_btsocket_sco.c b/sys/netgraph/bluetooth/socket/ng_btsocket_sco.c
index 92898dad3245..3960f4cdb6bc 100644
--- a/sys/netgraph/bluetooth/socket/ng_btsocket_sco.c
+++ b/sys/netgraph/bluetooth/socket/ng_btsocket_sco.c
@@ -1445,7 +1445,7 @@ ng_btsocket_sco_connect(struct socket *so, struct sockaddr *nam,
*/
int
-ng_btsocket_sco_control(struct socket *so, u_long cmd, caddr_t data,
+ng_btsocket_sco_control(struct socket *so, u_long cmd, void *data,
struct ifnet *ifp, struct thread *td)
{
return (EINVAL);
diff --git a/sys/netinet/in.c b/sys/netinet/in.c
index e394af68ac23..790740456160 100644
--- a/sys/netinet/in.c
+++ b/sys/netinet/in.c
@@ -324,7 +324,7 @@ in_socktrim(struct sockaddr_in *ap)
* Generic internet control operations (ioctl's).
*/
int
-in_control(struct socket *so, u_long cmd, caddr_t data, struct ifnet *ifp,
+in_control(struct socket *so, u_long cmd, void *data, struct ifnet *ifp,
struct thread *td)
{
struct ifreq *ifr = (struct ifreq *)data;
diff --git a/sys/netinet/in_var.h b/sys/netinet/in_var.h
index c3f936b444dc..40e1c1a23c40 100644
--- a/sys/netinet/in_var.h
+++ b/sys/netinet/in_var.h
@@ -444,7 +444,7 @@ int in_joingroup_locked(struct ifnet *, const struct in_addr *,
int in_leavegroup(struct in_multi *, /*const*/ struct in_mfilter *);
int in_leavegroup_locked(struct in_multi *,
/*const*/ struct in_mfilter *);
-int in_control(struct socket *, u_long, caddr_t, struct ifnet *,
+int in_control(struct socket *, u_long, void *, struct ifnet *,
struct thread *);
int in_addprefix(struct in_ifaddr *);
int in_scrubprefix(struct in_ifaddr *, u_int);
diff --git a/sys/netinet6/in6.c b/sys/netinet6/in6.c
index a69758678b4c..3386e0463637 100644
--- a/sys/netinet6/in6.c
+++ b/sys/netinet6/in6.c
@@ -246,7 +246,7 @@ struct in6_ndifreq32 {
#endif
int
-in6_control(struct socket *so, u_long cmd, caddr_t data,
+in6_control(struct socket *so, u_long cmd, void *data,
struct ifnet *ifp, struct thread *td)
{
struct in6_ifreq *ifr = (struct in6_ifreq *)data;
diff --git a/sys/netinet6/in6_var.h b/sys/netinet6/in6_var.h
index 1c8e78edd46c..92e94e730c33 100644
--- a/sys/netinet6/in6_var.h
+++ b/sys/netinet6/in6_var.h
@@ -881,7 +881,7 @@ int ip6_setmoptions(struct inpcb *, struct sockopt *);
#define IN6_IFAUPDATE_DADDELAY 0x1 /* first time to configure an address */
int in6_mask2len(struct in6_addr *, u_char *);
-int in6_control(struct socket *, u_long, caddr_t, struct ifnet *,
+int in6_control(struct socket *, u_long, void *, struct ifnet *,
struct thread *);
int in6_update_ifa(struct ifnet *, struct in6_aliasreq *,
struct in6_ifaddr *, int);
diff --git a/sys/ofed/drivers/infiniband/ulp/sdp/sdp_main.c b/sys/ofed/drivers/infiniband/ulp/sdp/sdp_main.c
index 4305b42f1c00..8382854e24e2 100644
--- a/sys/ofed/drivers/infiniband/ulp/sdp/sdp_main.c
+++ b/sys/ofed/drivers/infiniband/ulp/sdp/sdp_main.c
@@ -1575,13 +1575,6 @@ sdp_ctlinput(int cmd, struct sockaddr *sa, void *vip)
sdp_pcbnotifyall(faddr, inetctlerrmap[cmd], sdp_notify);
}
-static int
-sdp_control(struct socket *so, u_long cmd, caddr_t data, struct ifnet *ifp,
- struct thread *td)
-{
- return (EOPNOTSUPP);
-}
-
static void
sdp_keepalive_timeout(void *data)
{
@@ -1923,7 +1916,6 @@ struct pr_usrreqs sdp_usrreqs = {
.pru_attach = sdp_attach,
.pru_bind = sdp_bind,
.pru_connect = sdp_connect,
- .pru_control = sdp_control,
.pru_detach = sdp_detach,
.pru_disconnect = sdp_disconnect,
.pru_listen = sdp_listen,
diff --git a/sys/sys/protosw.h b/sys/sys/protosw.h
index 78c25e6e77f6..1f48ef9ef55f 100644
--- a/sys/sys/protosw.h
+++ b/sys/sys/protosw.h
@@ -79,8 +79,8 @@ typedef int pr_bind_t(struct socket *, struct sockaddr *, struct thread *);
typedef int pr_connect_t(struct socket *, struct sockaddr *,
struct thread *);
typedef int pr_connect2_t(struct socket *, struct socket *);
-typedef int pr_control_t(struct socket *, u_long, caddr_t, struct ifnet *,
- struct thread *);
+typedef int pr_control_t(struct socket *, unsigned long, void *,
+ struct ifnet *, struct thread *);
typedef void pr_detach_t(struct socket *);
typedef int pr_disconnect_t(struct socket *);
typedef int pr_listen_t(struct socket *, int, struct thread *);
@@ -272,7 +272,7 @@ int pru_connect_notsupp(struct socket *so, struct sockaddr *nam,
int pru_connectat_notsupp(int fd, struct socket *so, struct sockaddr *nam,
struct thread *td);
int pru_connect2_notsupp(struct socket *so1, struct socket *so2);
-int pru_control_notsupp(struct socket *so, u_long cmd, caddr_t data,
+int pru_control_notsupp(struct socket *so, u_long cmd, void *data,
struct ifnet *ifp, struct thread *td);
int pru_disconnect_notsupp(struct socket *so);
int pru_listen_notsupp(struct socket *so, int backlog, struct thread *td);