Annotation of src/usr.bin/rdist/os-openbsd.h, Revision 1.5
1.5 ! downsj 1: /* * $OpenBSD: os-openbsd.h,v 1.4 1997/02/09 23:58:44 millert Exp $*/
1.1 dm 2: /*
3: * Copyright (c) 1993 Michael A. Cooper
4: * Copyright (c) 1993 Regents of the University of California.
5: * All rights reserved.
6: *
7: * Redistribution and use in source and binary forms, with or without
8: * modification, are permitted provided that the following conditions
9: * are met:
10: * 1. Redistributions of source code must retain the above copyright
11: * notice, this list of conditions and the following disclaimer.
12: * 2. Redistributions in binary form must reproduce the above copyright
13: * notice, this list of conditions and the following disclaimer in the
14: * documentation and/or other materials provided with the distribution.
15: * 3. All advertising materials mentioning features or use of this software
16: * must display the following acknowledgement:
17: * This product includes software developed by the University of
18: * California, Berkeley and its contributors.
19: * 4. Neither the name of the University nor the names of its contributors
20: * may be used to endorse or promote products derived from this software
21: * without specific prior written permission.
22: *
23: * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
24: * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
25: * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
26: * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
27: * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
28: * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
29: * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
30: * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31: * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
32: * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
33: * SUCH DAMAGE.
34: */
35:
36: /*
37: */
38:
39: /*
40: * TEMPLATE os-*.h file
41: */
42:
43: /*
44: * Define the following name for use in #ifdef's.
45: * The value should be all upper-case with no periods (.).
46: */
47: #if !defined(FREEBSD)
48: #define FREEBSD
49: #endif
50:
51: /*
52: * NOTE: FreeBSD uses 64-bit file size semantics, and so you
53: * must be careful when using varargs-type functions
54: * like the *printf family when printing elements which
55: * might be 64-bits (such as stat->st_size from stat.h).
56: */
57:
58: /*
59: * Set process args to messages that show up when running ps(1)
60: *
61: * Under some OS's, the SETARGS code will cause ": is not an identifier"
62: * errors for "special" commands.
63: */
64: #define SETARGS
65:
66: /*
67: * Define the type of directory routines your system has.
68: */
69: #define DIR_TYPE DIR_DIRENT
70:
71: /*
72: * Determine what routines we have to get filesystem info.
73: */
74: #define FSI_TYPE FSI_GETFSSTAT
1.2 dm 75: #ifndef FSTYPENAME
76: #define FSTYPENAME 1 /* For OpenBSD 1.x */
77: #endif
1.1 dm 78:
79: /*
80: * Type of non-blocking I/O.
81: */
82: #define NBIO_TYPE NBIO_FCNTL
83:
84: /*
85: * Type of wait() function to use.
86: */
87: #define WAIT_TYPE WAIT_WAIT3
88:
89: /*
90: * Type of argument passed to wait() (above).
91: */
92: #define WAIT_ARG_TYPE int
93:
94: /*
95: * Select the type of executable file format.
96: */
97: #define EXE_TYPE EXE_AOUT
98:
99: /*
100: * Select the type of statfs() system call (if any).
101: */
102: #define STATFS_TYPE STATFS_BSD
103:
104: /*
105: * Type of arg functions we have.
106: */
107: #define ARG_TYPE ARG_STDARG
108:
109: /*
110: * UID argument type for chown()
111: */
112: typedef uid_t CHOWN_UID_T;
113:
114: /*
115: * GID argument type for chown()
116: */
117: typedef gid_t CHOWN_GID_T;
118:
119: /*
120: * Our types, usually these are uid_t and gid_t.
121: */
122: typedef uid_t UID_T; /* Must be signed */
123: typedef gid_t GID_T; /* Must be signed */
124:
125: /*
126: * Generic pointer, used by memcpy, malloc, etc. Usually char or void.
127: */
128: typedef void POINTER;
129:
130: /*
131: * Type of set file time function available
132: */
133: #define SETFTIME_TYPE SETFTIME_UTIMES
134:
135: /*
136: * Type of set line buffering function available
137: */
138: #define SETBUF_TYPE SETLINEBUF
139:
140: /*
141: * Things we have
142: */
143: #define HAVE_FCHOWN /* Have fchown() */
144: #define HAVE_FCHMOD /* Have fchmod() */
145: #define HAVE_SELECT /* Have select() */
146: #define HAVE_SAVED_IDS /* Have POSIX style saved [ug]id's */
147: #define POSIX_SIGNALS /* Have POSIX signals */
148:
149: /*
150: * Things we need
151: */
152: #define NEED_UNISTD_H /* Need <unistd.h> */
1.5 ! downsj 153: #define NEED_STDLIB_H /* Need <stdlib.h> */
! 154: #define NEED_STRING_H /* Need <string.h> */
1.1 dm 155:
156: /*
157: * Path to the remote shell command.
158: * Define this only if the pathname is different than
159: * that which appears in "include/paths.h".
160: */
1.4 millert 161: #define _PATH_REMSH "/usr/local/bin/ssh" /**/