Initial revision
authorroland <roland>
Wed, 30 Jan 1991 10:01:46 +0000 (10:01 +0000)
committerroland <roland>
Wed, 30 Jan 1991 10:01:46 +0000 (10:01 +0000)
gnulib/Makefile [new file with mode: 0644]
misc/nlist.h [new file with mode: 0644]
misc/sys/dir.h [new file with mode: 0644]
misc/sys/ioctl.h [new file with mode: 0644]
misc/sys/ptrace.h [new file with mode: 0644]
misc/sys/uio.h [new file with mode: 0644]
resource/sys/vlimit.h [new file with mode: 0644]

diff --git a/gnulib/Makefile b/gnulib/Makefile
new file mode 100644 (file)
index 0000000..7b7666d
--- /dev/null
@@ -0,0 +1,22 @@
+# Copyright (C) 1991 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 General Public License as published by
+# the Free Software Foundation; either version 1, 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 General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with the GNU C Library; see the file COPYING.  If not, write to
+# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
+
+subdir := gnulib
+
+# Which routines are required is machine-dependent.
+
+include ../Rules
diff --git a/misc/nlist.h b/misc/nlist.h
new file mode 100644 (file)
index 0000000..5cfd88d
--- /dev/null
@@ -0,0 +1,43 @@
+/* Copyright (C) 1991 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 General Public License as published by
+the Free Software Foundation; either version 1, 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 General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with the GNU C Library; see the file COPYING.  If not, write to
+the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
+
+#ifndef        _NLIST_H
+
+#define        _NLIST_H        1
+#include <features.h>
+
+
+/* Structure describing a symbol-table entry.  */
+struct nlist
+  {
+    char *n_name;
+    unsigned char n_type;
+    char n_other;
+    short int n_desc;
+    unsigned long int n_value;
+  };
+#define        N_NLIST_DECLARED
+#include <a.out.h>
+
+
+/* Search the executable FILE for symbols matching those in NL,
+   which is terminated by an element with a NULL `n_un.n_name' member,
+   and fill in the elements of NL.  */
+extern int EXFUN(nlist, (CONST char *__file, struct nlist *__nl));
+
+
+#endif /* nlist.h  */
diff --git a/misc/sys/dir.h b/misc/sys/dir.h
new file mode 100644 (file)
index 0000000..162fa93
--- /dev/null
@@ -0,0 +1,27 @@
+/* Copyright (C) 1991 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 General Public License as published by
+the Free Software Foundation; either version 1, 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 General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with the GNU C Library; see the file COPYING.  If not, write to
+the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
+
+#ifndef        _SYS_DIR_H
+
+#define        _SYS_DIR_H      1
+#include <features.h>
+
+#include <dirent.h>
+
+#define        direct  dirent
+
+#endif /* sys/dir.h  */
diff --git a/misc/sys/ioctl.h b/misc/sys/ioctl.h
new file mode 100644 (file)
index 0000000..dc2acf3
--- /dev/null
@@ -0,0 +1,88 @@
+/* Copyright (C) 1991 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 General Public License as published by
+the Free Software Foundation; either version 1, 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 General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with the GNU C Library; see the file COPYING.  If not, write to
+the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
+
+#ifndef        _SYS_IOCTL_H
+
+#define        _SYS_IOCTL_H    1
+#include <features.h>
+
+/* Get the list of `ioctl' requests and related constants.  */
+#include <ioctls.h>
+
+
+#if    defined(TIOCGETC) || defined(TIOCSETC)
+/* Type of ARG for TIOCGETC and TIOCSETC requests.  */
+struct tchars
+  {
+    char t_intrc;      /* Interrupt character.  */
+    char t_quitc;      /* Quit character.  */
+    char t_startc;     /* Start-output character.  */
+    char t_stopc;      /* Stop-output character.  */
+    char t_eofc;       /* End-of-file character.  */
+    char t_brkc;       /* Input delimiter character.  */
+  };
+#endif
+
+#if    defined(TIOCGLTC) || defined(TIOCSLTC)
+/* Type of ARG for TIOCGLTC and TIOCSLTC requests.  */
+struct ltchars
+  {
+    char t_suspc;      /* Suspend character.  */
+    char t_dsuspc;     /* Delayed suspend character.  */
+    char t_rprntc;     /* Reprint-line character.  */
+    char t_flushc;     /* Flush-output character.  */
+    char t_werasc;     /* Word-erase character.  */
+    char t_lnextc;     /* Literal-next character.  */
+  };
+#endif
+
+#if    defined(TIOCGETP) || defined(TIOCSETP)
+/* Type of ARG for TIOCGETP and TIOCSETP requests.  */
+struct sgttyb
+  {
+    char sg_ispeed;    /* Input speed.  */
+    char sg_ospeed;    /* Output speed.  */
+    char sg_erase;     /* Erase character.  */
+    char sg_kill;      /* Kill character.  */
+    short int sg_flags;        /* Mode flags.  */
+  };
+#endif
+
+#if    defined(TIOCGWINSZ) || defined(TIOCSWINSZ)
+/* Type of ARG for TIOCGWINSZ and TIOCSWINSZ requests.  */
+struct winsize
+  {
+    unsigned short int ws_row; /* Rows, in characters.  */
+    unsigned short int ws_col; /* Columns, in characters.  */
+
+    unsigned short int ws_xpixel;      /* Horizontal pixels.  */
+    unsigned short int ws_ypixel;      /* Vertical pixels.  */
+  };
+#endif
+
+
+/* Perform the I/O control operation specified by REQUEST on FD.
+   The actual type and use of ARG and the return value depend on REQUEST.  */
+extern int EXFUN(__ioctl, (int __fd, int __request, PTR __arg));
+extern int EXFUN(ioctl, (int __fd, int __request, PTR __arg));
+
+#ifdef __OPTIMIZE__
+#define        ioctl(fd, request, arg) __ioctl((fd), (request), (arg))
+#endif
+
+
+#endif /* sys/ioctl.h */
diff --git a/misc/sys/ptrace.h b/misc/sys/ptrace.h
new file mode 100644 (file)
index 0000000..da7fb72
--- /dev/null
@@ -0,0 +1,132 @@
+/* Copyright (C) 1991 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 General Public License as published by
+the Free Software Foundation; either version 1, 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 General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with the GNU C Library; see the file COPYING.  If not, write to
+the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
+
+#ifndef        _PTRACE_H
+
+#define        _PTRACE_H       1
+#include <features.h>
+
+
+/* Type of the REQUEST argument to `ptrace.'  */
+enum __ptrace_request
+  {
+    /* Indicate that the process making this request should be traced.
+       All signals received by this process can be intercepted by its
+       parent, and its parent can use the other `ptrace' requests.  */
+    PTRACE_TRACEME = 0,
+#define PT_TRACE_ME PTRACE_TRACEME
+
+    /* Return the word in the process's text space at address ADDR.  */
+    PTRACE_PEEKTEXT,
+#define PT_READ_I PTRACE_PEEKTEXT
+
+    /* Return the word in the process's data space at address ADDR.  */
+    PTRACE_PEEKDATA,
+#define PT_READ_D PTRACE_PEEKDATA
+
+    /* Return the word in the process's user area at offset ADDR.  */
+    PTRACE_PEEKUSER,
+#define PT_READ_U PTRACE_PEEKUSER
+
+    /* Write the word DATA into the process's text space at address ADDR.  */
+    PTRACE_POKETEXT,
+#define PT_WRITE_I PTRACE_POKETEXT
+
+    /* Write the word DATA into the process's data space at address ADDR.  */
+    PTRACE_POKEDATA,
+#define PT_WRITE_D PTRACE_POKEDATA
+
+    /* Write the word DATA into the process's user space at offset ADDR.  */
+    PTRACE_POKEUSER,
+#define PT_WRITE_U PTRACE_POKEUSER
+
+    /* Continue the process.  */
+    PTRACE_CONT,
+#define PT_CONTINUE PTRACE_CONT
+
+    /* Kill the process.  */
+    PTRACE_KILL,
+#define PT_KILL PTRACE_KILL
+
+    /* Single step the process.
+       This is not supported on all machines.  */
+    PTRACE_SINGLESTEP,
+#define PT_STEP PTRACE_SINGLESTEP
+
+    /* Attach to a process that is already running. */
+    PTRACE_ATTACH,
+#define PT_ATTACH PTRACE_ATTACH
+
+    /* Detach from a process attached to with PTRACE_ATTACH.  */
+    PTRACE_DETACH,
+#define PT_DETACH PTRACE_DETACH
+
+    /* Get the process's registers (not including floating-point registers)
+       and put them in the `struct regs' (see <machine/regs.h>) at ADDR.  */
+    PTRACE_GETREGS = 12,
+
+    /* Set the process's registers (not including floating-point registers)
+       to the contents of the `struct regs' (see <machine/regs.h>) at ADDR.  */
+    PTRACE_SETREGS,
+
+    /* Get the process's floating point registers and put them
+       in the `struct fp_status' (see <machine/regs.h>) at ADDR.  */
+    PTRACE_GETFPGEGS = 14,
+
+    /* Set the process's floating point registers to the contents
+       of the `struct fp_status' (see <machine/regs.h>) at ADDR.  */
+    PTRACE_SETFPREGS,
+
+    /* Read DATA bytes from the process's data space at address ADDR.
+       Put the result starting at address ADDR2 in the caller's
+       address space.  */
+    PTRACE_READDATA = 16,
+
+    /* Write DATA bytes from ADDR2 in the caller's address space into
+       the process's data space at address ADDR.  */
+    PTRACE_WRITEDATA,
+
+    /* Read DATA bytes from the process's text space at address ADDR.
+       Put the result starting at address ADDR2 in the caller's
+       address space.  */
+    PTRACE_READTEXT = 18,
+
+    /* Write DATA bytes from ADDR2 in the caller's address space into
+       the process's text space at address ADDR.  */
+    PTRACE_WRITETEXT,
+
+    /* Read the floating-point accelerator unit registers and
+       put them into the `struct fpa_regs' (see <machine/regs.h>) at ADDR.  */
+    PTRACE_GETFPAREGS = 20,
+
+    /* Write the floating-point accelerator unit registers from
+       the contents of the `struct fpa_regs' at ADDR.  */       
+    PTRACE_SETFPAREGS,
+  };
+
+/* Perform process tracing functions.  REQUEST is one of the values
+   above, and determines the action to be taken.
+   For all requests except PTRACE_TRACEME, PID specifies the process to be
+   traced.
+
+   PID and the other arguments described above for the various requests should
+   appear (those that are used for the particular request) as:
+     pid_t PID, void *ADDR, int DATA, void *ADDR2
+   after REQUEST.  */
+extern int EXFUN(ptrace, (enum __ptrace_request __request DOTS));
+
+#endif /* ptrace.h */
diff --git a/misc/sys/uio.h b/misc/sys/uio.h
new file mode 100644 (file)
index 0000000..b47416f
--- /dev/null
@@ -0,0 +1,53 @@
+/* Copyright (C) 1991 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 General Public License as published by
+the Free Software Foundation; either version 1, 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 General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with the GNU C Library; see the file COPYING.  If not, write to
+the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
+
+#ifndef _SYS_UIO_H
+
+#define _SYS_UIO_H     1
+#include <features.h>
+
+#define        __need_size_t
+#include <stddef.h>
+
+
+/* Structure describing a section of memory.  */
+
+struct iovec
+  {
+    /* Starting address.  */
+    PTR iov_base;
+    /* Length in bytes.  */
+    size_t iov_len;
+  };
+
+
+/* Read data from file descriptor FD, and put the result in the
+   buffers described by VECTOR, which is a vector of COUNT `struct iovec's.
+   The buffers are filled in the order specified.
+   Operates just like `read' (see <unistd.h>) except that data are
+   put in VECTOR instead of a contiguous buffer.  */
+int EXFUN(readv, (int __fd, CONST struct iovec *__vector, size_t __count));
+
+/* Write data pointed by the buffers described by VECTOR, which
+   is a vector of COUNT `struct iovec's, to file descriptor FD.
+   The data is written in the order specified.
+   Operates just like `write' (see <unistd.h>) except that the data
+   are taken from VECTOR instead of a contiguous buffer.  */
+int EXFUN(writev, (int __fd, CONST struct iovec *__vector, size_t __count));
+
+
+#endif /* sys/uio.h */
diff --git a/resource/sys/vlimit.h b/resource/sys/vlimit.h
new file mode 100644 (file)
index 0000000..ceb377f
--- /dev/null
@@ -0,0 +1,63 @@
+/* Copyright (C) 1991 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 General Public License as published by
+the Free Software Foundation; either version 1, 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 General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with the GNU C Library; see the file COPYING.  If not, write to
+the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
+
+#ifndef _SYS_VLIMIT_H
+
+#define _SYS_VLIMIT_H  1
+#include <features.h>
+
+/* This interface is obsolete, and is superseded by <sys/resource.h>.  */
+
+/* Kinds of resource limit.  */
+enum __vlimit_resource
+  {
+    /* Setting this non-zero makes it impossible to raise limits.
+       Only the super-use can set it to zero.
+
+       This is not implemented in recent versions of BSD, nor by
+       the GNU C library.  */
+    LIM_NORAISE,
+
+    /* CPU time available for each process (seconds).  */
+    LIM_CPU,
+
+    /* Largest file which can be created (bytes).  */
+    LIM_FSIZE,
+
+    /* Maximum size of the data segment (bytes).  */
+    LIM_DATA,
+
+    /* Maximum size of the stack segment (bytes).  */
+    LIM_STACK,
+
+    /* Largest core file that will be created (bytes).  */
+    LIM_CORE,
+
+    /* Resident set size (bytes).  */
+    LIM_MAXRSS
+  };
+
+/* This means no limit.  */
+#define INFINITY 0x7fffffff
+
+
+/* Set the soft limit for RESOURCE to be VALUE.
+   Returns 0 for success, -1 for failure.  */
+int EXFUN(vlimit, (enum __vlimit_resource __resource, int __value));
+
+
+#endif /* vlimit.h  */