copyout man page on Darwin

Man page or keyword search:  
man Server   23457 pages
apropos Keyword Search (all sections)
Output format
Darwin logo
[printable version]

COPY(9)			 BSD Kernel Developer's Manual		       COPY(9)

NAME
     copy, copyin, copyinstr, copyout, copystr — kernel copy functions

SYNOPSIS
     #include <sys/types.h>
     #include <sys/systm.h>

     int
     copyin(const void *uaddr, void *kaddr, size_t len);

     int
     copyinstr(const void *uaddr, void *kaddr, size_t len, size_t *done);

     int
     copyout(const void *kaddr, void *uaddr, size_t len);

     int
     copystr(const void *kfaddr, void *kdaddr, size_t len, size_t *done);

DESCRIPTION
     The copy functions are designed to copy contiguous data from one address
     to another.  All but copystr() copy data from user-space to kernel-space
     or vice-versa.

     The copy routines provide the following functionality:

     copyin()	   Copies len bytes of data from the user-space address uaddr
		   to the kernel-space address kaddr.

     copyinstr()   Copies a NUL-terminated string, at most len bytes long,
		   from user-space address uaddr to kernel-space address
		   kaddr.  The number of bytes actually copied, including the
		   terminating NUL, is returned in *done.

     copyout()	   Copies len bytes of data from the kernel-space address
		   kaddr to the user-space address uaddr.

     copystr()	   Copies a NUL-terminated string, at most len bytes long,
		   from kernel-space address kfaddr to kernel-space address
		   kdaddr.  The number of bytes actually copied, including the
		   terminating NUL, is returned in *done.

RETURN VALUES
     The copy functions return 0 on success or the following error on failure:

     [EFAULT]		If a bad address is encountered. When this error is
			returned, the contents of the destination buffer (
			*kaddr for copyin(), copyinstr(), and copystr();
			*uaddr for copyout()) are undefined. For copyinstr()
			and copystr(), the contents of the *done parameter are
			also undefined on a return of EFAULT.

     In addition to EFAULT, copystr() and copyinstr() on failure will return:

     [ENAMETOLONG]	When the string is longer than len bytes. On this
			error return, the destination buffer is not null-ter‐
			minated, but the *done parameter is maintained.

SEE ALSO
     fetch(9), store(9)

BSD				October 2, 2008				   BSD
[top]

List of man pages available for Darwin

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net