[Xenomai-git] Philippe Gerum : net/packet: ioctl: remove direct references to user memory (3)

2018-02-28 Thread git repository hosting
Module: xenomai-3
Branch: wip/rtnet-fixes
Commit: c1a0dda31addf7e35d7a1a124f271cbf6b975310
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=c1a0dda31addf7e35d7a1a124f271cbf6b975310

Author: Philippe Gerum 
Date:   Sun Jan  7 18:24:18 2018 +0100

net/packet: ioctl: remove direct references to user memory (3)

---

 kernel/drivers/net/stack/packet/af_packet.c |   12 ++--
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/kernel/drivers/net/stack/packet/af_packet.c 
b/kernel/drivers/net/stack/packet/af_packet.c
index 56daba8..9fa985d 100644
--- a/kernel/drivers/net/stack/packet/af_packet.c
+++ b/kernel/drivers/net/stack/packet/af_packet.c
@@ -305,7 +305,7 @@ static int rt_packet_ioctl(struct rtdm_fd *fd, unsigned int 
request, void __user
  *  rt_packet_recvmsg
  */
 static ssize_t
-rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr *msg, int msg_flags)
+rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr *u_msg, int msg_flags)
 {
 struct rtsocket *sock = rtdm_fd_to_private(fd);
 ssize_t len;
@@ -314,11 +314,11 @@ rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr 
*msg, int msg_flags)
 struct sockaddr_ll  sll;
 intret, flags;
 nanosecs_rel_t  timeout = sock->timeout;
-struct user_msghdr _msg;
+struct user_msghdr _msg, *msg;
 socklen_t namelen;
 struct iovec iov_fast[RTDM_IOV_FASTMAX], *iov;
 
-msg = rtnet_get_arg(fd, &_msg, msg, sizeof(*msg));
+msg = rtnet_get_arg(fd, &_msg, u_msg, sizeof(_msg));
 if (IS_ERR(msg))
return PTR_ERR(msg);

@@ -364,12 +364,12 @@ rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr 
*msg, int msg_flags)
/* Ethernet specific - we rather need some parse handler here */
memcpy(sll.sll_addr, rtskb->mac.ethernet->h_source, ETH_ALEN);
sll.sll_halen = ETH_ALEN;
-   ret = rtnet_put_arg(fd, >msg_name, , sizeof(sll));
+   ret = rtnet_put_arg(fd, msg->msg_name, , sizeof(sll));
if (ret)
goto fail;
 
namelen = sizeof(sll);
-   ret = rtnet_put_arg(fd, >msg_namelen, , sizeof(namelen));
+   ret = rtnet_put_arg(fd, _msg->msg_namelen, , sizeof(namelen));
if (ret)
goto fail;
 }
@@ -389,7 +389,7 @@ rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr 
*msg, int msg_flags)
 if (copy_len > len) {
copy_len = len;
flags = msg->msg_flags | MSG_TRUNC;
-   ret = rtnet_put_arg(fd, >msg_flags, , sizeof(flags));
+   ret = rtnet_put_arg(fd, _msg->msg_flags, , sizeof(flags));
if (ret)
goto fail;
 }


___
Xenomai-git mailing list
Xenomai-git@xenomai.org
https://xenomai.org/mailman/listinfo/xenomai-git


[Xenomai-git] Philippe Gerum : net/packet: ioctl: remove direct references to user memory (3)

2018-01-27 Thread git repository hosting
Module: xenomai-3
Branch: next
Commit: 4c351e2e6b8b46155df03d877da4b45dcd35ae5f
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=4c351e2e6b8b46155df03d877da4b45dcd35ae5f

Author: Philippe Gerum 
Date:   Sun Jan  7 18:24:18 2018 +0100

net/packet: ioctl: remove direct references to user memory (3)

---

 kernel/drivers/net/stack/packet/af_packet.c |   12 ++--
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/kernel/drivers/net/stack/packet/af_packet.c 
b/kernel/drivers/net/stack/packet/af_packet.c
index 56daba8..9fa985d 100644
--- a/kernel/drivers/net/stack/packet/af_packet.c
+++ b/kernel/drivers/net/stack/packet/af_packet.c
@@ -305,7 +305,7 @@ static int rt_packet_ioctl(struct rtdm_fd *fd, unsigned int 
request, void __user
  *  rt_packet_recvmsg
  */
 static ssize_t
-rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr *msg, int msg_flags)
+rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr *u_msg, int msg_flags)
 {
 struct rtsocket *sock = rtdm_fd_to_private(fd);
 ssize_t len;
@@ -314,11 +314,11 @@ rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr 
*msg, int msg_flags)
 struct sockaddr_ll  sll;
 intret, flags;
 nanosecs_rel_t  timeout = sock->timeout;
