taglinefilesource code
ulen123include/linux/socket.hextern int move_addr_to_user(void *kaddr, int klen, void *uaddr, int *ulen);
ulen124include/linux/socket.hextern int move_addr_to_kernel(void *uaddr, int ulen, void *kaddr);
ulen304net/ipv4/udp.cint ulen = len + sizeof(struct udphdr);
ulen308net/ipv4/udp.cif(ulen>65535-sizeof(struct iphdr))
ulen313net/ipv4/udp.cufh.uh.len = htons(ulen);
ulen316net/ipv4/udp.cufh.other = (htons(ulen) << 16) + IPPROTO_UDP*256;
ulen326net/ipv4/udp.ca = ip_build_xmit(sk, udp_getfrag_nosum, &ufh, ulen, 
ulen329net/ipv4/udp.ca = ip_build_xmit(sk, udp_getfrag, &ufh, ulen, 
ulen600net/ipv4/udp.cunsigned short ulen;
ulen618net/ipv4/udp.culen = ntohs(uh->len);
ulen620net/ipv4/udp.cif (ulen > len || len < sizeof(*uh) || ulen < sizeof(*uh)) 
ulen622net/ipv4/udp.cNETDEBUG(printk("UDP: short packet: %d/%d\n", ulen, len));
ulen650net/ipv4/udp.culen));
ulen657net/ipv4/udp.clen=ulen;
ulen122net/socket.cint move_addr_to_kernel(void *uaddr, int ulen, void *kaddr)
ulen125net/socket.cif(ulen<0||ulen>MAX_SOCK_ADDR)
ulen127net/socket.cif(ulen==0)
ulen129net/socket.cif((err=verify_area(VERIFY_READ,uaddr,ulen))<0)
ulen131net/socket.cmemcpy_fromfs(kaddr,uaddr,ulen);
ulen135net/socket.cint move_addr_to_user(void *kaddr, int klen, void *uaddr, int *ulen)
ulen141net/socket.cif((err=verify_area(VERIFY_WRITE,ulen,sizeof(*ulen)))<0)
ulen143net/socket.clen=get_user(ulen);
ulen154net/socket.cput_user(len,ulen);