1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
--- vsock-only/linux/af_vsock.c 2018-04-28 17:46:58.489492168 +0200
+++ vsock-only/linux/af_vsock.c.new 2018-04-28 17:46:49.528491470 +0200
@@ -215,7 +215,11 @@
struct sockaddr *addr, int addrLen, int flags);
static int VSockVmciAccept(struct socket *sock, struct socket *newsock, int flags, bool kern);
static int VSockVmciGetname(struct socket *sock,
+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 17, 0)
struct sockaddr *addr, int *addrLen, int peer);
+#else
+ struct sockaddr *addr, int peer);
+#endif
static unsigned int VSockVmciPoll(struct file *file,
struct socket *sock, poll_table *wait);
static int VSockVmciListen(struct socket *sock, int backlog);
@@ -3878,7 +3882,9 @@
static int
VSockVmciGetname(struct socket *sock, // IN
struct sockaddr *addr, // OUT
+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 17, 0)
int *addrLen, // OUT
+#endif
int peer) // IN
{
int err;
@@ -3914,7 +3920,11 @@
*/
ASSERT_ON_COMPILE(sizeof *vmciAddr <= 128);
memcpy(addr, vmciAddr, sizeof *vmciAddr);
+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 17, 0)
*addrLen = sizeof *vmciAddr;
+#else
+ err = sizeof *vmciAddr;
+#endif
out:
release_sock(sk);
|