-struct user_msghdr _msg;
+struct user_msghdr _msg, *msg;
 socklen_t namelen;
 struct iovec iov_fast[RTDM_IOV_FASTMAX], *iov;
 
-msg = rtnet_get_arg(fd, &_msg, msg, sizeof(*msg));
+msg = rtnet_get_arg(fd, &_msg, u_msg, sizeof(_msg));
 if (IS_ERR(msg))
return PTR_ERR(msg);

@@ -364,12 +364,12 @@ rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr 
*msg, int msg_flags)
/* Ethernet specific - we rather need some parse handler here */
memcpy(sll.sll_addr, rtskb->mac.ethernet->h_source, ETH_ALEN);
sll.sll_halen = ETH_ALEN;
-   ret = rtnet_put_arg(fd, >msg_name, , sizeof(sll));
+   ret = rtnet_put_arg(fd, msg->msg_name, , sizeof(sll));
if (ret)
goto fail;
 
namelen = sizeof(sll);
-   ret = rtnet_put_arg(fd, >msg_namelen, , sizeof(namelen));
+   ret = rtnet_put_arg(fd, _msg->msg_namelen, , sizeof(namelen));
if (ret)
goto fail;
 }
@@ -389,7 +389,7 @@ rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr 
*msg, int msg_flags)
 if (copy_len > len) {
copy_len = len;
flags = msg->msg_flags | MSG_TRUNC;
-   ret = rtnet_put_arg(fd, >msg_flags, , sizeof(flags));
+   ret = rtnet_put_arg(fd, _msg->msg_flags, , sizeof(flags));
if (ret)
goto fail;
 }


___
Xenomai-git mailing list
Xenomai-git@xenomai.org
https://xenomai.org/mailman/listinfo/xenomai-git


[Xenomai-git] Philippe Gerum : net/packet: ioctl: remove direct references to user memory (3)

2018-01-26 Thread git repository hosting
Module: xenomai-3
Branch: next
Commit: c5cbef0d9e60a1bec92cc34078811c2c1ac2ddc5
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=c5cbef0d9e60a1bec92cc34078811c2c1ac2ddc5

Author: Philippe Gerum 
Date:   Sun Jan  7 18:24:18 2018 +0100

net/packet: ioctl: remove direct references to user memory (3)

---

 kernel/drivers/net/stack/packet/af_packet.c |   12 ++--
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/kernel/drivers/net/stack/packet/af_packet.c 
b/kernel/drivers/net/stack/packet/af_packet.c
index 56daba8..9fa985d 100644
--- a/kernel/drivers/net/stack/packet/af_packet.c
+++ b/kernel/drivers/net/stack/packet/af_packet.c
@@ -305,7 +305,7 @@ static int rt_packet_ioctl(struct rtdm_fd *fd, unsigned int 
request, void __user
  *  rt_packet_recvmsg
  */
 static ssize_t
-rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr *msg, int msg_flags)
+rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr *u_msg, int msg_flags)
 {
 struct rtsocket *sock = rtdm_fd_to_private(fd);
 ssize_t len;
@@ -314,11 +314,11 @@ rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr 
*msg, int msg_flags)
 struct sockaddr_ll  sll;
 intret, flags;
 nanosecs_rel_t  timeout = sock->timeout;
-struct user_msghdr _msg;
+struct user_msghdr _msg, *msg;
 socklen_t namelen;
 struct iovec iov_fast[RTDM_IOV_FASTMAX], *iov;
 
-msg = rtnet_get_arg(fd, &_msg, msg, sizeof(*msg));
+msg = rtnet_get_arg(fd, &_msg, u_msg, sizeof(_msg));
 if (IS_ERR(msg))
return PTR_ERR(msg);

@@ -364,12 +364,12 @@ rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr 
*msg, int msg_flags)
/* Ethernet specific - we rather need some parse handler here */
memcpy(sll.sll_addr, rtskb->mac.ethernet->h_source, ETH_ALEN);
sll.sll_halen = ETH_ALEN;
-   ret = rtnet_put_arg(fd, >msg_name, , sizeof(sll));
+   ret = rtnet_put_arg(fd, msg->msg_name, , sizeof(sll));
if (ret)
goto fail;
 
