bd535a120b
. satisfy some gcc warnings (uninitialized/unused variables) . change cloexec mask from long to fd_set to remove 32 fd's per process restriction (from cloexec at least)
Ben Gras
2006-06-27 16:47:35 +00:00
a0f8161fe7
Stopgap for tar creating insane group ownerships due to tiny gid_t.
Ben Gras
2006-06-27 16:30:46 +00:00
59bedc2074
let dynamic allocation of table work
Ben Gras
2006-06-27 14:15:47 +00:00
607fb6bf7f
Add a flag to grants system indicating a slot is VALID; so a slot can be reserved (USED), while toggling VALID on and off.
Ben Gras
2006-06-27 12:19:45 +00:00
a587273c56
. expanded grant manipulation interface to more direct manipulation . made fs allocate a grant for every ioctl, even if no data is being copied, in order to disambiguate concurrent ioctls on the same minor
Ben Gras
2006-06-26 16:08:42 +00:00
2f50f92eb3
Move inet to safe copies.
Philip Homburg
2006-06-26 16:03:35 +00:00
961a173573
Fix to let elle understand window size.
Ben Gras
2006-06-26 15:15:40 +00:00
de07a562d1
Vectored safe copies for inet.
Philip Homburg
2006-06-26 14:20:11 +00:00
14c9743ecf
First cut at safe copies for inet. Breaks tcpstat.
Philip Homburg
2006-06-26 11:17:19 +00:00
48a6203ae7
A backup of the readclock command that shouldn't have been imported into cvs.
Ben Gras
2006-06-26 08:58:11 +00:00
3b814d36d1
Rename paramctl to setgrant.
Ben Gras
2006-06-23 15:35:05 +00:00
add4be444f
get_sys_bits
Philip Homburg
2006-06-23 15:32:24 +00:00
002922fa4c
New kernel call, SYS_PARAMCTL, that sets parameters of the caller and is therefore unprivileged. Used to set grant tables.
Ben Gras
2006-06-23 15:07:41 +00:00
8dfac43a75
Print ipc_to in hex. Also print the 'system' call mask.
Philip Homburg
2006-06-23 13:27:03 +00:00
777dbbe3f7
Everyone's endpoint number
Ben Gras
2006-06-23 12:16:22 +00:00
0e9c6932c4
use malloc() + copy + free() instead of realloc()
Ben Gras
2006-06-23 12:07:41 +00:00
3ffa1684ae
New option -E for ps that prints endpoint numbers instead of pids.
Ben Gras
2006-06-23 11:59:20 +00:00
31318a8ce5
library interface for vectored safecopy variant.
Ben Gras
2006-06-23 11:54:35 +00:00
d402047222
Added vectored variant of sys_safecopy*.
Ben Gras
2006-06-23 11:54:03 +00:00
82855e9cf5
. leave out dead code from device.c . don't loop doing a receive() after sendrec() - chance of recovering is not high, and can lead to receive()ing a notify() (which can't happen in sendrec()), which is terrible . return status from device when DEV_CANCEL is done on a signal; hardcode EAGAIN to become EINTR though
Ben Gras
2006-06-23 11:51:56 +00:00
08bb0f7708
No longer build Michael Temari's httpd. Install a httpd from ports.
Philip Homburg
2006-06-22 11:53:03 +00:00
529ca8a4df
Added strlcat and strlcpy.
Philip Homburg
2006-06-22 11:47:18 +00:00
bd783b901f
Added prototype for inet_aton.
Philip Homburg
2006-06-22 11:45:59 +00:00
20a9ca246d
Added __minix3 to make it easier to figure out that we are compiling on/for Minix 3.
Philip Homburg
2006-06-22 11:44:17 +00:00
ed9be75384
<minix/safecopies>
Ben Gras
2006-06-20 14:25:42 +00:00
7b6a1e5f59
More space for rs
Ben Gras
2006-06-20 10:59:45 +00:00
0d39b17655
Changed order of -lsys and -lsysutil for printf()
Ben Gras
2006-06-20 10:50:29 +00:00
705f1039d9
order changed for printf()
Ben Gras
2006-06-20 10:47:25 +00:00
cef426ee54
There is no lex.
Ben Gras
2006-06-20 10:14:25 +00:00
848b96a9a4
Fixes for usb and bios.
Ben Gras
2006-06-20 10:13:56 +00:00
223a0e7b60
Fix for KERNEL definition.
Ben Gras
2006-06-20 10:13:32 +00:00
150c964b49
Fix for losing REVIVE
Ben Gras
2006-06-20 10:12:30 +00:00
2384a85296
FS support for grant-based i/o.
Ben Gras
2006-06-20 10:12:09 +00:00
54f1e6d3d4
Use endpoint_t
Ben Gras
2006-06-20 10:04:33 +00:00
7a76a7a495
Rename protected to prot
Ben Gras
2006-06-20 10:03:48 +00:00
3061d7b17a
Changed do_devio not to require DIO_TYPE, but to extract type from DIO_REQUEST. Also do_vdevio. Also do_sdevio, but this function also supports grant id's and offsets.
Ben Gras
2006-06-20 10:03:10 +00:00
ada6592af9
Prototype of do_safecopy
Ben Gras
2006-06-20 09:59:50 +00:00
bf6fa2acd0
Introduced global sys_call_code to check in called kernel call implementation functions.
Ben Gras
2006-06-20 09:58:58 +00:00
b89c6634f5
Use endpoint_t. New prototypes for related to grants and safecopy functions.
Ben Gras
2006-06-20 09:57:00 +00:00
2e89eb5270
Change allowed kernel call bitmap to an array of bitmaps to allow any number of kernel calls.
Ben Gras
2006-06-20 09:56:06 +00:00
eecb40cf21
Rename protected to prot for g++
Ben Gras
2006-06-20 09:52:11 +00:00
28950e6104
Use endpoint_t type
Ben Gras
2006-06-20 09:51:49 +00:00
831bc7ecd1
Move bitmap manipulation macros to <minix/bitmap.h>
Ben Gras
2006-06-20 09:50:26 +00:00
281e76364a
Conversion to safe calls, and returning grant in DEV_REVIVE messages
Ben Gras
2006-06-20 09:49:02 +00:00
d61715a69e
Fix for new *_ins* i/o functions
Ben Gras
2006-06-20 09:48:26 +00:00
6d8fa97233
Kick out REVIVE
Ben Gras
2006-06-20 09:47:23 +00:00
b80626c878
safe conversion
Ben Gras
2006-06-20 09:46:57 +00:00
1c8b206a5d
. Safe I/O, ioctl() and DIAGNOSTICS variants conversion - safe copies, include grant id in DEV_REVIVE messages. . Removal of TTY_FLAGS field (and so O_NONBLOCK support). . Fixed CANCEL behaviour and return code on blocking I/O, previously handled by O_NONBLOCK . Totally removed REVIVE replies, previously still possible on blocking ioctls (REVIVE directly called) and ptys (missing TTY_REVIVE check), removes deadlock bug with FS . Removed obsolete *COMPAT options and associated code
Ben Gras
2006-06-20 09:02:54 +00:00
9fa06d5e3f
safe conversion
Ben Gras
2006-06-20 08:56:58 +00:00
5350645c86
Safe I/O and ioctl functions
Ben Gras
2006-06-20 08:56:15 +00:00
60bbcab13f
Understand *_S variants: DIAGNOSTICS_S, DEV_{READ,WRITE,IOCTL}_S, include grant id in DEV_REVIVE messages
Ben Gras
2006-06-20 08:55:35 +00:00
3ca26c812d
Change to 'safe' copy variant
Ben Gras
2006-06-20 08:54:22 +00:00
ad6d8a53c8
Understand *_S variants
Ben Gras
2006-06-20 08:52:26 +00:00
4fa6691106
Change for safe copies, and DEV_REVIVE message including grant id
Ben Gras
2006-06-20 08:52:11 +00:00
3bd3c2cee1
Change at driver to understand 'safe' transfers and ioctls; do corresponding safe copy and safe sys_insw and sys_outsw calls.
Ben Gras
2006-06-20 08:51:24 +00:00
e929676268
. made libdriver understand *_S variants . ioctl, transfer and 'other' functions get an extra parameter: 'safe', int is nonzero if function is called with *_S variant ('other' if ioctl)
Ben Gras
2006-06-20 08:49:51 +00:00
9be69be836
. flex moved back into the base system, so prefix is /usr . sysenv.c and umount.c need <minix/type.h> now
Ben Gras
2006-06-20 08:46:45 +00:00
296a0fb33d
/CD check unnecessary
Ben Gras
2006-06-20 08:46:09 +00:00
9df1183b94
. removed const from putenv() for g++ . added safecopies.c: these are library functions to maintain grant tables in own address space . sys_safecopy.c: interfaces to kernel calls to perform safe copy functions in from or to foreign process . changes in i/o fields (type merged with request) reflected in library functions (sys_out.c, sys_vinb.c, sys_vinl.c, sys_vinw.c, sys_voutb.c, sys_voutl.c, sys_voutw.c) . type merged with request in sys_sdevio, also now accepts offset which is used when a grant is specified (the _DIO_SAFE subtype) . system printf() function changed to send DIAGNOSTICS_S messages, which specify a grant id instead of a direct address for the buffer to be printed; tty and log can then safecopy the buffer
Ben Gras
2006-06-20 08:45:04 +00:00
cfb984e9bd
. renamed __str to __makestr to allow for g++ . changed some CMOS ioctl codes to have correct sizes (struct tm instead of u32_t), a disk ioctl code from W to RW, and memory ioctl codes from R to W, needed for proper matching of grant in FS
Ben Gras
2006-06-20 08:40:26 +00:00
aaca17c36d
. introduced DEV_READ_S, DEV_WRITE_S, DEV_SCATTER_S, DEV_GATHER_S and DEV_IOCTL_S as replacements for DEV_READ, DEV_WRITE, DEV_SCATTER, DEV_GATHER and DEV_IOCTL. Instead of a direct address, the *_S commands pass 'grant ids' to the drivers which are referenced through a new set of copy calls (sys_safecopyfrom and sys_safecopyto). in order for this copy to succeed, the grant must have previously been created in the address space of the granter. . bitmap manipulation functions moved to <minix/bitmap.h> . HIGHPOS introduced as field containing high 32 bits of position in device I/O message; TTY_FLAGS no longer used . IO_GRANT field introduced for GRANTs, to replace ADDRESS . REP_IO_GRANT field for un-SUSPEND messages introduced to indicate grant for which I/O was done to disambiguate messages . SYS_SAFECOPYFROM and SYS_SAFECOPYTO introduced as new calls . SYS_PRIV_SET_GRANTS code introduced as a code to set the address and size of the grant table in a process' own address space . 'type' and 'direction' field of _ins* and _outs* I/O functions are merged into one by ORing _DIO_INPUT/_DIO_OUTPUT and _DIO_BYTE/_DIO_WORD etc. This allows for an additional parameter, _DIO_SAFE, which indicates the address in another address space isn't actually an address, but a grant id. Also needs an offset, for which fields had to be merged. . SCP_* are field names for SYS_SAFECOPY* functions . DIAGNOSTICS and GET_KMESS moved to their own range above DIAG_BASE, added DIAGNOSTICS_S which is a grant-based variant of DIAGNOSTICS . removed obsolete BINCOMPAT and SRCCOMPAT options . added GRANT_SEG type for use in vircopy - allows copying to a grant id (without offset) . added _MINIX_IOCTL_* macros that decode information encoded by _IO* macros in ioctl codes, used to check which grants are necessary for an ioctl . introduced the type endpoint_t for process endpoints, changed some prototypes and struct field types to match . renamed protected to prot for g++
Ben Gras
2006-06-20 08:38:15 +00:00
6ef5aa4fb2
. flex back into the base system . imports of Michael Temari's httpd and ftp
Ben Gras
2006-06-19 14:58:20 +00:00
aa5efff203
Initial revision
Ben Gras
2006-06-19 14:55:09 +00:00
ede3e5ab83
Al Woodhull's new manual pages
Ben Gras
2006-06-19 14:51:41 +00:00
3edf4c2854
Prototype for readline.
Philip Homburg
2006-06-14 13:19:48 +00:00
a617a46e35
Retry read after EINTR.
Philip Homburg
2006-06-14 13:18:53 +00:00
221e731e45
Wake up writer when selecting for read on an empty pipe. Set fp_revived to NOT_REVIVING when decrementing reviving.
Philip Homburg
2006-06-14 13:17:41 +00:00
474d137c39
Forgot include some Minix 3 specific changes.
Philip Homburg
2006-06-07 15:03:42 +00:00
cb02a90b77
Fixed some select bugs related to pipes. Removed SELFD_* because they were bogus and unused.
Philip Homburg
2006-06-07 14:41:47 +00:00
373ea53510
A bigger ramdisk is needed for the new version of ash.
Philip Homburg
2006-06-07 14:39:50 +00:00
acebf7b52f
Important BSD version of setenv, added killpg, replaced _sigsetjmp.c with an assembler jump to longjmp.
Philip Homburg
2006-06-07 14:38:39 +00:00
3f297ffd9f
Added killpg to signal.h, rearranged getloadavg, putenv, and setenv in stdlib.h and added unsetenv, added declaration of optreset to unistd.h.
Philip Homburg
2006-06-07 14:36:35 +00:00
eaf9e4cff8
Make sure that line editing is disabled when the shell is not connected to a tty.
Philip Homburg
2006-05-29 13:20:28 +00:00
43d9263589
Parsing of '-OT' and '-OS' failed in acd.descr.
Philip Homburg
2006-05-29 12:29:25 +00:00
5f19e53afb
Install /usr/lib/descr from the source tree.
Philip Homburg
2006-05-29 12:25:44 +00:00
7aa4c9ec2f
New version of ash. From FreeBSD 5.4 via Minix-vmd.
Philip Homburg
2006-05-23 12:59:34 +00:00
3ea083b8d4
Actually remove allocmem and freemem sources from the library.
Philip Homburg
2006-05-19 12:45:55 +00:00
e9aabcf2f8
Disabled building rescue driver (no longer needed). Moved allocmem from library to the memory driver. Always put output from within TTY directly on the console. Removed second include of driver.h from tty.c. Made tty_inrepcode bigger. First step to move PM and FS calls that are not regular (API) system calls out of callnr.h (renumbered them, and removed them from the table.c files). Imported the Minix-vmd uname implementation. This provides a more stable ABI than the current implementation. Added a bit of security checking. Unfortunately not nearly enough to get a secure system. Fixed a bug related to the sizes of the programs in the image (in PM patch_mem_chunks).
Philip Homburg
2006-05-19 12:19:37 +00:00
c3cf4ef460
Fixed off by one error in backoff code. Limit backoff to 1 second for disk drivers.
Philip Homburg
2006-05-15 12:08:43 +00:00
c9ff3994f1
Unpause requests (to FS) can be generated in parallel to other requests.
Philip Homburg
2006-05-15 12:06:19 +00:00
f0186f4179
Do not unmap a driver when the driver dies (it interferes with restarting disk drivers). Fixed accounting for REVIVING/reviving.
Philip Homburg
2006-05-15 11:43:06 +00:00
ae92cc208d
The new service command managed to escape.
Philip Homburg
2006-05-11 15:30:56 +00:00
14b7a72ba3
Init need more space (the results of removing the special case for init in adjust in PM). Better flags dump in IS.
Philip Homburg
2006-05-11 15:00:46 +00:00
e4967b06bb
Special code for restarting disk drivers (-c flag in service).
Philip Homburg
2006-05-11 14:58:33 +00:00
773844a816
New interface between PM and FS.
Philip Homburg
2006-05-11 14:57:23 +00:00
94717cb74c
Pass -c flags to service for disk device drivers.
Philip Homburg
2006-05-11 14:53:20 +00:00
aeb6630868
Ignore SIGHUP in floppy driver.
Philip Homburg
2006-05-11 14:52:40 +00:00
15b8fe54a8
Better initialization of the memory map of processes that are part of the image. Removed NO_MAP flag.
Philip Homburg
2006-05-11 14:49:46 +00:00
71917d6383
Changes for restarting disk drivers and new interface between PM and FS.
Philip Homburg
2006-05-11 14:47:31 +00:00
5a8315cf5b
call cons_stop() before sys_abort() to not break tty on shutdown
Ben Gras
2006-05-11 14:01:44 +00:00
5a3d6ac67f
Balance curly braces.
Philip Homburg
2006-05-10 15:39:52 +00:00