This is jsyscall.h in view mode; [Download] [Up]
/* * jsyscall.h * Define the Java-to-system call interface. * * Copyright (c) 1996, 1997 * Transvirtual Technologies, Inc. All rights reserved. * * See the file "license.terms" for information on usage and redistribution * of this file. */ #ifndef __jsyscall_h #define __jsyscall_h struct sockaddr; struct timeval; struct fd_set; struct stat; typedef struct SystemCallInterface { int (*_open)(const char*, int, int); ssize_t (*_read)(int, void*, size_t); ssize_t (*_write)(int, const void*, size_t); off_t (*_lseek)(int, off_t, int); int (*_close)(int); int (*_fstat)(int, struct stat*); int (*_stat)(const char*, struct stat*); int (*_mkdir)(const char*, int); int (*_rmdir)(const char*); int (*_rename)(const char*, const char*); int (*_remove)(const char*); int (*_socket)(int, int, int); int (*_connect)(int, struct sockaddr*, size_t); int (*_accept)(int, struct sockaddr*, size_t*); ssize_t (*_sockread)(int, void*, size_t); ssize_t (*_recvfrom)(int,void*,size_t,int,struct sockaddr*,int*); ssize_t (*_sockwrite)(int, const void*, size_t); ssize_t (*_sendto)(int,const void*,size_t,int,const struct sockaddr*,int); int (*_setsockopt)(int, int, int, const void*, int); int (*_getsockopt)(int, int, int, void*, int*); int (*_getsockname)(int, struct sockaddr*, int*); int (*_getpeername)(int, struct sockaddr*, int*); int (*_select)(int, fd_set*, fd_set*, fd_set*, struct timeval*); int (*_forkexec)(char**, char**, int[4]); int (*_waitpid)(int, int*, int); int (*_kill)(int, int); } SystemCallInterface; extern SystemCallInterface Kaffe_SystemCallInterface; #if !defined(NOUNIXPROTOTYPES) /* * Define some 'UNIX' like macros to make things simpler. */ #define open(A,B,C) (*Kaffe_SystemCallInterface._open)(A,B,C) #define read(A,B,C) (*Kaffe_SystemCallInterface._read)(A,B,C) #define write(A,B,C) (*Kaffe_SystemCallInterface._write)(A,B,C) #define lseek(A,B,C) (*Kaffe_SystemCallInterface._lseek)(A,B,C) #define close(A) (*Kaffe_SystemCallInterface._close)(A) #define fstat(A,B) (*Kaffe_SystemCallInterface._fstat)(A,B) #define stat(A,B) (*Kaffe_SystemCallInterface._stat)(A,B) #define mkdir(A,B) (*Kaffe_SystemCallInterface._mkdir)(A,B) #define rmdir(A) (*Kaffe_SystemCallInterface._rmdir)(A) #define rename(A,B) (*Kaffe_SystemCallInterface._rename)(A,B) #define remove(A) (*Kaffe_SystemCallInterface._remove)(A) #define socket(A,B,C) (*Kaffe_SystemCallInterface._socket)(A,B,C) #define connect(A,B,C) (*Kaffe_SystemCallInterface._connect)(A,B,C) #define accept(A,B,C) (*Kaffe_SystemCallInterface._accept)(A,B,C) #define sockread(A,B,C) (*Kaffe_SystemCallInterface._sockread)(A,B,C) #define recvfrom(A,B,C,D,E,F) \ (*Kaffe_SystemCallInterface._recvfrom)(A,B,C,D,E,F) #define sockwrite(A,B,C) \ (*Kaffe_SystemCallInterface._sockwrite)(A,B,C) #define sendto(A,B,C,D,E,F) \ (*Kaffe_SystemCallInterface._sendto)(A,B,C,D,E,F) #define setsockopt(A,B,C,D,E) \ (*Kaffe_SystemCallInterface._setsockopt)(A,B,C,D,E) #define getsockopt(A,B,C,D,E) \ (*Kaffe_SystemCallInterface._getsockopt)(A,B,C,D,E) #define getsockname(A,B,C) \ (*Kaffe_SystemCallInterface._getsockname)(A,B,C) #define getpeername(A,B,C) \ (*Kaffe_SystemCallInterface._getpeername)(A,B,C) #define select(A,B,C,D,E) \ (*Kaffe_SystemCallInterface._select)(A,B,C,D,E) #define waitpid(A,B,C) (*Kaffe_SystemCallInterface._waitpid)(A,B,C) #define forkexec(A,B,C) (*Kaffe_SystemCallInterface._forkexec)(A,B,C) #define kill(A,B) (*Kaffe_SystemCallInterface._kill)(A,B) #endif #endif
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.