namelen = sizeof(sll);
-   ret = rtnet_put_arg(fd, >msg_namelen, , sizeof(namelen));
+   ret = rtnet_put_arg(fd, _msg->msg_namelen, , sizeof(namelen));
if (ret)
goto fail;
 }
@@ -389,7 +389,7 @@ rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr 
*msg, int msg_flags)
 if (copy_len > len) {
copy_len = len;
flags = msg->msg_flags | MSG_TRUNC;
-   ret = rtnet_put_arg(fd, >msg_flags, , sizeof(flags));
+   ret = rtnet_put_arg(fd, _msg->msg_flags, , sizeof(flags));
if (ret)
goto fail;
 }


___
Xenomai-git mailing list
Xenomai-git@xenomai.org
https://xenomai.org/mailman/listinfo/xenomai-git


[Xenomai-git] Philippe Gerum : net/packet: ioctl: remove direct references to user memory (3)

2018-01-23 Thread git repository hosting
Module: xenomai-3
Branch: wip/rtnet-fixes
Commit: 32a02d1c49b36aa21f70930359ab3ef4fd894823
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=32a02d1c49b36aa21f70930359ab3ef4fd894823

Author: Philippe Gerum 
Date:   Sun Jan  7 18:24:18 2018 +0100

net/packet: ioctl: remove direct references to user memory (3)

---

 kernel/drivers/net/stack/packet/af_packet.c |   12 ++--
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/kernel/drivers/net/stack/packet/af_packet.c 
b/kernel/drivers/net/stack/packet/af_packet.c
index 56daba8..9fa985d 100644
--- a/kernel/drivers/net/stack/packet/af_packet.c
+++ b/kernel/drivers/net/stack/packet/af_packet.c
@@ -305,7 +305,7 @@ static int rt_packet_ioctl(struct rtdm_fd *fd, unsigned int 
request, void __user
  *  rt_packet_recvmsg
  */
 static ssize_t
-rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr *msg, int msg_flags)
+rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr *u_msg, int msg_flags)
 {
 struct rtsocket *sock = rtdm_fd_to_private(fd);
 ssize_t len;
@@ -314,11 +314,11 @@ rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr 
*msg, int msg_flags)
 struct sockaddr_ll  sll;
 intret, flags;
 nanosecs_rel_t  timeout = sock->timeout;
-struct user_msghdr _msg;
+struct user_msghdr _msg, *msg;
 socklen_t namelen;
 struct iovec iov_fast[RTDM_IOV_FASTMAX], *iov;
 
-msg = rtnet_get_arg(fd, &_msg, msg, sizeof(*msg));
+msg = rtnet_get_arg(fd, &_msg, u_msg, sizeof(_msg));
 if (IS_ERR(msg))
return PTR_ERR(msg);

@@ -364,12 +364,12 @@ rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr 
*msg, int msg_flags)
/* Ethernet specific - we rather need some parse handler here */
memcpy(sll.sll_addr, rtskb->mac.ethernet->h_source, ETH_ALEN);
sll.sll_halen = ETH_ALEN;
-   ret = rtnet_put_arg(fd, >msg_name, , sizeof(sll));
+   ret = rtnet_put_arg(fd, msg->msg_name, , sizeof(sll));
if (ret)
goto fail;
 
namelen = sizeof(sll);
-   ret = rtnet_put_arg(fd, >msg_namelen, , sizeof(namelen));
+   ret = rtnet_put_arg(fd, _msg->msg_namelen, , sizeof(namelen));
if (ret)
goto fail;
 }
@@ -389,7 +389,7 @@ rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr 
*msg, int msg_flags)
 if (copy_len > len) {
copy_len = len;
flags = msg->msg_flags | MSG_TRUNC;
-   ret = rtnet_put_arg(fd, >msg_flags, , sizeof(flags));
+   ret = rtnet_put_arg(fd, _msg->msg_flags, , sizeof(flags));
if (ret)
goto fail;
 }


___
Xenomai-git mailing list
Xenomai-git@xenomai.org
https://xenomai.org/mailman/listinfo/xenomai-git


[Xenomai-git] Philippe Gerum : net/packet: ioctl: remove direct references to user memory (3)

