Commit Graph

171 Commits

Author SHA1 Message Date
christos
7e8a7a54eb - Always check if the file descriptor we are using is a socket.
- Make sure we get an so_internal state allocated, even if we
  did not open the socket ourselves.
1996-06-05 19:10:34 +00:00
christos
dd1fe33d2e - Always check if the file descriptor we are using is a socket.
- Make sure we get an so_internal state allocated, even if we
  did not open the socket ourselves.
1996-06-05 19:07:37 +00:00
christos
6ba5bd8c10 Fix OGETUDATA for Solaris-2.3 (From Greg Hudson) 1996-05-13 16:57:50 +00:00
mrg
b961912b8a sort this. 1996-05-05 17:14:25 +00:00
christos
029f35aa10 Avoid overruns when copying the interface name. 1996-05-03 17:09:15 +00:00
christos
efc7b8aec4 - don't use if_index to get the number of interfaces in SIOCGIFNUM; compute
the actual number.
- forgot to copyout the result in SIOGCIFFLAGS.
1996-04-22 01:17:33 +00:00
christos
02f94c17fb Add SI_SYSTEMINFO from Solaris-2.5 1996-04-22 01:16:04 +00:00
christos
5fda4b10a2 - small ioctl naming changes.
- pass ioctl fd explicitly.
1996-04-11 12:54:40 +00:00
christos
3b309224fd - Pass ioctl file descriptor explicitly.
- some 'T' ioctl's are for streams, call the stream function in the default case
1996-04-11 12:53:48 +00:00
christos
4a0b33e910 Handle different address families, and in particular AF_UNIX. 1996-04-11 12:52:41 +00:00
christos
8edeaa1f71 Add accept message 1996-04-11 12:52:03 +00:00
christos
d37bbda397 - keep the address family in the global state, now that we are using it.
- add netaddr_un
1996-04-11 12:50:31 +00:00
christos
0a8a2051dc - Make unix domain sockets work.
- Implement GETSOCKNAME and GETMYNAME
- Implement getmsg(ACCEPT) [incomplete]
- Implement LISTEN [incomplete]

