source: trunk/src/emx/include/sys/uio.h@ 354

Last change on this file since 354 was 354, checked in by bird, 22 years ago

#434: no function redefinitions. TCPCALL not _System.

  • Property cvs2svn:cvs-rev set to 1.8
  • Property svn:eol-style set to native
  • Property svn:executable set to *
File size: 1.7 KB
Line 
1/* sys/uio.h (emx+gcc) */
2
3#ifndef _SYS_UIO_H
4#define _SYS_UIO_H
5#define _SYS_UIO_H_ /*toolkit pollution*/
6
7#if defined (__cplusplus)
8extern "C" {
9#endif
10
11/* bird: standard saith these shall be definedl */
12#include <sys/cdefs.h>
13#include <sys/_types.h>
14
15#if !defined(_SIZE_T_DECLARED) && !defined(_SIZE_T) /* bird: emx */
16typedef __size_t size_t;
17#define _SIZE_T_DECLARED
18#define _SIZE_T /* bird: emx */
19#endif
20
21#if !defined(_SSIZE_T_DECLARED) && !defined(_SSIZE_T) /* bird: emx */
22typedef __ssize_t ssize_t;
23#define _SSIZE_T_DECLARED
24#define _SSIZE_T /* bird: emx */
25#endif
26
27
28struct iovec
29{
30 /* bird: standard saith void* not caddr_t. */
31 void * iov_base;
32#if defined(__32BIT__) && !defined(TCPV40HDRS)
33 size_t iov_len;
34#else
35 int iov_len;
36#endif
37};
38
39
40/* needed for sys\socket.h TCPIPV4 now */
41#ifdef TCPV40HDRS
42struct uio {
43 struct iovec *uio_iov;
44 int uio_iovcnt;
45 off_t uio_offset;
46 int uio_segflg;
47 unsigned int uio_resid;
48};
49#ifndef FREAD
50#define FREAD 1
51#define FWRITE 2
52#endif
53#endif
54
55enum uio_rw { UIO_READ, UIO_WRITE };
56
57#ifndef TCPV40HDRS
58/* Segment flag values. */
59enum uio_seg {
60 UIO_USERSPACE, /* from user data space */
61 UIO_SYSSPACE, /* from system space */
62 UIO_USERISPACE /* from user I space */
63};
64#endif
65
66/* TCPIP versions */
67#ifndef TCPCALL
68#define TCPCALL _System
69#endif
70
71int TCPCALL so_readv (int, __const__ struct iovec *, int);
72int TCPCALL so_writev (int, __const__ struct iovec *, int);
73
74/* EMX versions */
75int readv (int, __const__ struct iovec *, int);
76int writev (int, __const__ struct iovec *, int);
77
78#if defined (__cplusplus)
79}
80#endif
81
82#endif /* not _SYS_UIO_H */
Note: See TracBrowser for help on using the repository browser.