2018-01-23 Thread git repository hosting
Module: xenomai-3
Branch: wip/rtnet-fixes
Commit: 0ca6fbf5b52ef1d7d07488253a4cf10d4b9bca74
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=0ca6fbf5b52ef1d7d07488253a4cf10d4b9bca74

Author: Philippe Gerum 
Date:   Sun Jan  7 18:24:18 2018 +0100

net/packet: ioctl: remove direct references to user memory (3)

---

 kernel/drivers/net/stack/packet/af_packet.c |   12 ++--
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/kernel/drivers/net/stack/packet/af_packet.c 
b/kernel/drivers/net/stack/packet/af_packet.c
index 56daba8..9fa985d 100644
--- a/kernel/drivers/net/stack/packet/af_packet.c
+++ b/kernel/drivers/net/stack/packet/af_packet.c
@@ -305,7 +305,7 @@ static int rt_packet_ioctl(struct rtdm_fd *fd, unsigned int 
request, void __user
  *  rt_packet_recvmsg
  */
 static ssize_t
-rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr *msg, int msg_flags)
+rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr *u_msg, int msg_flags)
 {
 struct rtsocket *sock = rtdm_fd_to_private(fd);
 ssize_t len;
@@ -314,11 +314,11 @@ rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr 
*msg, int msg_flags)
 struct sockaddr_ll  sll;
 intret, flags;
 nanosecs_rel_t  timeout = sock->timeout;
-struct user_msghdr _msg;
+struct user_msghdr _msg, *msg;
 socklen_t namelen;
 struct iovec iov_fast[RTDM_IOV_FASTMAX], *iov;
 
-msg = rtnet_get_arg(fd, &_msg, msg, sizeof(*msg));
+msg = rtnet_get_arg(fd, &_msg, u_msg, sizeof(_msg));
 if (IS_ERR(msg))
return PTR_ERR(msg);

@@ -364,12 +364,12 @@ rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr 
*msg, int msg_flags)
/* Ethernet specific - we rather need some parse handler here */
memcpy(sll.sll_addr, rtskb->mac.ethernet->h_source, ETH_ALEN);
sll.sll_halen = ETH_ALEN;
-   ret = rtnet_put_arg(fd, >msg_name, , sizeof(sll));
+   ret = rtnet_put_arg(fd, msg->msg_name, , sizeof(sll));
if (ret)
goto fail;
 
namelen = sizeof(sll);
-   ret = rtnet_put_arg(fd, >msg_namelen, , sizeof(namelen));
+   ret = rtnet_put_arg(fd, _msg->msg_namelen, , sizeof(namelen));
if (ret)
goto fail;
 }
@@ -389,7 +389,7 @@ rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr 
*msg, int msg_flags)
 if (copy_len > len) {
copy_len = len;
flags = msg->msg_flags | MSG_TRUNC;
-   ret = rtnet_put_arg(fd, >msg_flags, , sizeof(flags));
+   ret = rtnet_put_arg(fd, _msg->msg_flags, , sizeof(flags));
if (ret)
goto fail;
 }


___
Xenomai-git mailing list
Xenomai-git@xenomai.org
https://xenomai.org/mailman/listinfo/xenomai-git


[Xenomai-git] Philippe Gerum : net/packet: ioctl: remove direct references to user memory (3)

2018-01-15 Thread git repository hosting
Module: xenomai-3
Branch: wip/rtnet-fixes
Commit: a9e0c0a735ae23a58f05c1408e244a3f9cfdc910
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=a9e0c0a735ae23a58f05c1408e244a3f9cfdc910

Author: Philippe Gerum 
Date:   Sun Jan  7 18:24:18 2018 +0100

net/packet: ioctl: remove direct references to user memory (3)

---

 kernel/drivers/net/stack/packet/af_packet.c |   12 ++--
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/kernel/drivers/net/stack/packet/af_packet.c 
b/kernel/drivers/net/stack/packet/af_packet.c
index 56daba8..9fa985d 100644
--- a/kernel/drivers/net/stack/packet/af_packet.c
+++ b/kernel/drivers/net/stack/packet/af_packet.c
@@ -305,7 +305,7 @@ static int rt_packet_ioctl(struct rtdm_fd *fd, unsigned int 
request, void __user
  *  rt_packet_recvmsg
  */
 static ssize_t
-rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr *msg, int msg_flags)
+rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr *u_msg, int msg_flags)
 {
 struct rtsocket *sock = rtdm_fd_to_private(fd);
 ssize_t len;
@@ -314,11 +314,11 @@ rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr 
*msg, int msg_flags)
 struct sockaddr_ll  sll;
 intret, flags;
 nanosecs_rel_t  timeout = sock->timeout;
