Provided by:
linux-doc-2.6.15_2.6.15-23.39_all 
NAME
move_addr_to_user - copy an address to user space
SYNOPSIS
int move_addr_to_user (void * kaddr, int klen, void __user * uaddr,
int __user * ulen);
ARGUMENTS
kaddr kernel space address
klen length of address in kernel
uaddr user space address
ulen pointer to user length field
DESCRIPTION
The value pointed to by ulen on entry is the buffer length available.
This is overwritten with the buffer space used. -EINVAL is returned if
an overlong buffer is specified or a negative buffer size. -EFAULT is
returned if either the buffer or the length field are not accessible.
After copying the data up to the limit the user specifies, the true
length of the data is written over the length limit the user specified.
Zero is returned for a success.