Initial revision
authorGuillermo J. Rozas <edu/mit/csail/zurich/gjr>
Tue, 3 Aug 1993 08:40:19 +0000 (08:40 +0000)
committerGuillermo J. Rozas <edu/mit/csail/zurich/gjr>
Tue, 3 Aug 1993 08:40:19 +0000 (08:40 +0000)
v7/src/microcode/syscall.h [new file with mode: 0644]

diff --git a/v7/src/microcode/syscall.h b/v7/src/microcode/syscall.h
new file mode 100644 (file)
index 0000000..45c7d40
--- /dev/null
@@ -0,0 +1,149 @@
+/* -*-C-*-
+
+$Id: syscall.h,v 1.1 1993/08/03 08:40:19 gjr Exp $
+
+Copyright (c) 1993 Massachusetts Institute of Technology
+
+This material was developed by the Scheme project at the Massachusetts
+Institute of Technology, Department of Electrical Engineering and
+Computer Science.  Permission to copy this software, to redistribute
+it, and to use it for any purpose is granted, subject to the following
+restrictions and understandings.
+
+1. Any copy made of this software must include this copyright notice
+in full.
+
+2. Users of this software agree to make their best efforts (a) to
+return to the MIT Scheme project any improvements or extensions that
+they make, so that these may be included in future releases; and (b)
+to inform MIT of noteworthy uses of this software.
+
+3. All materials developed as a consequence of the use of this
+software shall duly acknowledge such use, in accordance with the usual
+standards of acknowledging credit in academic research.
+
+4. MIT has made no warrantee or representation that the operation of
+this software will be error-free, and MIT is under no obligation to
+provide any services, by way of maintenance, update, or otherwise.
+
+5. In conjunction with products arising from the use of this material,
+there shall be no use of the name of the Massachusetts Institute of
+Technology nor of any adaptation thereof in any advertising,
+promotional, or sales literature without prior written consent from
+MIT in each case. */
+
+/* OS system calls and errors.
+   Must match utabmd.scm
+ */
+
+#ifndef SCM_SYSCALL_H
+#define  SCM_SYSCALL_H
+\f
+enum syscall_names
+{
+  syscall_accept,
+  syscall_bind,
+  syscall_chdir,
+  syscall_chmod,
+  syscall_close,
+  syscall_connect,
+  syscall_fcntl_GETFL,
+  syscall_fcntl_SETFL,
+  syscall_fork,
+  syscall_fstat,
+  syscall_ftruncate,
+  syscall_getcwd,
+  syscall_gethostname,
+  syscall_gettimeofday,
+  syscall_ioctl_TIOCGPGRP,
+  syscall_ioctl_TIOCSIGSEND,
+  syscall_kill,
+  syscall_link,
+  syscall_listen,
+  syscall_localtime,
+  syscall_lseek,
+  syscall_malloc,
+  syscall_mkdir,
+  syscall_open,
+  syscall_opendir,
+  syscall_pause,
+  syscall_pipe,
+  syscall_read,
+  syscall_readlink,
+  syscall_realloc,
+  syscall_rename,
+  syscall_rmdir,
+  syscall_select,
+  syscall_setitimer,
+  syscall_setpgid,
+  syscall_sighold,
+  syscall_sigprocmask,
+  syscall_sigsuspend,
+  syscall_sleep,
+  syscall_socket,
+  syscall_symlink,
+  syscall_tcdrain,
+  syscall_tcflush,
+  syscall_tcgetpgrp,
+  syscall_tcsetpgrp,
+  syscall_terminal_get_state,
+  syscall_terminal_set_state,
+  syscall_time,
+  syscall_times,
+  syscall_unlink,
+  syscall_utime,
+  syscall_vfork,
+  syscall_write,
+  syscall_stat,
+  syscall_lstat,
+  syscall_mktime
+};
+\f
+enum syserr_names
+{
+  syserr_unknown,
+  syserr_arg_list_too_long,
+  syserr_bad_address,
+  syserr_bad_file_descriptor,
+  syserr_broken_pipe,
+  syserr_directory_not_empty,
+  syserr_domain_error,
+  syserr_exec_format_error,
+  syserr_file_exists,
+  syserr_file_too_large,
+  syserr_filename_too_long,
+  syserr_function_not_implemented,
+  syserr_improper_link,
+  syserr_inappropriate_io_control_operation,
+  syserr_interrupted_function_call,
+  syserr_invalid_argument,
+  syserr_invalid_seek,
+  syserr_io_error,
+  syserr_is_a_directory,
+  syserr_no_child_processes,
+  syserr_no_locks_available,
+  syserr_no_space_left_on_device,
+  syserr_no_such_device,
+  syserr_no_such_device_or_address,
+  syserr_no_such_file_or_directory,
+  syserr_no_such_process,
+  syserr_not_a_directory,
+  syserr_not_enough_space,
+  syserr_operation_not_permitted,
+  syserr_permission_denied,
+  syserr_read_only_file_system,
+  syserr_resource_busy,
+  syserr_resource_deadlock_avoided,
+  syserr_resource_temporarily_unavailable,
+  syserr_result_too_large,
+  syserr_too_many_links,
+  syserr_too_many_open_files,
+  syserr_too_many_open_files_in_system
+};
+
+extern void EXFUN (error_in_system_call,
+                  (enum syserr_names, enum syscall_names));
+extern void EXFUN (error_system_call, (int, enum syscall_names name));
+extern enum syserr_names EXFUN (OS_error_code_to_syserr, (int));
+
+#endif  SCM_SYSCALL_H