-struct user_msghdr _msg;
+struct user_msghdr _msg, *msg;
 socklen_t namelen;
 struct iovec iov_fast[RTDM_IOV_FASTMAX], *iov;
 
-msg = rtnet_get_arg(fd, &_msg, msg, sizeof(*msg));
+msg = rtnet_get_arg(fd, &_msg, u_msg, sizeof(_msg));
 if (IS_ERR(msg))
return PTR_ERR(msg);

@@ -364,12 +364,12 @@ rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr 
*msg, int msg_flags)
/* Ethernet specific - we rather need some parse handler here */
memcpy(sll.sll_addr, rtskb->mac.ethernet->h_source, ETH_ALEN);
sll.sll_halen = ETH_ALEN;
-   ret = rtnet_put_arg(fd, >msg_name, , sizeof(sll));
+   ret = rtnet_put_arg(fd, msg->msg_name, , sizeof(sll));
if (ret)
goto fail;
 
namelen = sizeof(sll);
-   ret = rtnet_put_arg(fd, >msg_namelen, , sizeof(namelen));
+   ret = rtnet_put_arg(fd, _msg->msg_namelen, , sizeof(namelen));
if (ret)
goto fail;
 }
@@ -389,7 +389,7 @@ rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr 
*msg, int msg_flags)
 if (copy_len > len) {
copy_len = len;
flags = msg->msg_flags | MSG_TRUNC;
-   ret = rtnet_put_arg(fd, >msg_flags, , sizeof(flags));
+   ret = rtnet_put_arg(fd, _msg->msg_flags, , sizeof(flags));
if (ret)
goto fail;
 }


___
Xenomai-git mailing list
Xenomai-git@xenomai.org
https://xenomai.org/mailman/listinfo/xenomai-git


[Xenomai-git] Philippe Gerum : net/packet: ioctl: remove direct references to user memory (3)

2018-01-15 Thread git repository hosting
Module: xenomai-3
Branch: wip/rtnet-fixes
Commit: 535352895bf22f8a1c28493e1f3d70ebfc6f70f2
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=535352895bf22f8a1c28493e1f3d70ebfc6f70f2

Author: Philippe Gerum 
Date:   Sun Jan  7 18:24:18 2018 +0100

net/packet: ioctl: remove direct references to user memory (3)

---

 kernel/drivers/net/stack/packet/af_packet.c |   12 ++--
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/kernel/drivers/net/stack/packet/af_packet.c 
b/kernel/drivers/net/stack/packet/af_packet.c
index 56daba8..9fa985d 100644
--- a/kernel/drivers/net/stack/packet/af_packet.c
+++ b/kernel/drivers/net/stack/packet/af_packet.c
@@ -305,7 +305,7 @@ static int rt_packet_ioctl(struct rtdm_fd *fd, unsigned int 
request, void __user
  *  rt_packet_recvmsg
  */
 static ssize_t
-rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr *msg, int msg_flags)
+rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr *u_msg, int msg_flags)
 {
 struct rtsocket *sock = rtdm_fd_to_private(fd);
 ssize_t len;
@@ -314,11 +314,11 @@ rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr 
*msg, int msg_flags)
 struct sockaddr_ll  sll;
 intret, flags;
 nanosecs_rel_t  timeout = sock->timeout;
-struct user_msghdr _msg;
+struct user_msghdr _msg, *msg;
 socklen_t namelen;
 struct iovec iov_fast[RTDM_IOV_FASTMAX], *iov;
 
-msg = rtnet_get_arg(fd, &_msg, msg, sizeof(*msg));
+msg = rtnet_get_arg(fd, &_msg, u_msg, sizeof(_msg));
 if (IS_ERR(msg))
return PTR_ERR(msg);

@@ -364,12 +364,12 @@ rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr 
*msg, int msg_flags)
/* Ethernet specific - we rather need some parse handler here */
memcpy(sll.sll_addr, rtskb->mac.ethernet->h_source, ETH_ALEN);
sll.sll_halen = ETH_ALEN;
-   ret = rtnet_put_arg(fd, >msg_name, , sizeof(sll));
+   ret = rtnet_put_arg(fd, msg->msg_name, , sizeof(sll));
if (ret)
goto fail;
 
