diff options
Diffstat (limited to 'net/socket.c')
| -rw-r--r-- | net/socket.c | 8 | 
1 files changed, 5 insertions, 3 deletions
diff --git a/net/socket.c b/net/socket.c index 95ee7d8682e7..4cdbc107606f 100644 --- a/net/socket.c +++ b/net/socket.c @@ -734,8 +734,7 @@ void __sock_recv_timestamp(struct msghdr *msg, struct sock *sk,  	}  	memset(&tss, 0, sizeof(tss)); -	if ((sk->sk_tsflags & SOF_TIMESTAMPING_SOFTWARE || -	     skb_shinfo(skb)->tx_flags & SKBTX_ANY_SW_TSTAMP) && +	if ((sk->sk_tsflags & SOF_TIMESTAMPING_SOFTWARE) &&  	    ktime_to_timespec_cond(skb->tstamp, tss.ts + 0))  		empty = 0;  	if (shhwtstamps && @@ -1997,6 +1996,9 @@ static int copy_msghdr_from_user(struct msghdr *kmsg,  	if (copy_from_user(kmsg, umsg, sizeof(struct msghdr)))  		return -EFAULT; +	if (kmsg->msg_name == NULL) +		kmsg->msg_namelen = 0; +  	if (kmsg->msg_namelen < 0)  		return -EINVAL; @@ -2602,7 +2604,7 @@ SYSCALL_DEFINE2(socketcall, int, call, unsigned long __user *, args)   *   *	This function is called by a protocol handler that wants to   *	advertise its address family, and have it linked into the - *	socket interface. The value ops->family coresponds to the + *	socket interface. The value ops->family corresponds to the   *	socket system call protocol family.   */  int sock_register(const struct net_proto_family *ops)  |