aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/compat.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/compat.h')
-rw-r--r--include/linux/compat.h41
1 files changed, 24 insertions, 17 deletions
diff --git a/include/linux/compat.h b/include/linux/compat.h
index 224c7a896172..ef68119a4fd2 100644
--- a/include/linux/compat.h
+++ b/include/linux/compat.h
@@ -165,25 +165,32 @@ struct compat_ifmap {
165 unsigned char port; 165 unsigned char port;
166}; 166};
167 167
168struct compat_if_settings
169{
170 unsigned int type; /* Type of physical device or protocol */
171 unsigned int size; /* Size of the data allocated by the caller */
172 compat_uptr_t ifs_ifsu; /* union of pointers */
173};
174
168struct compat_ifreq { 175struct compat_ifreq {
169 union { 176 union {
170 char ifrn_name[IFNAMSIZ]; /* if name, e.g. "en0" */ 177 char ifrn_name[IFNAMSIZ]; /* if name, e.g. "en0" */
171 } ifr_ifrn; 178 } ifr_ifrn;
172 union { 179 union {
173 struct sockaddr ifru_addr; 180 struct sockaddr ifru_addr;
174 struct sockaddr ifru_dstaddr; 181 struct sockaddr ifru_dstaddr;
175 struct sockaddr ifru_broadaddr; 182 struct sockaddr ifru_broadaddr;
176 struct sockaddr ifru_netmask; 183 struct sockaddr ifru_netmask;
177 struct sockaddr ifru_hwaddr; 184 struct sockaddr ifru_hwaddr;
178 short ifru_flags; 185 short ifru_flags;
179 compat_int_t ifru_ivalue; 186 compat_int_t ifru_ivalue;
180 compat_int_t ifru_mtu; 187 compat_int_t ifru_mtu;
181 struct compat_ifmap ifru_map; 188 struct compat_ifmap ifru_map;
182 char ifru_slave[IFNAMSIZ]; /* Just fits the size */ 189 char ifru_slave[IFNAMSIZ]; /* Just fits the size */
183 char ifru_newname[IFNAMSIZ]; 190 char ifru_newname[IFNAMSIZ];
184 compat_caddr_t ifru_data; 191 compat_caddr_t ifru_data;
185 /* XXXX? ifru_settings should be here */ 192 struct compat_if_settings ifru_settings;
186 } ifr_ifru; 193 } ifr_ifru;
187}; 194};
188 195
189struct compat_ifconf { 196struct compat_ifconf {