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