./usr/include/ 40755 1676 334 0 5567231722 11216 5ustar hjlisl./usr/include/_G_config.h100644 1676 334 2533 5550052103 13323 0ustar hjlisl/* AUTOMATICALLY GENERATED; DO NOT EDIT! */ #ifndef _G_config_h #define _G_config_h #define _LINUX_C_LIB_VERSION "4.5.26" #define _LINUX_C_LIB_VERSION_MAJOR 4 #define _LINUX_C_LIB_VERSION_MINOR 5 #define _LINUX_C_LIB_VERSION_SUBMINOR 26 #define _G_LIB_VERSION "0.63" #define _G_NAMES_HAVE_UNDERSCORE 1 #define _G_HAVE_ST_BLKSIZE 1 typedef long _G_clock_t; typedef unsigned short _G_dev_t; typedef long int _G_fpos_t; typedef unsigned short _G_gid_t; typedef unsigned long _G_ino_t; typedef unsigned short _G_mode_t; typedef unsigned short _G_nlink_t; typedef long _G_off_t; typedef int _G_pid_t; typedef int _G_ptrdiff_t; typedef unsigned int _G_sigset_t; typedef unsigned int _G_size_t; typedef long _G_time_t; typedef unsigned short _G_uid_t; typedef long int _G_wchar_t; typedef int /* default */ _G_int32_t; typedef unsigned int /* default */ _G_uint32_t; typedef int _G_ssize_t; typedef void * _G_va_list; #define _G_signal_return_type void #define _G_sprintf_return_type int #define _G_BUFSIZ 1024 #define _G_FOPEN_MAX 256 #define _G_FILENAME_MAX 1024 #define _G_NULL 0 /* default */ #define _G_ARGS(ARGLIST) (...) #define _G_HAVE_ATEXIT 1 #define _G_HAVE_SYS_RESOURCE 1 #define _G_HAVE_SYS_SOCKET 1 #define _G_HAVE_SYS_WAIT 1 #define _G_HAVE_UNISTD 1 #define _G_HAVE_DIRENT 1 #define _G_HAVE_CURSES 1 #define _G_MATH_H_INLINES 0 #endif /* !_G_config_h */ ./usr/include/demangle.h100644 1676 334 5360 5535444117 13243 0ustar hjlisl/* Defs for interface to demanglers. Copyright 1992 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #if !defined (_DEMANGLE_H) #define _DEMANGLE_H #include __BEGIN_DECLS /* Options passed to cplus_demangle (in 2nd parameter). */ #define DMGL_NO_OPTS 0 /* For readability... */ #define DMGL_PARAMS (1 << 0) /* Include function args */ #define DMGL_ANSI (1 << 1) /* Include const, volatile, etc */ #define DMGL_AUTO (1 << 8) #define DMGL_GNU (1 << 9) #define DMGL_LUCID (1 << 10) #define DMGL_ARM (1 << 11) /* If none of these are set, use 'current_demangling_style' as the default. */ #define DMGL_STYLE_MASK (DMGL_AUTO|DMGL_GNU|DMGL_LUCID|DMGL_ARM) /* Enumeration of possible demangling styles. Lucid and ARM styles are still kept logically distinct, even though they now both behave identically. The resulting style is actual the union of both. I.E. either style recognizes both "__pt__" and "__rf__" for operator "->", even though the first is lucid style and the second is ARM style. (FIXME?) */ extern enum demangling_styles { unknown_demangling = 0, auto_demangling = DMGL_AUTO, gnu_demangling = DMGL_GNU, lucid_demangling = DMGL_LUCID, arm_demangling = DMGL_ARM } current_demangling_style; /* Define string names for the various demangling styles. */ #define AUTO_DEMANGLING_STYLE_STRING "auto" #define GNU_DEMANGLING_STYLE_STRING "gnu" #define LUCID_DEMANGLING_STYLE_STRING "lucid" #define ARM_DEMANGLING_STYLE_STRING "arm" /* Some macros to test what demangling style is active. */ #define CURRENT_DEMANGLING_STYLE current_demangling_style #define AUTO_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_AUTO) #define GNU_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_GNU) #define LUCID_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_LUCID) #define ARM_DEMANGLING (CURRENT_DEMANGLING_STYLE & DMGL_ARM) extern char * cplus_demangle __P((__const char *mangled, int options)); /* Note: This sets global state. FIXME if you care about multi-threading. */ extern void set_cplus_marker_for_demangling __P((int ch)); __END_DECLS #endif /* _DEMANGLE_H */ ./usr/include/gnu-stabs.h100644 1676 334 5746 5536015350 13374 0ustar hjlisl/* Copyright (C) 1991, 1992 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. The GNU C Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should have received a copy of the GNU Library General Public License along with the GNU C Library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef __GNU_STABS_H #define __GNU_STABS_H 1 /* We will figure it out later. H.J. */ #if !defined(__PIC__) && !defined(__pic__) #ifndef HAVE_GNU_LD #define HAVE_GNU_LD #endif #endif #ifdef HAVE_GNU_LD /* Alias a function: function_alias(creat, _creat, int, (file, mode), DEFUN(creat, (file, mode), CONST char *file AND int mode)) Yes, this is very repetitive. Nothing you can do about it, so shut up. */ #define function_alias(name, _name, type, args, defun) \ symbol_alias (_name, name); #define function_alias_void(name, _name, args, defun) \ symbol_alias (_name, name); /* Make references to ALIAS refer to SYMBOL. */ #ifdef __STDC__ #define symbol_alias(symbol, alias) \ asm(".stabs \"" "_" #alias "\",11,0,0,0\n"\ ".stabs \"" "_" #symbol "\",1,0,0,0") #else /* Your assembler better grok this right! */ #define symbol_alias(symbol, alias) \ asm(".stabs \"_/**/alias\",11,0,0,0\n.stabs \"_/**/symbol\",1,0,0,0") #endif /* Issue a warning message from the linker whenever SYMBOL is referenced. */ #ifdef __STDC__ #define warn_references(symbol, msg) \ asm(".stabs \"" msg "\",30,0,0,0\n" \ ".stabs \"_" #symbol "\",1,0,0,0") #else #define warn_references(symbol, msg) \ asm(".stabs msg,30,0,0,0\n.stabs \"_/**/symbol\",1,0,0,0") #endif #ifdef __STDC__ #define stub_warning(name) \ warn_references(name, \ "warning: " #name " is not implemented and will always fail") #else #define stub_warning(name) \ warn_references(name, \ "warning: name is not implemented and will always fail") #endif #ifdef __STDC__ #define text_set_element(set, symbol) \ asm(".stabs \"_" #set "\",23,0,0,_" #symbol) #define data_set_element(set, symbol) \ asm(".stabs \"_" #set "\",25,0,0,_" #symbol) #else #define text_set_element(set, symbol) \ asm(".stabs \"_/**/set\",23,0,0,_/**/symbol") #define data_set_element(set, symbol) \ asm(".stabs \"_/**/set\",25,0,0,_/**/symbol") #endif #else /* No GNU stabs. */ #define function_alias(name, _name, type, args, defun) \ type defun { return _name args; } #define function_alias_void(name, _name, args, defun) \ void defun { _name args; } #endif /* GNU stabs. */ #endif /* gnu-stabs.h */ ./usr/include/syscall.h100644 1676 334 1220 5537131525 13126 0ustar hjlisl#ifndef _SYSCALL_H #define _SYSCALL_H #include #include #include #ifndef __MAX_ERRNO #define __MAX_ERRNO 4096 #endif /* In case of returning a memory address, negative values may * not mean error. */ #ifdef __CHECK_RETURN_ADDR #define __check_errno(__res) \ ((__res) >= 0 || (__res) < -__MAX_ERRNO) #else #define __check_errno(__res) ((__res) >= 0) #endif __BEGIN_DECLS extern int syscall __P ((int __number, ...)); __END_DECLS #if defined(__i386__) # include #elif defined (__mc68000__) # include #else # error architecture not supported by Linux C library #endif #endif ./usr/include/sys/ 40755 1676 334 0 5545104476 12035 5ustar hjlisl./usr/include/sys/ipc.h100644 1676 334 442 5536007514 13031 0ustar hjlisl#ifndef _SYS_IPC_H #define _SYS_IPC_H #include #include __BEGIN_DECLS extern key_t ftok __P((char *__pathname, char __proc_id)); extern int __ipc __P((int __call, int _first, int __second, int __third, void * __ptr)); __END_DECLS #endif /* _SYS_IPC_H */ ./usr/include/sys/mman.h100644 1676 334 1025 5536515220 13222 0ustar hjlisl#ifndef _SYS_MMAN_H #define _SYS_MMAN_H #include #include #include #ifndef MAP_ANON #define MAP_ANON MAP_ANONYMOUS /* idem */ #endif #define MAP_FILE 0x00 /* The 'normal' way: mapped from file */ __BEGIN_DECLS extern caddr_t mmap __P((caddr_t __addr, size_t __len, int __prot, int __flags, int __fd, off_t __off)); extern int munmap __P((caddr_t __addr, size_t __len)); extern int mprotect __P ((caddr_t __addr, size_t __len, int __prot)); __END_DECLS #endif /* _SYS_MMAN_H */ ./usr/include/sys/debugreg.h100644 1676 334 34 5537501507 14021 0ustar hjlisl#include ./usr/include/netinet/ 40755 1676 334 0 5567231721 12663 5ustar hjlisl./usr/include/netinet/ip_tcp.h100644 1676 334 3746 5537505105 14416 0ustar hjlisl/* * Copyright (c) 1982, 1986 Regents of the University of California. * All rights reserved. * * Redistribution and use in source and binary forms are permitted * provided that the above copyright notice and this paragraph are * duplicated in all such forms and that any documentation, * advertising materials, and other materials related to such * distribution and use acknowledge that the software was developed * by the University of California, Berkeley. The name of the * University may not be used to endorse or promote products derived * from this software without specific prior written permission. * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. * * @(#)tcp.h 7.5 (Berkeley) 6/29/88 */ #ifndef _NETINET_IP_TCP_H #define _NETINET_IP_TCP_H #include #include typedef u_long tcp_seq; /* * TCP header. * Per RFC 793, September, 1981. */ struct tcphdr { u_short th_sport; /* source port */ u_short th_dport; /* destination port */ tcp_seq th_seq; /* sequence number */ tcp_seq th_ack; /* acknowledgement number */ #if __BYTE_ORDER == __LITTLE_ENDIAN u_char th_x2:4, /* (unused) */ th_off:4; /* data offset */ #endif #if __BYTE_ORDER == __BIG_ENDIAN u_char th_off:4, /* data offset */ th_x2:4; /* (unused) */ #endif u_char th_flags; #define TH_FIN 0x01 #define TH_SYN 0x02 #define TH_RST 0x04 #define TH_PUSH 0x08 #define TH_ACK 0x10 #define TH_URG 0x20 u_short th_win; /* window */ u_short th_sum; /* checksum */ u_short th_urp; /* urgent pointer */ }; #define TCPOPT_EOL 0 #define TCPOPT_NOP 1 #define TCPOPT_MAXSEG 2 /* * Default maximum segment size for TCP. * With an IP MSS of 576, this is 536, * but 512 is probably more convenient. */ #ifdef lint #define TCP_MSS 536 #else #define TCP_MSS MIN(512, IP_MSS - sizeof (struct tcpiphdr)) #endif #endif /* _NETINET_TCP_H */ ./usr/include/netinet/in_systm.h100644 1676 334 34 5424650256 14733 0ustar hjlisl#include ./usr/include/waitflags.h100644 1676 334 2204 5537510235 13437 0ustar hjlisl/* Definitions of flag bits for `waitpid' et al. Copyright (C) 1994 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. The GNU C Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should have received a copy of the GNU Library General Public License along with the GNU C Library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef _WAITFLAGS_H #define _WAITFLAGS_H 1 #ifdef __linux__ #include #else /* Bits in the third argument to `waitpid'. */ #define WNOHANG 1 /* Don't block waiting. */ #define WUNTRACED 2 /* Report status of stopped children. */ #endif #endif /* waitflags.h */ ./usr/include/lastlog.h100644 1676 334 256 5545076623 13117 0ustar hjlisl#ifndef _LASTLOG_H #define _LASTLOG_H #include struct lastlog { long ll_time; char ll_line[UT_LINESIZE]; char ll_host[UT_HOSTSIZE]; }; #endif /* _LASTLOG_H */ ./usr/include/utmp.h100644 1676 334 2660 5550021605 12442 0ustar hjlisl/* utmp.h for Linux, by poe@daimi.aau.dk */ #ifndef UTMP_H #define UTMP_H #include #include #include #include #define UTMP_FILE _PATH_UTMP #define WTMP_FILE _PATH_WTMP #define UTMP_FILENAME UTMP_FILE #define WTMP_FILENAME WTMP_FILE /* defines for the ut_type field */ #define UT_UNKNOWN 0 /* size of user name */ #define UT_NAMESIZE 8 #define UT_LINESIZE 12 #define UT_HOSTSIZE 16 #define RUN_LVL 1 #define BOOT_TIME 2 #define NEW_TIME 3 #define OLD_TIME 4 #define INIT_PROCESS 5 #define LOGIN_PROCESS 6 #define USER_PROCESS 7 #define DEAD_PROCESS 8 struct utmp { short ut_type; /* type of login */ pid_t ut_pid; /* pid of login-process */ char ut_line[UT_LINESIZE]; /* devicename of tty -"/dev/", null-term */ char ut_id[2]; /* abbrev. ttyname, as 01, s1 etc. */ time_t ut_time; /* logintime */ char ut_user[UT_NAMESIZE]; /* username, not null-term */ char ut_host[UT_HOSTSIZE]; /* hostname for remote login... */ long ut_addr; /* IP addr of remote host */ }; #define ut_name ut_user __BEGIN_DECLS extern void setutent __P ((void)); extern void utmpname __P ((__const char *)); extern struct utmp *getutent __P ((void)); extern struct utmp *getutid __P ((struct utmp *)); extern struct utmp *getutline __P ((struct utmp *)); extern void pututline __P ((struct utmp *)); extern struct utmp *_getutline __P ((struct utmp *)); extern void endutent __P ((void)); __END_DECLS #endif ./usr/include/m68k/ 40755 1676 334 0 5550065471 12001 5ustar hjlisl./usr/include/m68k/syscall.h100644 1676 334 6463 5542403402 13721 0ustar hjlisl#ifndef _M68K_SYSCALL_H #define _M68K_SYSCALL_H #define _syscall0(type,name) \ type name(void) \ { \ register long __res __asm__ ("d0") = SYS_##name; \ __asm__ __volatile__ ("trap #0" \ : "=g" (__res) \ : "0" (SYS_##name)); \ if (__check_errno(__res)) \ return (type) __res; \ errno = -__res; \ return -1; \ } #define _syscall1(type,name,atype,a) \ type name(atype a) \ { \ register long __res __asm__ ("d0") = SYS_##name; \ __asm__ __volatile__ ("movel %2,d1\n\t" \ "trap #0" \ : "=g" (__res) \ : "0" (SYS_##name), "g" ((long)(a)) \ : "d1"); \ if (__check_errno(__res)) \ return (type) __res; \ errno = -__res; \ return -1; \ } #define _syscall2(type,name,atype,a,btype,b) \ type name(atype a,btype b) \ { \ register long __res __asm__ ("d0") = SYS_##name; \ __asm__ __volatile__ ("movel %2,d1\n\t" \ "movel %3,d2\n\t" \ "trap #0" \ : "=g" (__res) \ : "0" (SYS_##name), "g" ((long)(a)), \ "g" ((long)(b)) \ : "d1", "d2"); \ if (__check_errno(__res)) \ return (type) __res; \ errno = -__res; \ return -1; \ } #define _syscall3(type,name,atype,a,btype,b,ctype,c) \ type name(atype a,btype b,ctype c) \ { \ register long __res __asm__ ("d0") = SYS_##name; \ __asm__ __volatile__ ("movel %2,d1\n\t" \ "movel %3,d2\n\t" \ "movel %4,d3\n\t" \ "trap #0" \ : "=g" (__res) \ : "0" (SYS_##name), "g" ((long)(a)), \ "g" ((long)(b)), \ "g" ((long)(c)) \ : "d1", "d2", "d3"); \ if (__check_errno(__res)) \ return (type) __res; \ errno = -__res; \ return -1; \ } #define _syscall4(type,name,atype,a,btype,b,ctype,c,dtype,d) \ type name (atype a, btype b, ctype c, dtype d) \ { \ register long __res __asm__ ("d0") = SYS_##name; \ __asm__ __volatile__ ("movel %2,d1\n\t" \ "movel %3,d2\n\t" \ "movel %4,d3\n\t" \ "movel %5,d4\n\t" \ "trap #0" \ : "=g" (__res) \ : "0" (SYS_##name), "g" ((long)(a)), \ "g" ((long)(b)), \ "g" ((long)(c)), \ "g" ((long)(d)) \ : "d1", "d2", "d3", "d4"); \ if (__check_errno(__res)) \ return (type) __res; \ errno = -__res; \ return -1; \ } #define _syscall5(type,name,atype,a,btype,b,ctype,c,dtype,d,etype,e) \ type name (atype a,btype b,ctype c,dtype d,etype e) \ { \ register long __res __asm__ ("d0") = SYS_##name; \ __asm__ __volatile__ ("movel %2,d1\n\t" \ "movel %3,d2\n\t" \ "movel %4,d3\n\t" \ "movel %5,d4\n\t" \ "movel %6,d5\n\t" \ "trap #0" \ : "=g" (__res) \ : "0" (SYS_##name), "g" ((long)(a)), \ "g" ((long)(b)), \ "g" ((long)(c)), \ "g" ((long)(d)), \ "g" ((long)(e)) \ : "d1", "d2", "d3", "d4", "d5"); \ if (__check_errno(__res)) \ return (type) __res; \ errno = -__res; \ return -1; \ } #endif /* _M68K_SYSCALL_H */ ./usr/include/math.h100644 1676 334 14132 5542372121 12426 0ustar hjlisl/* The header contains prototypes for mathematical functions * for Linux. */ #ifndef _MATH_H #define _MATH_H #include __BEGIN_DECLS extern __CONSTVALUE double acos __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double acosh __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double asin __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double asinh __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double atan __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double atan2 __P ((double __y, double __x)) __CONSTVALUE2; extern __CONSTVALUE double atanh __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double ceil __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double cos __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double cosh __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double drem __P ((double __x, double __y)) __CONSTVALUE2; extern __CONSTVALUE double exp __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double fabs __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double floor __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double fmod __P ((double __x, double __y)) __CONSTVALUE2; extern __CONSTVALUE double hypot __P ((double __x, double __y)) __CONSTVALUE2; extern double frexp __P ((double __x, int *__exp)); extern __CONSTVALUE double ldexp __P ((double __x, int __exp)) __CONSTVALUE2; extern __CONSTVALUE double log __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double log10 __P ((double __x)) __CONSTVALUE2; extern double modf __P ((double __x, double *__iptr)); extern __CONSTVALUE double pow __P ((double __x, double __y)) __CONSTVALUE2; extern __CONSTVALUE double pow2 __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double pow10 __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double sin __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double sinh __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double sqrt __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double tan __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double tanh __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double erf __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double erfc __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double j0 __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double j1 __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double jn __P ((int __n, double __x)) __CONSTVALUE2; extern __CONSTVALUE double lgamma __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double y0 __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double y1 __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double yn __P ((int __n, double __x)) __CONSTVALUE2; /* Some new functions */ extern __CONSTVALUE double expm1 __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double log1p __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double cbrt __P ((double __x)) __CONSTVALUE2; /* Return if VALUE is finite or NaN, +1 if it is +Infinity, -1 if it is -Infinity. */ extern __CONSTVALUE int __isinf __P ((double __value)) __CONSTVALUE2; /* Return nonzero if VALUE is not a number. */ extern __CONSTVALUE int __isnan __P ((double __value)) __CONSTVALUE2; /* Return nonzero if VALUE is finite and not NaN. */ extern __CONSTVALUE int __finite __P ((double __value)) __CONSTVALUE2; #ifdef __OPTIMIZE__ #define __finite(value) (!__isinf (value) && !__isnan (value)) #endif /* Deal with an infinite or NaN result. If ERROR is ERANGE, result is +Inf; if ERROR is - ERANGE, result is -Inf; otherwise result is NaN. This will set `errno' to either ERANGE or EDOM, and may return an infinity or NaN, or may do something else. */ extern double __infnan __P ((int __error)); /* Return X with its signed changed to Y's. */ extern __CONSTVALUE double __copysign __P ((double __x, double __y)) __CONSTVALUE2; #ifdef __USE_MISC /* Return the integer nearest X in the direction of the prevailing rounding mode. */ extern __CONSTVALUE double __rint __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE double rint __P ((double __x)) __CONSTVALUE2; extern __CONSTVALUE int isinf __P ((double __value)) __CONSTVALUE2; extern __CONSTVALUE int isnan __P ((double __value)) __CONSTVALUE2; extern __CONSTVALUE int finite __P ((double __value)) __CONSTVALUE2; extern __CONSTVALUE double infnan __P ((int __error)) __CONSTVALUE2; extern __CONSTVALUE double copysign __P ((double __x, double __y)) __CONSTVALUE2; #ifdef __OPTIMIZE__ #define isinf(value) __isinf(value) #define isnan(value) __isnan(value) #define infnan(error) __infnan(error) #define finite(value) __finite(value) #define copysign(x, y) __copysign((x), (y)) #endif /* Optimizing. */ #endif /* Use misc. */ __END_DECLS extern int signgam; /* Get machine-dependent HUGE_VAL value (returned on overflow). */ #include /* Get machine-dependent NAN value (returned for some domain errors). */ #ifdef __USE_GNU #include #endif #include #include #ifndef HUGE #define HUGE DBL_MAX #endif #ifndef HUGE_VAL #define HUGE_VAL DBL_MAX #endif #ifndef M_E #define M_E 2.7182818284590452354 #endif #ifndef M_LOG2E #define M_LOG2E 1.4426950408889634074 #endif #ifndef M_LOG10E #define M_LOG10E 0.43429448190325182765 #endif #ifndef M_LN2 #define M_LN2 0.69314718055994530942 #endif #ifndef M_LN10 #define M_LN10 2.30258509299404568402 #endif #ifndef M_PI #define M_PI 3.14159265358979323846 #endif #ifndef M_PI_2 #define M_PI_2 1.57079632679489661923 #endif #ifndef M_1_PI #define M_1_PI 0.31830988618379067154 #endif #ifndef M_PI_4 #define M_PI_4 0.78539816339744830962 #endif #ifndef M_2_PI #define M_2_PI 0.63661977236758134308 #endif #ifndef M_2_SQRTPI #define M_2_SQRTPI 1.12837916709551257390 #endif #ifndef M_SQRT2 #define M_SQRT2 1.41421356237309504880 #endif #ifndef M_SQRT1_2 #define M_SQRT1_2 0.70710678118654752440 #endif #ifndef PI /* as in stroustrup */ #define PI M_PI #endif #ifndef PI2 #define PI2 M_PI_2 #endif #if defined(__mc68000__) # include #endif #endif /* _MATH_H */ ./usr/include/nl_types.h100644 1676 334 3767 5544105052 13325 0ustar hjlisl#ifndef __nl_typesh #define __nl_typesh /*********************************************************** Copyright 1990, by Alfalfa Software Incorporated, Cambridge, Massachusetts. All Rights Reserved Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation, and that Alfalfa's name not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission. ALPHALPHA DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL ALPHALPHA BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. If you make any modifications, bugfixes or other changes to this software we'd appreciate it if you could send a copy to us so we can keep things up-to-date. Many thanks. Kee Hinckley Alfalfa Software, Inc. 267 Allston St., #3 Cambridge, MA 02139 USA nazgul@alfalfa.com ******************************************************************/ #define NL_SETD 0 #include typedef long nl_catd; typedef long nl_item; /* These should be publicly available */ extern nl_catd catopen __P((char *, int)); extern char *catgets __P((nl_catd, int, int, char *)); extern int catclose __P((nl_catd)); #define MCLoadBySet 0 /* Load entire sets as they are used */ #define MCLoadAll 1 /* Load entire DB on catopen */ extern char *MCAppPath; /* Additional search path for strings (appended) */ #ifdef _LIBC #include "nls_libc.h" extern nl_catd _libc_cat; void libc_nls_init(void); #endif #endif ./usr/include/paths.h100644 1676 334 6247 5550051027 12602 0ustar hjlisl/* * Copyright (c) 1989 The Regents of the University of California. * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. All advertising materials mentioning features or use of this software * must display the following acknowledgement: * This product includes software developed by the University of * California, Berkeley and its contributors. * 4. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * @(#)paths.h 5.15 (Berkeley) 5/29/91 */ #ifndef _PATHS_H_ #define _PATHS_H_ #if 0 #define __PATH_ETC_INET "/usr/etc/inet" #else #define __PATH_ETC_INET "/etc" #endif /* Default search path. */ #define _PATH_DEFPATH "/usr/local/bin:/usr/bin:/bin:." #define _PATH_DEFPATH_ROOT "/sbin:/bin:/usr/sbin:/usr/bin" #define _PATH_BSHELL "/bin/sh" #define _PATH_CONSOLE "/dev/console" #define _PATH_CSHELL "/bin/csh" #define _PATH_DEVDB "/var/run/dev.db" #define _PATH_DEVNULL "/dev/null" #define _PATH_DRUM "/dev/drum" #define _PATH_KMEM "/dev/kmem" #define _PATH_MAILDIR "/var/spool/mail" #define _PATH_MAN "/usr/man" #define _PATH_MEM "/dev/mem" #define _PATH_LOGIN "/bin/login" #define _PATH_NOLOGIN "/etc/nologin" #define _PATH_SENDMAIL "/usr/sbin/sendmail" #define _PATH_TTY "/dev/tty" #define _PATH_UNIX "/vmlinux" #define _PATH_VI "/usr/bin/vi" /* Provide trailing slash, since mostly used for building pathnames. */ #define _PATH_DEV "/dev/" #define _PATH_TMP "/tmp/" #define _PATH_VARRUN "/var/run/" #define _PATH_VARTMP "/var/tmp/" #define _PATH_KLOG "/proc/kmsg" #define _PATH_LOGCONF __PATH_ETC_INET"/syslog.conf" #define _PATH_LOGPID __PATH_ETC_INET"/syslog.pid" #define _PATH_LOG "/dev/log" #define _PATH_CONSOLE "/dev/console" #define _PATH_UTMP "/etc/utmp" #define _PATH_WTMP "/var/adm/wtmp" #define _PATH_LASTLOG "/var/adm/lastlog" #define _PATH_LOCALE "/usr/lib/locale" #endif /* !_PATHS_H_ */ ./usr/include/unistd.h100644 1676 334 57202 5550022405 13004 0ustar hjlisl/* Copyright (C) 1991, 1992 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. The GNU C Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should have received a copy of the GNU Library General Public License along with the GNU C Library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ /* * POSIX Standard: 2.10 Symbolic Constants */ #ifndef _UNISTD_H #define _UNISTD_H 1 #include __BEGIN_DECLS /* These may be used to determine what facilities are present at compile time. Their values can be obtained at run time from sysconf. */ /* POSIX Standard approved as IEEE Std 1003.1 as of August, 1988. */ #define _POSIX_VERSION 199009L /* These are not #ifdef __USE_POSIX2 because they are in the theoretically application-owned namespace. */ #define _POSIX2_C_VERSION 199912L /* Invalid until 1003.2 is done. */ /* If defined, the implementation supports the C Language Bindings Option. */ #define _POSIX2_C_BIND 1 /* If defined, the implementation supports the C Language Development Utilities Option. */ #define _POSIX2_C_DEV 1 /* If defined, the implementation supports the Software Development Utilities Option. */ #define _POSIX2_SW_DEV 1 /* Get values of POSIX options: If these symbols are defined, the corresponding features are always available. If not, they may be available sometimes. The current values can be obtained with `sysconf'. _POSIX_JOB_CONTROL Job control is supported. _POSIX_SAVED_IDS Processes have a saved set-user-ID and a saved set-group-ID. If any of these symbols is defined as -1, the corresponding option is not true for any file. If any is defined as other than -1, the corresponding option is true for all files. If a symbol is not defined at all, the value for a specific file can be obtained from `pathconf' and `fpathconf'. _POSIX_CHOWN_RESTRICTED Only the super user can use `chown' to change the owner of a file. `chown' can only be used to change the group ID of a file to a group of which the calling process is a member. _POSIX_NO_TRUNC Pathname components longer than NAME_MAX generate an error. _POSIX_VDISABLE If defined, if the value of an element of the `c_cc' member of `struct termios' is _POSIX_VDISABLE, no character will have the effect associated with that element. */ #include /* Standard file descriptors. */ #define STDIN_FILENO 0 /* Standard input. */ #define STDOUT_FILENO 1 /* Standard output. */ #define STDERR_FILENO 2 /* Standard error output. */ /* All functions that are not declared anywhere else. */ #include #if !defined(ssize_t) && !defined(_SSIZE_T) #define _SSIZE_T #define ssize_t __ssize_t #endif #define __need_size_t #include /* Values for the second argument to access. These may be OR'd together. */ #define R_OK 4 /* Test for read permission. */ #define W_OK 2 /* Test for write permission. */ #define X_OK 1 /* Test for execute permission. */ #define F_OK 0 /* Test for existence. */ /* Test for access to NAME. */ extern int __access __P ((__const char *__name, int __type)); extern int access __P ((__const char *__name, int __type)); /* Values for the WHENCE argument to lseek. */ #ifndef _STDIO_H /* has the same definitions. */ #define SEEK_SET 0 /* Seek from beginning of file. */ #define SEEK_CUR 1 /* Seek from current position. */ #define SEEK_END 2 /* Seek from end of file. */ #endif /* Move FD's file position to OFFSET bytes from the beginning of the file (if WHENCE is SEEK_SET), the current position (if WHENCE is SEEK_CUR), or the end of the file (if WHENCE is SEEK_END). Return the new file position. */ extern __off_t __lseek __P ((int __fd, __off_t __offset, int __whence)); extern __off_t lseek __P ((int __fd, __off_t __offset, int __whence)); /* Close the file descriptor FD. */ extern int __close __P ((int __fd)); extern int close __P ((int __fd)); /* Read NBYTES into BUF from FD. Return the number read, -1 for errors or 0 for EOF. */ extern ssize_t __read __P ((int __fd, __ptr_t __buf, size_t __nbytes)); extern ssize_t read __P ((int __fd, __ptr_t __buf, size_t __nbytes)); /* Write N bytes of BUF to FD. Return the number written, or -1. */ extern ssize_t __write __P ((int __fd, __const __ptr_t __buf, size_t __n)); extern ssize_t write __P ((int __fd, __const __ptr_t __buf, size_t __n)); /* Create a one-way communication channel (pipe). If successul, two file descriptors are stored in PIPEDES; bytes written on PIPEDES[1] can be read from PIPEDES[0]. Returns 0 if successful, -1 if not. */ extern int __pipe __P ((int __pipedes[2])); extern int pipe __P ((int __pipedes[2])); /* Schedule an alarm. In SECONDS seconds, the process will get a SIGALRM. If SECONDS is zero, any currently scheduled alarm will be cancelled. The function returns the number of seconds remaining until the last alarm scheduled would have signaled, or zero if there wasn't one. There is no return value to indicate an error, but you can set `errno' to 0 and check its value after calling `alarm', and this might tell you. The signal may come late due to processor scheduling. */ extern unsigned int alarm __P ((unsigned int __seconds)); /* Make the process sleep for SECONDS seconds, or until a signal arrives and is not ignored. The function returns the number of seconds less than SECONDS which it actually slept (thus zero if it slept the full time). If a signal handler does a `longjmp' or modifies the handling of the SIGALRM signal while inside `sleep' call, the handling of the SIGALRM signal afterwards is undefined. There is no return value to indicate error, but if `sleep' returns SECONDS, it probably didn't work. */ extern unsigned int sleep __P ((unsigned int __seconds)); /* Suspend the process until a signal arrives. This always returns -1 and sets `errno' to EINTR. */ extern int pause __P ((void)); /* Change the owner and group of FILE. */ extern int __chown __P ((__const char *__file, __uid_t __owner, __gid_t __group)); extern int chown __P ((__const char *__file, __uid_t __owner, __gid_t __group)); #ifdef __USE_BSD /* Change the owner and group of the file that FD is open on. */ extern int __fchown __P ((int __fd, __uid_t __owner, __gid_t __group)); extern int fchown __P ((int __fd, __uid_t __owner, __gid_t __group)); #endif /* Use BSD. */ /* Change the process's working directory to PATH. */ extern int __chdir __P ((__const char *__path)); extern int chdir __P ((__const char *__path)); /* Get the pathname of the current working directory, and put it in SIZE bytes of BUF. Returns NULL if the directory couldn't be determined or SIZE was too small. If successful, returns BUF. In GNU, if BUF is NULL, an array is allocated with `malloc'; the array is SIZE bytes long, unless SIZE <= 0, in which case it is as big as necessary. */ extern char *getcwd __P ((char *__buf, size_t __size)); #ifdef __USE_GNU /* Return a malloc'd string containing the current directory name. If the environment variable `PWD' is set, and its value is correct, that value is used. */ extern char *get_current_dir_name __P ((void)); #endif #ifdef __USE_BSD /* Put the absolute pathname of the current working directory in BUF. If successful, return BUF. If not, put an error message in BUF and return NULL. BUF should be at least PATH_MAX bytes long. */ extern char *getwd __P ((char *__buf)); #endif /* Duplicate FD, returning a new file descriptor on the same file. */ extern int __dup __P ((int __fd)); extern int dup __P ((int __fd)); /* Duplicate FD to FD2, closing FD2 and making it open on the same file. */ extern int __dup2 __P ((int __fd, int __fd2)); extern int dup2 __P ((int __fd, int __fd2)); /* NULL-terminated array of "NAME=VALUE" environment variables. */ extern char **__environ; extern char **environ; /* Replace the current process, executing PATH with arguments ARGV and environment ENVP. ARGV and ENVP are terminated by NULL pointers. */ extern int __execve __P ((__const char *__path, char *__const __argv[], char *__const __envp[])); extern int execve __P ((__const char *__path, char *__const __argv[], char *__const __envp[])); /* Execute PATH with arguments ARGV and environment from `environ'. */ extern int execv __P ((__const char *__path, char *__const __argv[])); /* Execute PATH with all arguments after PATH until a NULL pointer, and the argument after that for environment. */ extern int execle __P ((__const char *__path, __const char *__arg,...)); /* Execute PATH with all arguments after PATH until a NULL pointer and environment from `environ'. */ extern int execl __P ((__const char *__path, __const char *__arg,...)); /* Execute FILE, searching in the `PATH' environment variable if it contains no slashes, with arguments ARGV and environment from `environ'. */ extern int execvp __P ((__const char *__file, char *__const __argv[])); /* Execute FILE, searching in the `PATH' environment variable if it contains no slashes, with all arguments after FILE until a NULL pointer and environment from `environ'. */ extern int execlp __P ((__const char *__file, __const char *arg,...)); /* Terminate program execution with the low-order 8 bits of STATUS. */ extern __NORETURN void _exit __P ((int __status)) __NORETURN2; /* Values for the NAME argument to `pathconf' and `fpathconf'. These correspond to the _POSIX_* symbols above, but for specific files or file descriptors. */ #define _PC_LINK_MAX 0 #define _PC_MAX_CANON 1 #define _PC_MAX_INPUT 2 #define _PC_NAME_MAX 3 #define _PC_PATH_MAX 4 #define _PC_PIPE_BUF 5 #define _PC_CHOWN_RESTRICTED 6 #define _PC_NO_TRUNC 7 #define _PC_VDISABLE 8 /* Get file-specific configuration information about PATH. */ extern long int __pathconf __P ((__const char *__path, int __name)); extern long int pathconf __P ((__const char *__path, int __name)); /* Get file-specific configuration about descriptor FD. */ extern long int __fpathconf __P ((int __fd, int __name)); extern long int fpathconf __P ((int __fd, int __name)); /* Values for the argument to `sysconf'. These correspond to the _POSIX_* symbols in and above, but may vary at run time. */ enum { _SC_ARG_MAX, _SC_CHILD_MAX, _SC_CLK_TCK, _SC_NGROUPS_MAX, _SC_OPEN_MAX, _SC_STREAM_MAX, _SC_TZNAME_MAX, _SC_JOB_CONTROL, _SC_SAVED_IDS, _SC_VERSION, /* CLOCKS_PER_SEC: Units/sec of clock() */ _SC_CLOCKS_PER_SEC, /* Values for the argument to `sysconf' corresponding to _POSIX2_* symbols. */ _SC_BC_BASE_MAX, _SC_BC_DIM_MAX, _SC_BC_SCALE_MAX, _SC_BC_STRING_MAX, _SC_COLL_WEIGHTS_MAX, _SC_EQUIV_CLASS_MAX, _SC_EXPR_NEST_MAX, _SC_LINE_MAX, _SC_RE_DUP_MAX, _SC_2_VERSION, _SC_2_C_BIND, _SC_2_C_DEV, _SC_2_FORT_DEV, _SC_2_FORT_RUN, _SC_2_SW_DEV, _SC_2_LOCALEDEF }; /* Get the value of the system variable NAME. */ extern long int __sysconf __P ((int __name)); extern long int sysconf __P ((int __name)); #ifdef __USE_POSIX2 /* Values for the argument to `confstr'. */ #define _CS_PATH 0 /* The default search path. */ /* Get the value of the string-valued system variable NAME. */ extern size_t confstr __P ((int __name, char *__buf, size_t __len)); #endif /* Get the process ID of the calling process. */ extern __pid_t __getpid __P ((void)); extern __pid_t getpid __P ((void)); /* Get the process ID of the calling process's parent. */ extern __pid_t __getppid __P ((void)); extern __pid_t getppid __P ((void)); #ifdef __linux__ /* Get the process group ID of the process matching PID. If PID is zero, the current process's process group ID is returned. */ extern __pid_t getpgid __P ((__pid_t __pid)); /* Get the process group ID of the calling process. */ extern __pid_t getpgrp __P ((void)); /* Set the process group ID of the process matching PID to PGID. If PID is zero, the current process's process group ID is set. If PGID is zero, the process ID of the process is used. */ extern int setpgid __P ((__pid_t __pid, __pid_t __pgid)); extern int setpgrp __P ((void)); #else /* Get the process group ID of process PID. */ extern __pid_t __getpgrp __P ((__pid_t __pid)); #ifndef __FAVOR_BSD /* Get the process group ID of the calling process. */ extern __pid_t getpgrp __P ((void)); #else /* Favor BSD. */ #define getpgrp(pid) __getpgrp(pid) #endif /* Set the process group ID of the process matching PID to PGID. If PID is zero, the current process's process group ID is set. If PGID is zero, the process ID of the process is used. */ extern int __setpgrp __P ((__pid_t __pid, __pid_t __pgid)); extern int setpgid __P ((__pid_t __pid, __pid_t __pgid)); #ifdef __USE_BSD /* Set the process group of PID to PGRP. */ extern int setpgrp __P ((__pid_t __pid, __pid_t __pgrp)); #endif /* Use BSD. */ #endif /* __linux__ */ /* Create a new session with the calling process as its leader. The process group IDs of the session and the calling process are set to the process ID of the calling process, which is returned. */ extern __pid_t __setsid __P ((void)); extern __pid_t setsid __P ((void)); /* Get the real user ID of the calling process. */ extern __uid_t __getuid __P ((void)); extern __uid_t getuid __P ((void)); /* Get the effective user ID of the calling process. */ extern __uid_t __geteuid __P ((void)); extern __uid_t geteuid __P ((void)); /* Get the real group ID of the calling process. */ extern __gid_t __getgid __P ((void)); extern __gid_t getgid __P ((void)); /* Get the effective group ID of the calling process. */ extern __gid_t __getegid __P ((void)); extern __gid_t getegid __P ((void)); /* If SIZE is zero, return the number of supplementary groups the calling process is in. Otherwise, fill in the group IDs of its supplementary groups in LIST and return the number written. */ extern int __getgroups __P ((int __size, __gid_t __list[])); extern int getgroups __P ((int __size, __gid_t __list[])); /* Set the user ID of the calling process to UID. If the calling process is the super-user, set the real and effective user IDs, and the saved set-user-ID to UID; if not, the effective user ID is set to UID. */ extern int __setuid __P ((__uid_t __uid)); extern int setuid __P ((__uid_t __uid)); #ifdef __USE_BSD /* Set the real user ID of the calling process to RUID, and the effective user ID of the calling process to EUID. */ extern int __setreuid __P ((__uid_t __ruid, __uid_t __euid)); extern int setreuid __P ((__uid_t __ruid, __uid_t __euid)); /* Set the effective user ID of the calling process to UID. */ extern int seteuid __P ((__uid_t __uid)); #endif /* Use BSD. */ /* Set the group ID of the calling process to GID. If the calling process is the super-user, set the real and effective group IDs, and the saved set-group-ID to GID; if not, the effective group ID is set to GID. */ extern int __setgid __P ((__gid_t __gid)); extern int setgid __P ((__gid_t __gid)); #ifdef __USE_BSD /* Set the real group ID of the calling process to RGID, and the effective group ID of the calling process to EGID. */ extern int __setregid __P ((__gid_t __rgid, __gid_t __egid)); extern int setregid __P ((__gid_t __rgid, __gid_t __egid)); /* Set the effective group ID of the calling process to UID. */ extern int setegid __P ((__uid_t __uid)); #endif /* Use BSD. */ /* Clone the calling process, creating an exact copy. Return -1 for errors, 0 to the new process, and the process ID of the new process to the old process. */ extern __pid_t __fork __P ((void)); extern __pid_t fork __P ((void)); #ifdef __USE_BSD /* Clone the calling process, but without copying the whole address space. The the calling process is suspended until the the new process exits or is replaced by a call to `execve'. Return -1 for errors, 0 to the new process, and the process ID of the new process to the old process. */ extern __pid_t __vfork __P ((void)); extern __pid_t vfork __P ((void)); #endif /* Use BSD. */ /* get character login name of the user. */ extern char *cuserid __P((char * __buf)); /* Return the name of the controlling terminal. */ extern char *ctermid __P((char *__buf)); /* Return the pathname of the terminal FD is open on, or NULL on errors. The returned storage is good only until the next call to this function. */ extern char *ttyname __P ((int __fd)); /* Return 1 if FD is a valid descriptor associated with a terminal, zero if not. */ extern int __isatty __P ((int __fd)); extern int isatty __P ((int __fd)); /* Make a link to FROM named TO. */ extern int __link __P ((__const char *__from, __const char *__to)); extern int link __P ((__const char *__from, __const char *__to)); #ifdef __USE_BSD /* Make a symbolic link to FROM named TO. */ extern int __symlink __P ((__const char *__from, __const char *__to)); extern int symlink __P ((__const char *__from, __const char *__to)); /* Read the contents of the symbolic link PATH into no more than LEN bytes of BUF. The contents are not null-terminated. Returns the number of characters read, or -1 for errors. */ extern int __readlink __P ((__const char *__path, char *__buf, size_t __len)); extern int readlink __P ((__const char *__path, char *__buf, size_t __len)); #endif /* Use BSD. */ /* Remove the link NAME. */ extern int __unlink __P ((__const char *__name)); extern int unlink __P ((__const char *__name)); /* Remove the directory PATH. */ extern int __rmdir __P ((__const char *__path)); extern int rmdir __P ((__const char *__path)); /* Return the foreground process group ID of FD. */ extern __pid_t tcgetpgrp __P ((int __fd)); /* Set the foreground process group ID of FD set PGRP_ID. */ extern int tcsetpgrp __P ((int __fd, __pid_t __pgrp_id)); /* Return the login name of the user. */ extern char *getlogin __P ((void)); #ifdef __USE_BSD /* Set the login name returned by `getlogin'. */ extern int setlogin __P ((__const char *__name)); #endif #ifdef __USE_POSIX2 /* Process the arguments in ARGV (ARGC of them, minus the program name) for options given in OPTS. If `opterr' is zero, no messages are generated for invalid options; it defaults to 1. `optind' is the current index into ARGV. `optarg' is the argument corresponding to the current option. Return the option character from OPTS just read. Return -1 when there are no more options. For unrecognized options, or options missing arguments, `optopt' is set to the option letter, and '?' is returned. The OPTS string is a list of characters which are recognized option letters, optionally followed by colons, specifying that that letter takes an argument, to be placed in `optarg'. If a letter in OPTS is followed by two colons, its argument is optional. This behavior is specific to the GNU `getopt'. The argument `--' causes premature termination of argument scanning, explicitly telling `getopt' that there are no more options. If OPTS begins with `--', then non-option arguments are treated as arguments to the option '\0'. This behavior is specific to the GNU `getopt'. */ extern int getopt __P ((int __argc, char *__const * __argv, __const char *__opts)); extern int opterr; extern int optind; extern int optopt; extern char *optarg; #endif #ifdef __USE_BSD /* Put the name of the current host in no more than LEN bytes of NAME. The result is null-terminated if LEN is large enough for the full name and the terminator. */ extern int __gethostname __P ((char *__name, size_t __len)); extern int gethostname __P ((char *__name, size_t __len)); /* Set the name of the current host to NAME, which is LEN bytes long. This call is restricted to the super-user. */ extern int sethostname __P ((__const char *__name, size_t __len)); /* Return the current machine's Internet number. */ extern long int gethostid __P ((void)); /* Set the current machine's Internet number to ID. This call is restricted to the super-user. */ extern int sethostid __P ((long int __id)); /* Return the number of bytes in a page. This is the system's page size, which is not necessarily the same as the hardware page size. */ extern size_t __getpagesize __P ((void)); extern size_t getpagesize __P ((void)); /* Return the maximum number of file descriptors the current process could possibly have. */ extern int __getdtablesize __P ((void)); extern int getdtablesize __P ((void)); /* Make all changes done to FD actually appear on disk. */ extern int fsync __P ((int __fd)); /* Make all changes done to all files actually appear on disk. */ extern int sync __P ((void)); /* Revoke access permissions to all processes currently communicating with the control terminal, and then send a SIGHUP signal to the process group of the control terminal. */ extern int vhangup __P ((void)); /* Turn accounting on if NAME is an existing file. The system will then write a record for each process as it terminates, to this file. If NAME is NULL, turn accounting off. This call is restricted to the super-user. */ extern int acct __P ((__const char *__name)); /* Make PATH be the root directory (the starting point for absolute paths). This call is restricted to the super-user. */ extern int chroot __P ((__const char *__path)); /* Make the block special device PATH available to the system for swapping. This call is restricted to the super-user. */ extern int swapon __P ((__const char *__path)); /* Successive calls return the shells listed in `/etc/shells'. */ extern char *getusershell __P ((void)); extern void endusershell __P ((void)); /* Discard cached info. */ extern void setusershell __P ((void)); /* Rewind and re-read the file. */ /* Prompt with PROMPT and read a string from the terminal without echoing. Uses /dev/tty if possible; otherwise stderr and stdin. */ extern char *getpass __P ((__const char *__prompt)); #endif /* Use BSD. */ /* Theses are kind of Linux specific. */ #include extern int __brk __P ((void* __end_data_segment)); extern int brk __P ((void* __end_data_segment)); extern void* __sbrk __P ((ptrdiff_t __increment)); extern void* sbrk __P ((ptrdiff_t __increment)); extern char* crypt __P((__const char *__key, __const char *__salt)); extern void encrypt __P((char __block[64], int __edflag)); extern void setkey __P((__const char *__key)); extern int ftruncate __P ((int __fildes, size_t __length)); extern int truncate __P ((__const char *__path, size_t __length)); extern int ioperm __P ((unsigned long __from, unsigned long __num, int __turn_on)); extern int iopl __P((int __level)); extern char* mktemp __P((char *__template)); extern int mkstemp __P((char *__template)); extern int nice __P ((int __val)); extern int profil __P ((char *__buf, int __bufsiz, int __offset, int __scale)); extern void usleep __P((unsigned long __usec)); extern int ustat __P ((dev_t __dev, struct ustat* __ubuf)); extern int idle __P ((void)); extern int reboot __P ((int __magic, int __magic_too, int __flag)); extern int swapoff __P ((__const char * __specialfile)); extern int uselib __P ((__const char *__filename)); extern int getdomainname __P ((char *__name, size_t __len)); extern int setdomainname __P ((__const char *__name, size_t __len)); extern char* realpath __P ((__const char *__path, char __resolved_path [])); __END_DECLS #endif /* unistd.h */