There are too many changes in the code, this is why the incomplete checkpoint.
1996-04-11 12:49:13 +00:00
christos
8294057bdb Svr4 does not have unix domain sockets; it emulates them with mode 0 named
pipes. Emulate that behavior, by telling svr4 we've found mode 0 named pipe
when we find a unix domain socket. Also record the name and device,inode
pair of sockets found.
1996-04-11 12:46:41 +00:00
christos
dcf6c8ee56 New files to provide a device,inode -> pathname mapping for unix domain
sockets. This is needed for putmsg(2)
1996-04-11 12:43:29 +00:00
christos
260951021b Use uprintf instead of printf for debugging. Lot's of printing causes panics
on the sparcs, and even if that was not the case, you end up losing text.
1996-04-11 12:41:25 +00:00
christos
c5cd2c8f26 Remove dependence on svr4_conf.h and the file itself. 1996-03-30 22:40:55 +00:00
christos
6c2fd36998 Fixed debug printf format args. 1996-03-30 22:37:52 +00:00
christos
ed8966b2ea svr4_sigfillset should be void 1996-03-16 23:20:30 +00:00
christos
79344ff371 - add svr4_conf.h
- add window size ioctls
1996-03-14 19:29:11 +00:00
christos
47158e6548 syscalls.master changed 1996-02-10 17:14:07 +00:00
christos
eb13d0121e - fixed wrong argument order in xmknod
- added proper support for {f,}pathconf
1996-02-10 17:12:31 +00:00
christos
b50214e2fa use %p in printf's instead of casts to (unsigned int) 1996-02-10 00:48:08 +00:00
christos
1b17f25866 fix prototype warnings 1996-02-09 23:12:14 +00:00
christos
065bada41f so_pcb -> so_internal 1996-02-04 02:01:07 +00:00
mycroft
f19761346e Do the previous change a little differently. 1996-02-02 08:09:45 +00:00
christos
1c35870a46 syscalls.master was changed 1996-02-02 01:18:09 +00:00
christos
9840c3ca68 Add xmknod() 1996-02-02 01:17:24 +00:00
jtc
e19bfae4f9 Rename struct timespec fields to conform to POSIX.1b 1996-02-01 00:18:04 +00:00
mycroft
99686e0059 Add a vnode** argument to getvnode(), prototype it, and make it return
EBADF if the file descriptor has been revoked.
1996-01-30 20:05:33 +00:00
jtc
2fce159ff8 Changed name of sigaltstack's ss_base field to ss_sp to match XPG4.2 and
traditional usage.
1996-01-04 22:21:33 +00:00
christos
ac82785d44 fix compile error from fvdl; thanks. 1995-12-19 18:27:02 +00:00
christos
34af3b306f syscalls.master was changed 1995-12-19 07:14:25 +00:00
christos
20a2ff3d16 Added utime and utimes 1995-12-19 07:12:53 +00:00
mycroft
686dddaff9 Reran makesyscalls.sh. 1995-10-15 06:13:56 +00:00
christos
81ae32e332 syscalls.master was changed. 1995-10-14 20:26:39 +00:00
christos
a4e2f7532a - Added msgsys, shmsys and semsys... MITSHM needs shmsys, so X applications
that used that would fail.
- Propagated all the fixes from the fully prototyped kernel.
1995-10-14 20:24:14 +00:00
thorpej
d0c7d0fdd6 Add missing F_SETLKW case to svr4_sys_fcntl(), from Niklas Hallqvist
<niklas@appli.se>.
1995-10-09 23:56:17 +00:00
mycroft
652c9eff74 Use cookies for directory offset, mostly from Greg Hudson. 1995-10-09 11:23:57 +00:00
mycroft
6263c69339 Reran makesyscalls.sh. 1995-10-07 06:51:37 +00:00
mycroft
55c46e9514 Reran makesyscalls.sh. 1995-10-07 06:41:34 +00:00
mycroft
245f292fed Prefix names of system call implementation functions with `sys_'. 1995-10-07 06:25:19 +00:00
pk
23b15422dc svr4_fcntl: make uap point to argument. 1995-10-02 08:20:47 +00:00
thorpej
eecd40e854 Make system calls conform to a standard prototype and bring those
prototypes into scope.
1995-09-19 22:10:11 +00:00
thorpej
c8aae0e18a makesyscalls.sh changed. 1995-09-19 22:05:58 +00:00
cgd
ce48e523d6 kill some redundant (and harmful) static definitions of functions 1995-08-19 04:04:50 +00:00
mycroft
c331c7be82 Rename ss_flags bits. 1995-08-15 16:52:30 +00:00
mycroft
10c06fe363 Prototype some functions. 1995-08-14 02:22:20 +00:00
mycroft
1e69f23205 Export bsd_to_svr4_sig[], and use it. 1995-08-14 02:07:57 +00:00
mycroft
283f211782 Sort. 1995-08-14 01:34:09 +00:00
mycroft
01fa87477a syscalls.master changed. 1995-08-14 01:29:05 +00:00
mycroft
88b8e43a80 Rearrange #includes. 1995-08-14 01:27:43 +00:00
mycroft
9440382c88 svr4_stack_t --> svr4_sigaltstack 1995-08-14 01:13:29 +00:00
mycroft
05abc039c9 syscalls.master changed. 1995-08-14 01:13:11 +00:00
mycroft
eba2f2e81a Move signal types into signal.h. 1995-08-14 01:11:52 +00:00
mycroft
3b76c0ddef svr4_stack_t --> svr4_sigaltstack 1995-08-14 00:57:13 +00:00
mycroft
475edc261c Move definition of sigset_t into types.h. 1995-08-14 00:50:27 +00:00
mycroft
ca057762b9 Minor cleanup. 1995-08-14 00:41:02 +00:00
mycroft
1575859e07 Minor cleanup. 1995-08-13 23:37:56 +00:00
mycroft
a6b7c740c6 Convert SA_RESETHAND and SA_NODEFER.
Scrub this code a bit.
1995-08-13 22:57:10 +00:00
christos
3a1e063118 Make the macro botch fix more palatable. 1995-07-05 17:08:54 +00:00
pk
426fb108d1 Brutally work around a macro botch. 1995-07-05 13:07:12 +00:00
christos
87b62763ae Add a few more sockio ioctls... Now sunxdoom is running! 1995-07-04 23:00:11 +00:00
christos
c07ddb7c1d Added sockioctls... Only getifnum supported for now.
Added SVR4_EMT_TAGOVF, needed by new machdep translations.
1995-07-04 19:46:58 +00:00
christos
ed63c665eb - make svr4_break() identical to obreak(). We still keep the code here,
to do some more testing.
- add POSIX.4 sysconfig options [we don't support them, but we don't
  return EINVAL too]
- More kludges in the interpeter load address. I hope I escape the kludge
  police...
1995-07-02 06:16:06 +00:00
christos
294f607d50 Fix alignment of svr4_getdents, so that it works for solaris2.4/sparc 1995-07-01 23:42:54 +00:00
christos
68328ddcdd Fixes for Solaris-2.4/sparc dynamically linked binaries.
We can now run them, but:

1. setcontext() causes a panic so binaries that receive signals
   crash the machine [something is wrong with the register setup].
   sleep 10 ==
    Watchdog reset
    Data Access Exception
    Type  help  for more information
    ok

2. csh says "unknown software trap a7".
3. ls gives us a bus error.
4. ldd works :-)

But I solved the problem that had been bothering me for weeks :-)
1995-06-27 22:12:47 +00:00
christos
d0169ce44a Use compat_util.[ch] 1995-06-24 20:29:17 +00:00
fvdl
cbcf8eee8a Check for invalid filedescriptors in getmsg() and putmsg(). 1995-06-24 18:47:08 +00:00
fvdl
4a10f838e7 Changed to use generic ELF code from kern/exec_elf.c (which was taken
from the svr4 exec code plus the linux compat mods)
1995-06-22 21:32:57 +00:00
fvdl
a22d72bf4d * Always kill all vm_cmds before giving up on loading an executable
* Don't try to use auxiliary arguments with statically linked executables.
* Remove 'cannot find interpreter' uprintf, as other exec modules may
  succeed in running the binary after all, and then we don't want this message.
* Some linkers produce rw- for the data segment, not rwx.
* Remove a few debugging printfs
1995-06-11 15:06:11 +00:00
mycroft
abd4cc9991 Remove /dev/zero special case. It's done in mmap(). 1995-06-10 22:45:15 +00:00
mycroft
b1868d1bdf Set st_rdev in SVR4 struct stat. 1995-06-10 22:44:18 +00:00
jtc
95ded74f58 Moved egid credential from cr_groups[0] to new field cr_gid. POSIX.1
requires that sgid executables and the setuid() syscall *not* change
the supplemental group list.
1995-06-01 22:43:30 +00:00
mycroft
bfd22ffde8 Generate the new ps_strings format. 1995-05-16 14:19:03 +00:00
mycroft
7688f4456e Remove usages of ibcs_sigflags. 1995-05-01 04:50:28 +00:00
christos
44eef7c28b - added struct emul to all emulations.
- removed all setup functions.
- added copyargs() functions where needed.
1995-04-22 19:48:19 +00:00
cgd
27228062f9 config.new file lists 1995-04-17 16:12:14 +00:00
mycroft
72adfee7f7 EMUL_IBCS2_ELF -> EMUL_SVR4; EMUL_IBCS2_{COFF,XOUT} -> EMUL_IBCS2 1995-04-13 20:48:14 +00:00
christos
c8afb5deaf Syscalls.master was changed 1995-03-31 03:08:25 +00:00
christos
ee05f066e8 1. siginfo stuff torn out from wait.h to be used by the MI portion of the code.
2. many termio, ioctl, sigaction fixes
3. better socket type emulation; still ticotsord [the loopback interface I
   guess] does not work properly on svr4 4.1.
4. new gettimeofday, fixed utssys..
5. rmdir and mkdir were swapped in syscalls.master
1995-03-31 03:06:17 +00:00
mycroft
f75ba16b09 Update to use timer{add,sub}(). 1995-03-21 13:33:34 +00:00
christos
316fa4de0e Syscalls.master was changed. 1995-02-01 01:41:37 +00:00
christos
dbcb84b7e1 Added sigaltstack, ioctl(I_NREAD)
Replaced syssun with svr4_sysarch()
1995-02-01 01:37:33 +00:00
christos
a8c747992c syscalls.master was changed 1995-01-25 04:17:45 +00:00
christos
5a54340166 Make siginfo structure a union for clarity. Fix incorrect settings of
the siginfo_t in the waitid() system call.
1995-01-25 04:17:06 +00:00
christos
279d6f3237 wait(2): Put the status in retval[1] as solaris expects it there
avoid infinite loop when looking for / [since it used to return /emul/svr4],
by returning the real root.
1995-01-22 23:44:48 +00:00
christos
22572ffee9 More debugging for waitsys()
Fixed uname which was broken since 1.0.
Added timod/getinfo stream ioctl.
Fixed TIOC{G,S}PGRP
Fixed typo in the flags translation
1995-01-10 00:04:03 +00:00
christos
9033addb0c Job control fixes... Still not working, but better 1995-01-09 01:04:18 +00:00
christos
e15e38be03 syscalls.master was changed 1995-01-08 21:32:40 +00:00
christos
ff6fb90722 Fixed waitsys().
Fixed time functions.
Added alarm(), contextsys(), sigaction(), kill(), statvfs(), fstatvfs()
1995-01-08 21:31:34 +00:00
mycroft
c06da32c6e Make sure to ream out the file descriptor table slot when aborting. 1994-12-14 20:20:26 +00:00
mycroft
797dcd3e8f Use the same method as portal fs for creating a file descriptor. 1994-12-14 20:08:30 +00:00
mycroft
6332be8c7f Use __timeradd(), not timervaladd(). 1994-12-11 17:56:21 +00:00
christos
153d76736d syscalls.master was changed; added a couple of new header files. 1994-11-18 02:56:09 +00:00
christos
2859b1c634 Rework streams emulation so that it does not rely on non portable hacks.
We keep streams state in so->so_ptcb; this field is unused in all the kernel.
Fix poll(2) timeout computation; add hrtsys and waitsys syscalls.
1994-11-18 02:53:37 +00:00
christos
0d5c2ddb90 new files 1994-11-14 06:13:11 +00:00
christos
25ef6e1436 More functionality and bug fixes 1994-11-14 06:10:37 +00:00
christos
f46f498d53 Changed code to KNF, removed global variable per cgd's request. 1994-10-29 00:43:14 +00:00
mycroft
ed0f09279e Reran makesyscalls.sh, to update SYS_* constants and fix truncated line. 1994-10-28 20:46:17 +00:00