aboutsummaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorAndrey Konovalov <andreyknvl@google.com>2017-04-07 17:46:51 +0200
committerAndrey Konovalov <andreyknvl@google.com>2017-04-08 20:20:38 +0200
commit0982b00b6d5f8a5f4bf0e96883df60c55c278585 (patch)
tree05794b8bfa033d7856d93edd39a1f68298d81353 /sys
parentf6f7c2edd8c853324638825048ee7784b5dbf61d (diff)
sys: add more ip ioctls
Diffstat (limited to 'sys')
-rw-r--r--sys/socket_inet.txt16
-rw-r--r--sys/socket_inet_amd64.const11
-rw-r--r--sys/socket_inet_arm64.const11
-rw-r--r--sys/socket_inet_ppc64le.const11
4 files changed, 47 insertions, 2 deletions
diff --git a/sys/socket_inet.txt b/sys/socket_inet.txt
index a9e1834f5..332bb7e30 100644
--- a/sys/socket_inet.txt
+++ b/sys/socket_inet.txt
@@ -185,7 +185,7 @@ xfrm_in_addr [
# IP ioctls
-# http://lxr.free-electrons.com/source/include/uapi/linux/sockios.h
+# http://lxr.free-electrons.com/ident?i=inet_ioctl
ioctl$sock_inet_SIOCADDRT(fd sock_in, cmd const[SIOCADDRT], arg ptr[in, rtentry_in])
ioctl$sock_inet_SIOCDELRT(fd sock_in, cmd const[SIOCDELRT], arg ptr[in, rtentry_in])
@@ -195,7 +195,9 @@ ioctl$sock_inet_SIOCDARP(fd sock_in, cmd const[SIOCDARP], arg ptr[in, arpreq_in]
ioctl$sock_inet_SIOCGARP(fd sock_in, cmd const[SIOCGARP], arg ptr[inout, arpreq_in])
ioctl$sock_inet_SIOCSARP(fd sock_in, cmd const[SIOCSARP], arg ptr[in, arpreq_in])
-# TODO: more here
+inet_ifreq_ioctls = SIOCGIFADDR, SIOCSIFADDR, SIOCGIFBRDADDR, SIOCSIFBRDADDR, SIOCGIFNETMASK, SIOCSIFNETMASK, SIOCGIFDSTADDR, SIOCSIFDSTADDR, SIOCSIFPFLAGS, SIOCGIFPFLAGS, SIOCSIFFLAGS
+
+ioctl$sock_inet_ifreq(fd sock, cmd flags[inet_ifreq_ioctls], arg ptr[inout, ifreq_in])
rt_flags = RTF_UP, RTF_GATEWAY, RTF_HOST, RTF_REINSTATE, RTF_DYNAMIC, RTF_MODIFIED, RTF_MTU, RTF_WINDOW, RTF_IRTT, RTF_REJECT
@@ -232,3 +234,13 @@ arpreq_in {
arp_netmask sockaddr_in
arp_dev devname
}
+
+ifreq_in {
+ ifr_ifrn devname
+ ifr_ifru ifr_ifru_in
+}
+
+ifr_ifru_in [
+ ifru_addrs sockaddr_in
+ ifru_flags flags[ifru_flags, int16]
+]
diff --git a/sys/socket_inet_amd64.const b/sys/socket_inet_amd64.const
index 116e43ae3..7ad4f46a6 100644
--- a/sys/socket_inet_amd64.const
+++ b/sys/socket_inet_amd64.const
@@ -75,8 +75,19 @@ SIOCADDRT = 35083
SIOCDARP = 35155
SIOCDELRT = 35084
SIOCGARP = 35156
+SIOCGIFADDR = 35093
+SIOCGIFBRDADDR = 35097
+SIOCGIFDSTADDR = 35095
+SIOCGIFNETMASK = 35099
+SIOCGIFPFLAGS = 35125
SIOCRTMSG = 35085
SIOCSARP = 35157
+SIOCSIFADDR = 35094
+SIOCSIFBRDADDR = 35098
+SIOCSIFDSTADDR = 35096
+SIOCSIFFLAGS = 35092
+SIOCSIFNETMASK = 35100
+SIOCSIFPFLAGS = 35124
__NR_accept = 43
__NR_accept4 = 288
__NR_bind = 49
diff --git a/sys/socket_inet_arm64.const b/sys/socket_inet_arm64.const
index aaba7ef8d..c3589f412 100644
--- a/sys/socket_inet_arm64.const
+++ b/sys/socket_inet_arm64.const
@@ -75,8 +75,19 @@ SIOCADDRT = 35083
SIOCDARP = 35155
SIOCDELRT = 35084
SIOCGARP = 35156
+SIOCGIFADDR = 35093
+SIOCGIFBRDADDR = 35097
+SIOCGIFDSTADDR = 35095
+SIOCGIFNETMASK = 35099
+SIOCGIFPFLAGS = 35125
SIOCRTMSG = 35085
SIOCSARP = 35157
+SIOCSIFADDR = 35094
+SIOCSIFBRDADDR = 35098
+SIOCSIFDSTADDR = 35096
+SIOCSIFFLAGS = 35092
+SIOCSIFNETMASK = 35100
+SIOCSIFPFLAGS = 35124
__NR_accept = 202
__NR_accept4 = 242
__NR_bind = 200
diff --git a/sys/socket_inet_ppc64le.const b/sys/socket_inet_ppc64le.const
index 238b647d8..e81c0d3d3 100644
--- a/sys/socket_inet_ppc64le.const
+++ b/sys/socket_inet_ppc64le.const
@@ -75,8 +75,19 @@ SIOCADDRT = 35083
SIOCDARP = 35155
SIOCDELRT = 35084
SIOCGARP = 35156
+SIOCGIFADDR = 35093
+SIOCGIFBRDADDR = 35097
+SIOCGIFDSTADDR = 35095
+SIOCGIFNETMASK = 35099
+SIOCGIFPFLAGS = 35125
SIOCRTMSG = 35085
SIOCSARP = 35157
+SIOCSIFADDR = 35094
+SIOCSIFBRDADDR = 35098
+SIOCSIFDSTADDR = 35096
+SIOCSIFFLAGS = 35092
+SIOCSIFNETMASK = 35100
+SIOCSIFPFLAGS = 35124
__NR_accept = 330
__NR_accept4 = 344
__NR_bind = 327