.\" This manpage has been automatically generated by docbook2man
.\" from a DocBook document. This tool can be found at:
.\"
.\" Please send any bug reports, improvements, comments, patches,
.\" etc. to Steve Cheng .
.TH "MOVE_ADDR_TO_USER" "" "06 October 2005" "" ""
.SH NAME
move_addr_to_user \- copy an address to user space
.SH SYNOPSIS
"SYNOPSIS"
.sp
\fB
.sp
int move_addr_to_user (void * \fIkaddr\fB, int \fIklen\fB, void __user * \fIuaddr\fB, int __user * \fIulen\fB);
\fR
.SH "ARGUMENTS"
.TP
\fB\fIkaddr\fB\fR
kernel space address
.TP
\fB\fIklen\fB\fR
length of address in kernel
.TP
\fB\fIuaddr\fB\fR
user space address
.TP
\fB\fIulen\fB\fR
pointer to user length field
.SH "DESCRIPTION"
.PP
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.