namelen = sizeof(sll);
-   ret = rtnet_put_arg(fd, >msg_namelen, , sizeof(namelen));
+   ret = rtnet_put_arg(fd, _msg->msg_namelen, , sizeof(namelen));
if (ret)
goto fail;
 }
@@ -389,7 +389,7 @@ rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr 
*msg, int msg_flags)
 if (copy_len > len) {
copy_len = len;
flags = msg->msg_flags | MSG_TRUNC;
-   ret = rtnet_put_arg(fd, >msg_flags, , sizeof(flags));
+   ret = rtnet_put_arg(fd, _msg->msg_flags, , sizeof(flags));
if (ret)
goto fail;
 }


___
Xenomai-git mailing list
Xenomai-git@xenomai.org
https://xenomai.org/mailman/listinfo/xenomai-git


[Xenomai-git] Philippe Gerum : net/packet: ioctl: remove direct references to user memory (3)

2018-01-07 Thread git repository hosting
Module: xenomai-3
Branch: wip/rtnet-fixes
Commit: beb05e1ab310cb9ca54e685adf8fbfb3b6797308
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=beb05e1ab310cb9ca54e685adf8fbfb3b6797308

Author: Philippe Gerum 
Date:   Sun Jan  7 18:24:18 2018 +0100

net/packet: ioctl: remove direct references to user memory (3)

---

 kernel/drivers/net/stack/packet/af_packet.c |   12 ++--
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/kernel/drivers/net/stack/packet/af_packet.c 
b/kernel/drivers/net/stack/packet/af_packet.c
index 56daba8..9fa985d 100644
--- a/kernel/drivers/net/stack/packet/af_packet.c
+++ b/kernel/drivers/net/stack/packet/af_packet.c
@@ -305,7 +305,7 @@ static int rt_packet_ioctl(struct rtdm_fd *fd, unsigned int 
request, void __user
  *  rt_packet_recvmsg
  */
 static ssize_t
-rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr *msg, int msg_flags)
+rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr *u_msg, int msg_flags)
 {
 struct rtsocket *sock = rtdm_fd_to_private(fd);
 ssize_t len;
@@ -314,11 +314,11 @@ rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr 
*msg, int msg_flags)
 struct sockaddr_ll  sll;
 intret, flags;
 nanosecs_rel_t  timeout = sock->timeout;
-struct user_msghdr _msg;
+struct user_msghdr _msg, *msg;
 socklen_t namelen;
 struct iovec iov_fast[RTDM_IOV_FASTMAX], *iov;
 
-msg = rtnet_get_arg(fd, &_msg, msg, sizeof(*msg));
+msg = rtnet_get_arg(fd, &_msg, u_msg, sizeof(_msg));
 if (IS_ERR(msg))
return PTR_ERR(msg);

@@ -364,12 +364,12 @@ rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr 
*msg, int msg_flags)
/* Ethernet specific - we rather need some parse handler here */
memcpy(sll.sll_addr, rtskb->mac.ethernet->h_source, ETH_ALEN);
sll.sll_halen = ETH_ALEN;
-   ret = rtnet_put_arg(fd, >msg_name, , sizeof(sll));
+   ret = rtnet_put_arg(fd, msg->msg_name, , sizeof(sll));
if (ret)
goto fail;
 
namelen = sizeof(sll);
-   ret = rtnet_put_arg(fd, >msg_namelen, , sizeof(namelen));
+   ret = rtnet_put_arg(fd, _msg->msg_namelen, , sizeof(namelen));
if (ret)
goto fail;
 }
@@ -389,7 +389,7 @@ rt_packet_recvmsg(struct rtdm_fd *fd, struct user_msghdr 
*msg, int msg_flags)
 if (copy_len > len) {
copy_len = len;
flags = msg->msg_flags | MSG_TRUNC;
-   ret = rtnet_put_arg(fd, >msg_flags, , sizeof(flags));
+   ret = rtnet_put_arg(fd, _msg->msg_flags, , sizeof(flags));
if (ret)
goto fail;
 }


___
Xenomai-git mailing list
Xenomai-git@xenomai.org
https://xenomai.org/mailman/listinfo/xenomai-git