3 *
4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License, Version 1.0 only
6 * (the "License"). You may not use this file except in compliance
7 * with the License.
8 *
9 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10 * or http://www.opensolaris.org/os/licensing.
11 * See the License for the specific language governing permissions
12 * and limitations under the License.
13 *
14 * When distributing Covered Code, include this CDDL HEADER in each
15 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16 * If applicable, add the following below this CDDL HEADER, with the
17 * fields enclosed by brackets "[]" replaced with your own identifying
18 * information: Portions Copyright [yyyy] [name of copyright owner]
19 *
20 * CDDL HEADER END
21 */
22 /*
23 * Copyright 2004 Sun Microsystems, Inc. All rights reserved.
24 * Use is subject to license terms.
25 */
26
27 #pragma ident "%Z%%M% %I% %E% SMI"
28
29 /*
30 * MKS header file. Defines that make programming easier for us.
31 * Includes MKS-specific things and posix routines.
32 *
33 * Copyright 1985, 1993 by Mortice Kern Systems Inc. All rights reserved.
34 *
35 * $Header: /rd/h/rcs/mks.h 1.233 1995/09/28 19:45:19 mark Exp $
36 */
37
38 #ifndef __M_MKS_H__
39 #define __M_MKS_H__
40
41 /*
42 * This should be a feature test macro defined in the Makefile or
43 * cc command line.
44 */
45 #ifndef MKS
46 #define MKS 1
47 #endif
48
319 #define VARARG3(t1, n1, t2, n2, t3, n3) (n1, n2, n3, va_alist) \
320 t1 n1; t2 n2; t3 n3; int va_alist
321 #define VARARG4(t1, n1, t2, n2, t3, n3, t4, n4) (n1, n2, n3, n4, va_alist) \
322 t1 n1; t2 n2; t3 n3; t4 n4; int va_alist
323 #define VARARG5(t1, n1, t2, n2, t3, n3, t4, n4, t5, n5) \
324 (n1, n2, n3, n4, n5, va_alist) \
325 t1 n1; t2 n2; t3 n3; t4 n4; t5 n5; int va_alist
326 #endif
327 #endif
328
329
330 /*
331 * MKS-specific library entry points.
332 */
333 extern char *_cmdname;
334 LEXTERN char *basename (char *);
335 LEXTERN void crc16 (ushort *, ushort);
336 LEXTERN void crcccitt (ushort *, ushort);
337 LEXTERN int eprintf (const char *, ...);
338 LEXTERN void eputs (const char *);
339 LEXTERN pid_t fexecve (const char *, char *const *, char *const *);
340 LEXTERN pid_t fexecvp (const char *, char *const *);
341 LEXTERN pid_t fexecvep (const char *, char *const *, char *const *);
342 LEXTERN int execvep (const char *, char *const *, char *const *);
343 LEXTERN int isabsname (const char *);
344 LEXTERN const char *m_cescape (wint_t);
345 LEXTERN int m_escapec (char **);
346 LEXTERN const char *m_toprint (wint_t);
347 #if M_STTY_CC
348 LEXTERN int m_stty_cc (cc_t* cp, char *str);
349 #endif
350 LEXTERN char *m_cmdname (char *);
351 LEXTERN char *m_strmode (mode_t);
352 LEXTERN char *m_readmode (const char *);
353 LEXTERN char *m_readnum (long *, char *, char **, int);
354 LEXTERN char *m_readunum (unsigned long *, char *, char **, int);
355 LEXTERN mode_t m_getmode (mode_t);
356 LEXTERN int m_wallow (int, const char *);
357 LEXTERN char *m_pathcat (const char *, const char *);
358 LEXTERN void m_sigcleanup (void (*__handler)(int __signo) );
359 LEXTERN void m_defaction (int __signo);
360 LEXTERN char *m_strdup (const char *s);
361 LEXTERN int m_stricmp (const char *, const char *);
|
3 *
4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License, Version 1.0 only
6 * (the "License"). You may not use this file except in compliance
7 * with the License.
8 *
9 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10 * or http://www.opensolaris.org/os/licensing.
11 * See the License for the specific language governing permissions
12 * and limitations under the License.
13 *
14 * When distributing Covered Code, include this CDDL HEADER in each
15 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16 * If applicable, add the following below this CDDL HEADER, with the
17 * fields enclosed by brackets "[]" replaced with your own identifying
18 * information: Portions Copyright [yyyy] [name of copyright owner]
19 *
20 * CDDL HEADER END
21 */
22 /*
23 * Copyright 2014 Garrett D'Amore <garrett@damore.org>
24 *
25 * Copyright 2004 Sun Microsystems, Inc. All rights reserved.
26 * Use is subject to license terms.
27 */
28
29 /*
30 * MKS header file. Defines that make programming easier for us.
31 * Includes MKS-specific things and posix routines.
32 *
33 * Copyright 1985, 1993 by Mortice Kern Systems Inc. All rights reserved.
34 *
35 * $Header: /rd/h/rcs/mks.h 1.233 1995/09/28 19:45:19 mark Exp $
36 */
37
38 #ifndef __M_MKS_H__
39 #define __M_MKS_H__
40
41 /*
42 * This should be a feature test macro defined in the Makefile or
43 * cc command line.
44 */
45 #ifndef MKS
46 #define MKS 1
47 #endif
48
319 #define VARARG3(t1, n1, t2, n2, t3, n3) (n1, n2, n3, va_alist) \
320 t1 n1; t2 n2; t3 n3; int va_alist
321 #define VARARG4(t1, n1, t2, n2, t3, n3, t4, n4) (n1, n2, n3, n4, va_alist) \
322 t1 n1; t2 n2; t3 n3; t4 n4; int va_alist
323 #define VARARG5(t1, n1, t2, n2, t3, n3, t4, n4, t5, n5) \
324 (n1, n2, n3, n4, n5, va_alist) \
325 t1 n1; t2 n2; t3 n3; t4 n4; t5 n5; int va_alist
326 #endif
327 #endif
328
329
330 /*
331 * MKS-specific library entry points.
332 */
333 extern char *_cmdname;
334 LEXTERN char *basename (char *);
335 LEXTERN void crc16 (ushort *, ushort);
336 LEXTERN void crcccitt (ushort *, ushort);
337 LEXTERN int eprintf (const char *, ...);
338 LEXTERN void eputs (const char *);
339 LEXTERN int execvep (const char *, char *const *, char *const *);
340 LEXTERN int isabsname (const char *);
341 LEXTERN const char *m_cescape (wint_t);
342 LEXTERN int m_escapec (char **);
343 LEXTERN const char *m_toprint (wint_t);
344 #if M_STTY_CC
345 LEXTERN int m_stty_cc (cc_t* cp, char *str);
346 #endif
347 LEXTERN char *m_cmdname (char *);
348 LEXTERN char *m_strmode (mode_t);
349 LEXTERN char *m_readmode (const char *);
350 LEXTERN char *m_readnum (long *, char *, char **, int);
351 LEXTERN char *m_readunum (unsigned long *, char *, char **, int);
352 LEXTERN mode_t m_getmode (mode_t);
353 LEXTERN int m_wallow (int, const char *);
354 LEXTERN char *m_pathcat (const char *, const char *);
355 LEXTERN void m_sigcleanup (void (*__handler)(int __signo) );
356 LEXTERN void m_defaction (int __signo);
357 LEXTERN char *m_strdup (const char *s);
358 LEXTERN int m_stricmp (const char *, const char *);
|