home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
NeXTSTEP 3.2 (Developer)
/
NS_dev_3.2.iso
/
NextDeveloper
/
Headers
/
bsd
/
sys
/
uio.h
< prev
next >
Wrap
Text File
|
1993-10-19
|
2KB
|
86 lines
/*
* Mach Operating System
* Copyright (c) 1989 Carnegie-Mellon University
* Copyright (c) 1988 Carnegie-Mellon University
* Copyright (c) 1987 Carnegie-Mellon University
* All rights reserved. The CMU software License Agreement specifies
* the terms and conditions for use and redistribution.
*/
/*
* HISTORY
* $Log: uio.h,v $
* 16-Feb-90 Gregg Kellogg (gk) at NeXT
* Added uio_fmode flag for vfs compatibility.
*
* Revision 2.7 89/04/22 15:32:36 gm0w
* Removed MACH_VFS changes.
* [89/04/14 gm0w]
*
* Revision 2.6 89/03/09 22:09:37 rpd
* More cleanup.
*
* Revision 2.5 89/02/25 17:57:49 gm0w
* Made CMUCS and MACH_VFS conditional code always
* true.
* [89/02/14 mrt]
*
* Revision 2.4 89/01/18 01:20:06 jsb
* Vnode support: define uio_seg as alias for uio_segflg (for Sun-derived
* code which uses uio_seg).
* [89/01/13 jsb]
*
* Revision 2.3 88/08/24 02:51:09 mwyoung
* Adjusted include file references.
* [88/08/17 02:26:52 mwyoung]
*
* 26-Feb-88 David Kirschen (kirschen) at Encore Computer Corporation
* Added #include of types.h to get caddr_t.
*
* 06-Jan-88 Jay Kistler (jjk) at Carnegie Mellon University
* Added declarations for __STDC__.
*
*/
/*
* Copyright (c) 1982, 1986 Regents of the University of California.
* All rights reserved. The Berkeley software License Agreement
* specifies the terms and conditions for redistribution.
*
* @(#)uio.h 7.1 (Berkeley) 6/4/86
*/
#ifndef _SYS_UIO_H_
#define _SYS_UIO_H_
#import <sys/types.h>
struct iovec {
caddr_t iov_base;
int iov_len;
};
struct uio {
struct iovec *uio_iov;
int uio_iovcnt;
off_t uio_offset;
int uio_segflg;
short uio_fmode;
int uio_resid;
};
enum uio_rw { UIO_READ, UIO_WRITE };
/*
* Segment flag values (should be enum).
*/
#define UIO_USERSPACE 0 /* from user data space */
#define UIO_SYSSPACE 1 /* from system space */
#define UIO_USERISPACE 2 /* from user I space */
#if defined(__STDC__) && !defined(KERNEL)
extern int readv(int, struct iovec *, int);
extern int writev(int, struct iovec *, int);
#endif defined(__STDC__) && !defined(KERNEL)
#endif _SYS_UIO_H_