diff mbox

net: fix uninitialized variable issue

Message ID 20151215184617.11620.23369.stgit@tstruk-mobl1 (mailing list archive)
State Not Applicable
Delegated to: Herbert Xu
Headers show

Commit Message

Tadeusz Struk Dec. 15, 2015, 6:46 p.m. UTC
msg_iocb needs to be initialized on the recv/recvfrom path.
Otherwise afalg will wrongly interpret it as an async call.

Cc: stable@vger.kernel.org
Reported-by: Harald Freudenberger <freude@linux.vnet.ibm.com>
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com>
---
 net/socket.c |    1 +
 1 file changed, 1 insertion(+)


--
To unsubscribe from this list: send the line "unsubscribe linux-crypto" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

Eric Dumazet Dec. 15, 2015, 7:02 p.m. UTC | #1
On Tue, 2015-12-15 at 10:46 -0800, Tadeusz Struk wrote:
> msg_iocb needs to be initialized on the recv/recvfrom path.
> Otherwise afalg will wrongly interpret it as an async call.
> 
> Cc: stable@vger.kernel.org
> Reported-by: Harald Freudenberger <freude@linux.vnet.ibm.com>
> Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com>
> ---
>  net/socket.c |    1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/net/socket.c b/net/socket.c
> index dd2c247..80ca820 100644
> --- a/net/socket.c
> +++ b/net/socket.c
> @@ -1702,6 +1702,7 @@ SYSCALL_DEFINE6(recvfrom, int, fd, void __user *, ubuf, size_t, size,
>  	msg.msg_name = addr ? (struct sockaddr *)&address : NULL;
>  	/* We assume all kernel code knows the size of sockaddr_storage */
>  	msg.msg_namelen = 0;
> +	msg.msg_iocb = NULL;
>  	if (sock->file->f_flags & O_NONBLOCK)
>  		flags |= MSG_DONTWAIT;
>  	err = sock_recvmsg(sock, &msg, iov_iter_count(&msg.msg_iter), flags);
> 

Do not add "Cc: stable@vger.kernel.org" for networking patches, thanks 
( Documentation/networking/netdev-FAQ.txt )

Do you know when was this bug added ?

Please add the 

Fixes:  12-digit-sha1 ("patch title")

Thanks.


--
To unsubscribe from this list: send the line "unsubscribe linux-crypto" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
David Miller Dec. 15, 2015, 8:47 p.m. UTC | #2
From: Tadeusz Struk <tadeusz.struk@intel.com>
Date: Tue, 15 Dec 2015 10:46:17 -0800

> msg_iocb needs to be initialized on the recv/recvfrom path.
> Otherwise afalg will wrongly interpret it as an async call.
> 
> Cc: stable@vger.kernel.org
> Reported-by: Harald Freudenberger <freude@linux.vnet.ibm.com>
> Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com>

Looks good, applied, thanks.
--
To unsubscribe from this list: send the line "unsubscribe linux-crypto" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Tadeusz Struk Dec. 15, 2015, 10:42 p.m. UTC | #3
On 12/15/2015 11:02 AM, Eric Dumazet wrote:
> On Tue, 2015-12-15 at 10:46 -0800, Tadeusz Struk wrote:
>> msg_iocb needs to be initialized on the recv/recvfrom path.
>> Otherwise afalg will wrongly interpret it as an async call.
>>
>> Cc: stable@vger.kernel.org
>> Reported-by: Harald Freudenberger <freude@linux.vnet.ibm.com>
>> Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com>
>> ---
>>  net/socket.c |    1 +
>>  1 file changed, 1 insertion(+)
>>
>> diff --git a/net/socket.c b/net/socket.c
>> index dd2c247..80ca820 100644
>> --- a/net/socket.c
>> +++ b/net/socket.c
>> @@ -1702,6 +1702,7 @@ SYSCALL_DEFINE6(recvfrom, int, fd, void __user *, ubuf, size_t, size,
>>  	msg.msg_name = addr ? (struct sockaddr *)&address : NULL;
>>  	/* We assume all kernel code knows the size of sockaddr_storage */
>>  	msg.msg_namelen = 0;
>> +	msg.msg_iocb = NULL;
>>  	if (sock->file->f_flags & O_NONBLOCK)
>>  		flags |= MSG_DONTWAIT;
>>  	err = sock_recvmsg(sock, &msg, iov_iter_count(&msg.msg_iter), flags);
>>
> 
> Do not add "Cc: stable@vger.kernel.org" for networking patches, thanks 
> ( Documentation/networking/netdev-FAQ.txt )
> 
> Do you know when was this bug added ?
> 
> Please add the 
> 
> Fixes:  12-digit-sha1 ("patch title")
> 

It was added in this commit: 0345f93138b2 ("net: socket: add support for async operations")

Thanks
Eric Dumazet Dec. 15, 2015, 11:15 p.m. UTC | #4
On Tue, 2015-12-15 at 14:42 -0800, Tadeusz Struk wrote:

> It was added in this commit: 0345f93138b2 ("net: socket: add support for async operations")
> 

Thanks !


--
To unsubscribe from this list: send the line "unsubscribe linux-crypto" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/net/socket.c b/net/socket.c
index dd2c247..80ca820 100644
--- a/net/socket.c
+++ b/net/socket.c
@@ -1702,6 +1702,7 @@  SYSCALL_DEFINE6(recvfrom, int, fd, void __user *, ubuf, size_t, size,
 	msg.msg_name = addr ? (struct sockaddr *)&address : NULL;
 	/* We assume all kernel code knows the size of sockaddr_storage */
 	msg.msg_namelen = 0;
+	msg.msg_iocb = NULL;
 	if (sock->file->f_flags & O_NONBLOCK)
 		flags |= MSG_DONTWAIT;
 	err = sock_recvmsg(sock, &msg, iov_iter_count(&msg.msg_iter), flags);