func: static int CVE_2013_7264_VULN_l2tp_ip_recvmsg(struct kiocb *iocb, struct sock *sk, struct msghdr size_t len, int noblock, int flags, int *addr_len) struct sockaddr_in * sin = ( struct sockaddr_in * ) msg -> msg_name ; struct sk_buff * skb ; if ( flags & MSG_OOB )  skb = skb_recv_datagram ( sk , flags , noblock , & err ); if ( ! skb )  copied = skb -> len; if ( len < copied )  msg -> msg_flags |= MSG_TRUNC; copied = len; err = skb_copy_datagram_iovec ( skb , 0 , msg -> msg_iov , copied ); if ( err )  if ( sin )  sin -> sin_family = AF_INET; sin -> sin_addr . s_addr = ip_hdr ( skb ) -> saddr; sin -> sin_port = 0; memset ( & sin -> sin_zero , 0 , sizeof ( sin -> sin_zero ) ); 