Commit graph

1248 commits

Author SHA1 Message Date
Ben Gras 7dd225ffb2 delete redundant source 2007-04-12 16:30:59 +00:00
Ben Gras d61a481169 put the zoneinfo library files directly in the lib/stdtime dir 2007-04-12 14:29:30 +00:00
Ben Gras 85198a280c fix some compiler warnings. 2007-04-02 15:10:07 +00:00
Ben Gras 056ac0a0d3 replace library time handling functions
mktime, tzset, asctime, ctime, gmtime, localtime, strftime
with zoneinfo implementations in src/commands/zoneinfo, referenced
from src/lib/stdtime/Makefile.in.
2007-03-30 15:36:49 +00:00
Ben Gras 6ccd37a982 fix for filenames with paths 2007-03-30 15:35:15 +00:00
Ben Gras 6d50591226 . let kernel use read_tsc() from sysutil library
. read_tsc() in sysutil library saves edx and eax now
 . added read_tsc_64() by Antonio Mancina to load tsc into
   a 64-bit data type directly
 . deleted read_tsc.h in favour of a prototype in <minix/syslib.h>
2007-03-08 15:39:14 +00:00
Ben Gras be30a639cd Don't sys_kill SELF if a PM exit fails; just generate a fault to get
us killed through the kernel with PM finding out.

This makes it unnecessary for servers and drivers to be able to do
sys_kill generally, so KILL can go out of /etc/drivers.conf.
2007-02-23 12:54:02 +00:00
Ben Gras 168d766f32 . pci driver now returns devices, even when they have been pci_reserve()d
. pci_reserve() returns an error on devices that have already been reserved,
  instead of panic()ing; the pci_reserve() library call still panics,
  pci_reserve_ok() returns an int.
. this allows at_wini to use the instance value as intended, as all devices
  are seen, even reserved ones
. only devices actually used by at_wini are pci_reserve()d
. pci doesn't release devices based on argv[0], as at_wini both have the
  same name and multiple instances won't work together properly
2007-02-20 17:09:19 +00:00
Ben Gras 3275602598 . made memory parsing function into a library call
(moved 'struct memory' to <minix/type.h> for this library call)
 . removed some debugging messages from pci library
2007-02-16 15:54:28 +00:00
Ben Gras 2194bc0310 vfs/mount/rs/service changes:
. changed umount() and mount() to call 'service', so that it can include
   a custom label, so that umount() works again (RS slot gets freed now).
   merged umount() and mount() into one file to encode keep this label
   knowledge in one file.
 . removed obsolete RS_PID field and RS_RESCUE rescue command
 . added label to RS_START struct
 . vfs no longer does kill of fs process on unmount (which was failing
   due to RS_PID request not working)
 . don't assume that if error wasn't one of three errors, that no error
   occured in vfs/request.c
mfs changes:
 . added checks to copy statements to truncate copies at buffer sizes
   (left in debug code for now)
 . added checks for null-terminatedness, if less than NAME_MAX was copied
 . added checks for copy function success
is changes: 
 . dump rs label
drivers.conf changes:
 . added acl for mfs so that mfs can be started with 'service start',
   so that a custom label can be provided
2007-01-22 15:25:41 +00:00
Ben Gras f307d84cda Zlib is now an optional package. 2007-01-09 17:08:31 +00:00
Ben Gras 6f77685609 Split of architecture-dependent and -independent functions for i386,
mainly in the kernel and headers. This split based on work by
Ingmar Alting <iaalting@cs.vu.nl> done for his Minix PowerPC architecture
port.

 . kernel does not program the interrupt controller directly, do any
   other architecture-dependent operations, or contain assembly any more,
   but uses architecture-dependent functions in arch/$(ARCH)/.
 . architecture-dependent constants and types defined in arch/$(ARCH)/include.
 . <ibm/portio.h> moved to <minix/portio.h>, as they have become, for now,
   architecture-independent functions.
 . int86, sdevio, readbios, and iopenable are now i386-specific kernel calls
   and live in arch/i386/do_* now.
 . i386 arch now supports even less 86 code; e.g. mpx86.s and klib86.s have
   gone, and 'machine.protected' is gone (and always taken to be 1 in i386).
   If 86 support is to return, it should be a new architecture.
 . prototypes for the architecture-dependent functions defined in
   kernel/arch/$(ARCH)/*.c but used in kernel/ are in kernel/proto.h
 . /etc/make.conf included in makefiles and shell scripts that need to
   know the building architecture; it defines ARCH=<arch>, currently only
   i386.
 . some basic per-architecture build support outside of the kernel (lib)
 . in clock.c, only dequeue a process if it was ready
 . fixes for new include files

files deleted:
 . mpx/klib.s - only for choosing between mpx/klib86 and -386
 . klib86.s - only for 86

i386-specific files files moved (or arch-dependent stuff moved) to arch/i386/:
 . mpx386.s (entry point)
 . klib386.s
 . sconst.h
 . exception.c
 . protect.c
 . protect.h
 . i8269.c
2006-12-22 15:22:27 +00:00
Ben Gras 4daf936bd2 BSD versions of strcasecmp() and strncasecmp() after a bug
in strcasecmp() reported by Rogier Meurs <rogier@meurs.org>.
2006-12-19 13:15:16 +00:00
David van Moolenbroek d4e6fe3546 Setjmp/longjmp updates and cleanup. 2006-12-08 16:23:18 +00:00
Philip Homburg 170a72fd61 Missing lseek64 library functions. 2006-12-07 20:01:43 +00:00
Philip Homburg 8a2a957d49 Some 64-bit file offset changes that were left out accidentally in the first
commit.
2006-12-06 15:21:27 +00:00
Philip Homburg d84dd06b3f Better error handling in _mount.c 2006-11-24 14:01:14 +00:00
Ben Gras 03be184bd6 Fix warnings (Ingmar Alting) 2006-11-10 18:19:38 +00:00
Ben Gras f8a5db5ab0 Fix some warnings (by Ingmar Alting) 2006-11-10 18:13:02 +00:00
Philip Homburg ca448f0b0f Getdents implementation in library/vfs/mfs.
Changed readdir, etc. to use getdents
2006-11-09 16:22:54 +00:00
Ben Gras 7195fe3325 System statistical and call profiling
support by Rogier Meurs <rogier@meurs.org>.
2006-10-30 15:53:38 +00:00
Ben Gras fa0ba56bc9 Merge of VFS by Balasz Gerofi with Minix trunk. 2006-10-25 13:40:36 +00:00
Philip Homburg f9ccfca2a1 (Incomplete) support for access control in PCI (pci_set_acl).
-script argument to service for crash recovery scripts
-config argument to service for driver resource configuration
restart command in service to restart a driver after a crash (for use in
crash recovery scripts).
down and refresh now take labels instead of pids.
verious changes in rs to make this work.
2006-10-20 15:01:32 +00:00
Philip Homburg be928f01a5 Nice(3) implementation 2006-10-20 14:10:53 +00:00
Philip Homburg d24a880003 Added EOPNOTSUPP and better error handling in accept. 2006-09-14 13:48:41 +00:00
Ben Gras b90b5898e4 Let installing work as bin 2006-08-17 10:10:42 +00:00
Philip Homburg 6076eddf9c Use syslog for logging. 2006-08-10 14:11:25 +00:00
Ben Gras 5d8c07b3f2 Fix by Joren for setjmp to not clobber %ebx. 2006-08-02 12:03:02 +00:00
Ben Gras 18327f02a8 Introduced unprivileged getsysinfo variant, to retrieve harmless data
in formats that don't change (or is upwards compatible).
2006-07-27 16:23:01 +00:00
Ben Gras 6c7004423d Fix for %#02x bug (shouldn't print 0x, but junk was printed) found by
Joren l'Ami.  Also fixes %p when arg is 0 (printed 0 instead of 0x0).
2006-07-21 10:08:47 +00:00
Philip Homburg 59830eda3f Prototypes for send and recv. Fixed send (pass null address) and sendto
(fail when a null address is passed to a socket that is not connected).
2006-07-14 14:34:00 +00:00
Philip Homburg ee46e92dd2 Fixed ruserok not to required /etc/hosts.equiv. 2006-07-14 12:48:01 +00:00
Ben Gras 3512a86b44 . DS understands publishing and subscribing where keys are in string
form. Subscriptions are regular expressions.
 . different types are stored per key; currently u32 and/or string.
   the same key can be referenced (publish, subscribe, check) as any type.
 . notify()s are sent when subscriptions are triggered (publishing or
   updating of matching keys); optionally, a subscribe flag sends
   updates for all matching keys at subscription time, instead of only
   after updates after subscribing
 . all interfacing to ds is in /usr/src/lib/syslib/ds.c.
 . subscribe is ds_subscribe
   publish functions are ds_publish_<type>
   retrieve functions are ds_retrieve_<type> (one-time retrieval of a value)
   check functions are ds_check_<type> (check for updated key caller
      subscribes to not yet checked for, or ESRCH for none)
 . ramdisk driver updated with new ds interface
2006-07-13 14:50:23 +00:00
Philip Homburg 73e5de6354 Added sys_readbios.
Changed pci_dev_name and pci_slot_name to use safecopies.
Mae it possible to disable the use of safecopies in kputc for debugging.
2006-07-10 12:17:16 +00:00
Ben Gras 1561067ee4 Grant system dynamic-only. 2006-06-30 14:40:29 +00:00
Ben Gras 6b1f8de38a Added _select() stub for select(). 2006-06-27 18:28:33 +00:00
Ben Gras 59bedc2074 let dynamic allocation of table work 2006-06-27 14:15:47 +00:00
Ben Gras 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.
2006-06-27 12:19:45 +00:00
Ben Gras 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
2006-06-26 16:08:42 +00:00
Ben Gras 3b814d36d1 Rename paramctl to setgrant. 2006-06-23 15:35:05 +00:00
Ben Gras 002922fa4c New kernel call, SYS_PARAMCTL, that sets parameters of the caller
and is therefore unprivileged. Used to set grant tables.
2006-06-23 15:07:41 +00:00
Ben Gras 0e9c6932c4 use malloc() + copy + free() instead of realloc() 2006-06-23 12:07:41 +00:00
Ben Gras 31318a8ce5 library interface for vectored safecopy variant. 2006-06-23 11:54:35 +00:00
Philip Homburg 529ca8a4df Added strlcat and strlcpy. 2006-06-22 11:47:18 +00:00
Ben Gras 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
2006-06-20 08:45:04 +00:00
Philip Homburg a617a46e35 Retry read after EINTR. 2006-06-14 13:18:53 +00:00
Philip Homburg acebf7b52f Important BSD version of setenv, added killpg, replaced _sigsetjmp.c with
an assembler jump to longjmp.
2006-06-07 14:38:39 +00:00
Philip Homburg 3ea083b8d4 Actually remove allocmem and freemem sources from the library. 2006-05-19 12:45:55 +00:00
Philip Homburg 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).
2006-05-19 12:19:37 +00:00
Philip Homburg 71917d6383 Changes for restarting disk drivers and new interface between PM and FS. 2006-05-11 14:47:31 +00:00
Ben Gras 461a4fafb1 Added fchmod() and fchown() 2006-04-18 11:26:04 +00:00
Ben Gras 3172b4d0ad Patches by Jeff Bailey for posixifications. 2006-04-09 23:16:13 +00:00
Ben Gras 23f881aa29 Hack to mask 1586 ('extended family') as 686 2006-04-05 20:57:18 +00:00
Ben Gras 7d0b64505a Added getifaddrs() 2006-04-03 15:03:43 +00:00
Ben Gras d464faf987 updated syslog(), added setenv() 2006-04-03 15:03:07 +00:00
Philip Homburg 846ae81717 Fix for 'pci: mem_top too low' panic. Removed 'pci_next_dev: got nothing'
message.
2006-04-03 12:12:04 +00:00
Ben Gras 9e2ee91082 Don't close the master fd before returning if slave opens ok 2006-03-27 11:08:53 +00:00
Ben Gras 894fa0520e getsockname() reported local port and remote address - changed to local address. 2006-03-27 11:07:06 +00:00
Ben Gras 7b58dd7f9b Renamed findproc() to _pm_findproc() to reduce polluting of application
namespace.
2006-03-25 04:49:04 +00:00
Philip Homburg e6dbd5cabf Added SO_ERROR support for tcp sockets. 2006-03-24 14:07:42 +00:00
Ben Gras 65723cba53 Fix compiler warnings for pax 2006-03-24 14:03:25 +00:00
Ben Gras 0bcb14b384 _SC_PAGESIZE sysconf() support 2006-03-23 11:05:15 +00:00
Philip Homburg 36e8c1a185 Added assert to syslib. Moved panic from sysutil to syslib for assert.
Panic now tries sys_kill with SIGKILL first.
2006-03-15 12:06:18 +00:00
Jorrit Herder 376d8485d8 *** empty log message *** 2006-03-10 16:20:24 +00:00
Jorrit Herder 453beb04ad Library progress 2006-03-10 16:16:21 +00:00
Ben Gras 5d7f5fccf5 . rename message fields to endpoint variants
. remove or optionalify some pci debugging stuff
2006-03-03 09:44:55 +00:00
Philip Homburg b13e39ed1b Conditional compilation for SIGIOT and SIGEMT. 2006-02-17 14:12:47 +00:00
Philip Homburg 1991246020 Socket options SO_RCVBUF, SO_SNDBUF, and TCP_NODELAY. 2006-02-17 13:45:41 +00:00
Philip Homburg 38804a964b More error texts. 2006-02-17 13:44:48 +00:00
Ben Gras 30f7f852ba Really disable debug 2006-02-15 14:22:40 +00:00
Philip Homburg 7034c0795d Moved PCI driver to the ramdisk. 2006-02-15 14:21:56 +00:00
Ben Gras 1116853ae9 Turn off debug in getsockname.c
allow NULL for setgroups argument
2006-02-15 14:16:06 +00:00
Ben Gras 39816868de Make initgroups() fail if user has any supplemental groups. 2006-02-13 15:06:01 +00:00
Ben Gras 5911460ce5 Fake setgroups() and initgroups() implementation. 2006-02-13 15:00:49 +00:00
Ben Gras a3bda44a41 . use proper S_ISFIFO for ISFIFO check
. ignore ESPIPE error from lseek() in fflush() on read streams
  (because fifo's aren't detected when stdin, stdout or stderr)
2006-02-02 16:59:07 +00:00
Philip Homburg 8ec6f7af83 Make sys_privctl make the prototype. 2006-01-27 14:14:13 +00:00
Ben Gras 7392c839e0 fts import from freebsd
re-activated fchdir()
2006-01-27 14:01:36 +00:00
Philip Homburg 4a713d8b6d Added sys_privctl.c. 2006-01-27 12:54:47 +00:00
Ben Gras 030c1c2560 fchdir() fix 2006-01-20 12:49:24 +00:00
Ben Gras 36f91229ea Re-enable fchdir() 2006-01-20 12:44:16 +00:00
Ben Gras a85797f486 Make error message conditional 2006-01-18 09:47:22 +00:00
Ben Gras f4c085d3cc Added pci files. 2006-01-17 10:49:30 +00:00
Ben Gras 0e9a5612d7 Throw away unused dirs, generated Makefiles.
Moved some calls back.
2006-01-17 10:36:53 +00:00
Ben Gras 591e943779 Makefiles of Joren's new library build system. 2006-01-16 15:47:30 +00:00
Ben Gras 34d445c0af Joren's new library make system (minus Makefiles) 2006-01-16 15:44:55 +00:00
Philip Homburg f18faca855 Added pci_init1.c, pci_attr_r16.c, pci_attr_w8.c, pci_attr_w16.c,
and pci_rescan_bus.c
2006-01-12 14:37:37 +00:00
Ben Gras 50b06261b6 Implementation of truncate(), ftruncate() and the F_FREESP fcntl().
Implemented by changing write_map to accept a WMAP_FREE flag. In that
case, it doesn't update the datablock (creating indirect zones as
necessary) pointer, but it frees the datablock if present. Also it
frees the single and double indirect blocks if unused.

This makes the implementation of truncate_inode() simpler.
truncate_inode() now accepts a truncation length which makes
implementing truncate() and ftruncate() simple.

This also allowed implementing the F_FREESP fcntl().
2006-01-11 17:14:51 +00:00
Ben Gras ffe192724e Added truncate() and ftruncate() library calls (no FS support yet).
Added ELOOP message to errlist.
2005-12-20 14:18:16 +00:00
Ben Gras f6e5052597 seteuid() and setegid() 2005-12-13 09:48:29 +00:00
Philip Homburg 3dd0a97049 Stubs for accessing the PCI driver 2005-12-02 14:41:46 +00:00
Ben Gras 282e2f8e78 getloadavg() interface 2005-11-14 15:48:12 +00:00
Philip Homburg 233c092280 Resurrected sys_eniop. 2005-11-09 17:14:14 +00:00
Philip Homburg 6d02d10805 Added getprotobyname. 2005-11-09 15:42:38 +00:00
Philip Homburg 7394f38ed7 Added paramvalue to the library. 2005-11-08 13:59:27 +00:00
Ben Gras c6412ae342 "forward compatible" hack for lstat() - make new binaries work on old
systems
2005-11-07 13:15:09 +00:00
Philip Homburg ee80996c9a _sigsetjmp was missing. 2005-11-04 17:05:28 +00:00
Philip Homburg 36e1cb4436 sys_eniop was missing. 2005-11-04 17:03:49 +00:00
Ben Gras 94d370ca5f library fixes for symlink, readlink and lstat 2005-11-01 13:13:31 +00:00
Ben Gras 0604dc26a8 Giovanni's symlink patches. 2005-10-31 14:33:12 +00:00
Ben Gras b94a639398 Giovanni's symlink (+syslog+flock) patches. 2005-10-31 14:31:05 +00:00
Ben Gras 3acb6bf1fe Giovanni's symlinks patches (libs) 2005-10-31 14:28:19 +00:00
Philip Homburg 29eed99c71 Added paning variable to help routing debug output. 2005-10-24 13:47:24 +00:00
Ben Gras 69a0586adf Changes to make gcc compile our libraries too (Joren) 2005-10-21 11:19:35 +00:00
Ben Gras a19614a19f Included Makefiles for ack and gcc 2005-10-18 17:37:58 +00:00
Ben Gras df7c913bd9 Global included Makefile 2005-10-18 17:37:18 +00:00
Ben Gras 4be59c3e03 Restore -lm 2005-10-18 10:42:05 +00:00
Ben Gras ea75918df1 printf() by kernel and servers now send messages to an array of processes,
OUTPUT_PROCS_ARRAY in <minix/config.h>, in that order, terminated by NONE.
log no longer forwards messages to tty itself. This leads to less funny
loops and more robust debug-message handling. Also the list of
processes receiving messages can easily be changed around or disabled by
editing the array (e.g. disable it by changing the array to { NONE }.).
2005-10-18 10:34:54 +00:00
Ben Gras d87bfc438b Restore libm 2005-10-18 10:32:28 +00:00
Ben Gras c79574aba4 A new panic that makes processes exit with PM knowing about it, instead
of sys_exit, so that PM functions (e.g. findproc) keep working properly,
and RS finds out about process deaths.
2005-10-17 13:19:22 +00:00
Jorrit Herder eb5ed13fd3 New libary functions.
Cleanup of halt.c.
2005-10-12 15:10:14 +00:00
Ben Gras a65191aa6b Larger dummy -lm 2005-10-10 15:28:55 +00:00
Ben Gras 1da5b5ccee gcc subdir for combined gcc/ack library build 2005-10-10 15:28:15 +00:00
Ben Gras 8c53e4007e ack subdir for combined ack/gcc library build 2005-10-10 15:27:47 +00:00
Philip Homburg 9528152f68 Added sys_eniop, sys_vm_setbuf, and sys_vm_map. 2005-09-30 12:51:33 +00:00
Philip Homburg 731eee27c3 Nonblocking connect for TCP sockets. 2005-09-30 12:50:50 +00:00
Philip Homburg 4ac2d8d392 Optionally more debug output. 2005-09-30 12:50:14 +00:00
Philip Homburg 99fa9df344 X expects an implicit bind to INADDR_ANY for UDP sockets. 2005-09-30 12:49:10 +00:00
Philip Homburg c4184bb45b nonamed doesn't like DNS requests over TCP. So, don't try to use them. 2005-09-30 12:48:26 +00:00
Ben Gras 533eb3acfd zlib 1.2.2 -> 1.2.3 2005-09-23 22:39:07 +00:00
Ben Gras 9517eff5a4 Also a change by Joren 2005-09-06 10:15:57 +00:00
Ben Gras aad54cb32c Add fsync() interface. 2005-09-05 21:22:45 +00:00
Ben Gras 66b48eea33 Joren l'Ami 's updates to stdio, minor modification by me too (skip
doing anything in fflush() if stream is a pipe).
2005-09-05 17:17:58 +00:00
Ben Gras 9bc5da4276 Made socket() accept an udp or tcp protocol number 2005-09-01 15:24:29 +00:00
Ben Gras cda3096335 Patch by claudio for lynx 2005-09-01 14:59:28 +00:00
Philip Homburg b5abc91add Added getsockname and getsockopt. 2005-08-25 15:10:57 +00:00
Philip Homburg a61e8f28c7 Added basename(3) 2005-08-25 11:33:43 +00:00
Philip Homburg 4c863cf9fc Fixed 'connected' check. 2005-08-25 10:47:24 +00:00
Jorrit Herder e396496d8c Fixed small bug in alarm code.
Kernel timer count was not reset after expiry.
2005-08-05 16:46:27 +00:00
Philip Homburg 473317e571 Added dp8390 to /usr/etc/rc. Renamed get_mon_prm.c to env_get_prm.c.
Add env_setargs call for access to argc/argv.
2005-08-05 14:20:05 +00:00
Philip Homburg db5a8bb2b8 Added dp8390 driver. Additional env_parse functions that take argc and argv. 2005-08-05 09:53:08 +00:00
Ben Gras 5c9d34b62a Removed socket library, there is a socket library in libc now 2005-08-03 11:35:41 +00:00
Philip Homburg 343bd97aeb Removed old socket library. 2005-08-03 11:28:43 +00:00
Jorrit Herder b69ca94efb Fixed 'bug' in log driver that caused kernel messages not to be displayed.
This was caused by a change in the shared driver code. Not log's fault.

Renamed #definitions of driver process numbers, e.g., TTY now is TTY_PROC_NR.
All known (special) processes now have consistent naming scheme. Kernel tasks
don't follow this scheme.
2005-08-03 08:14:08 +00:00
Jorrit Herder 7af2b107d4 *** empty log message *** 2005-08-02 15:50:00 +00:00
Jorrit Herder 1d60e866c3 Various updates to support dynamically starting drivers. 2005-08-02 15:32:12 +00:00
Philip Homburg a5b0301024 small fix for connect 2005-08-01 14:47:24 +00:00
Philip Homburg e9ebecdd17 UDP support for connect. 2005-08-01 14:43:21 +00:00
Jorrit Herder 748b3dd434 Updates system library calls: interface changes (removed unused parameters).
Removed old notification trap: renamed alert() to notify() ... finally ;-)
2005-07-29 15:01:59 +00:00
Philip Homburg 49c25df569 bios_wini driver 2005-07-29 10:21:04 +00:00
Philip Homburg a7487a5c3c Added shutdown. EBADIOCTL in connect. Chaned some debug output. 2005-07-29 10:13:52 +00:00
Ben Gras 3f4e0a5f59 Took fchdir out of the user library, it's suspected of being buggy (in FS) 2005-07-27 18:48:48 +00:00
Jorrit Herder fe0dcb5c00 AT driver is not modified (debugging only);
TTY: select and revive with new notify and FS call back;
kernel: removed old notify code; removed ugly prepare_shutdown timer
kputc: don't send to FS if PRINTF_PROC fails
2005-07-27 14:32:16 +00:00
Philip Homburg e1f43abc09 Socket library 2005-07-27 11:57:59 +00:00
Philip Homburg 40b364a6db Added some error strings. 2005-07-27 11:53:05 +00:00
Jorrit Herder a41eb700e8 Minor fixes and improvements for sys_call(). 2005-07-26 13:51:21 +00:00
Ben Gras 08578c6afb Removed funny debug printf 2005-07-22 18:36:42 +00:00
Jorrit Herder e2b05e4f55 *** empty log message *** 2005-07-21 18:37:19 +00:00
Jorrit Herder ee509198a2 Removed 'tracing' flag from sys_exec. Logic is now local to PM.
Changed variable names in timers libary. Wrote new comments for
timers.h header file with explanation.
2005-07-20 15:33:54 +00:00
Ben Gras 0f48b1885d new -lutil, only openpty() for now 2005-07-19 16:01:37 +00:00
Jorrit Herder 5594b767c0 Renamed src/lib/utils to src/lib/sysutil --- because of new src/lib/util 2005-07-19 13:21:51 +00:00
Jorrit Herder 0129d98ae1 Added new signal types for kernel events:
- SIGKMESS: new kernel message (sent to TTY, IS, or LOG)
- SIGKSTOP: MINIX is shut down (sent to TTY-> switch to primary console)
- SIGKSIG: kernel signals pending (sent to PM)

Renamed SYS_SETPRIORITY to SYS_NICE.
2005-07-19 12:24:51 +00:00
Jorrit Herder 654722493b Renamed various system calls.
Cleaned up system call library.
Added new alert() trap to replace notify() --- current notify will be removed
and alert() will be called notify() later.
2005-07-14 15:13:33 +00:00
Ben Gras e2a0ddf863 Makefile fixes. 2005-07-13 14:59:04 +00:00
Ben Gras e1c5c6c8f3 .. 2005-07-11 14:16:53 +00:00
Philip Homburg 0cabfc76ee Usleep implementation based on select. 2005-07-11 13:08:00 +00:00
Philip Homburg b5809b6a81 Added random, strdup, and strtok_r. 2005-07-11 13:06:27 +00:00
Ben Gras 42050e39f8 kernel and servers send diagnostic messages to IS; IS sends them to TTY
and the new log driver if enabled.

new usyslogd is started from /usr/etc/rc. New device created by
MAKEDEV.sh. /var/log created by etc/mtree/minix.tree (on root for
now). Made select() slightly more generic, with less code duplication.
2005-07-08 17:30:01 +00:00
Jorrit Herder 2b3961eb91 Fixed annoying compile warnings. 2005-07-08 12:25:13 +00:00
Ben Gras 1adcfcdf1c Changed FD_* select() fd set manipulation functions to macros. Also
made FD_SETSIZE pre-#include-definable, with OPEN_MAX as default if unset.
2005-07-06 07:22:21 +00:00
Ben Gras f0817fbd4c complete, tick-resolution gettimeofday() implementation 2005-07-06 07:08:36 +00:00
Ben Gras 3dcb2886ff get/setpriority() and fsync() system calls 2005-07-01 18:01:33 +00:00
Jorrit Herder 7f2e7461e6 Fix stupid assumption that caused headache.
Timers lib now seems to work fine again.
2005-07-01 17:17:13 +00:00
Ben Gras af27dc0cf7 Added fchdir() system call, with corresponding manpage, Changelog and
system include modifications.
2005-06-29 19:28:26 +00:00
Philip Homburg 62f7f9e6d2 Added mkstemp function. Should use a secure random number generator. 2005-06-29 15:29:08 +00:00
Ben Gras 2abe246e5c (Im)port of zlib-1.2.2
Ran configure with minix-friendly args and committed makefile. It's
a compromise to make zlib fit nicely into the current build system.
2005-06-27 13:05:04 +00:00
Ben Gras 205d288bb3 Fixed a few compile warnings
Imported a BSD-licensed getopt() from FreeBSD
2005-06-27 09:30:33 +00:00
Jorrit Herder e3bb0e40ee Removed sys_exit() kernel call. 2005-06-24 16:19:41 +00:00
Philip Homburg 0979014807 Renamed some types Uid_t, Gid_t, Mode_t, etc. for perl5.
More space for synctree.
2005-06-23 11:07:31 +00:00
Jorrit Herder ec24a0798c Updated function key mapping because of possible changes to NOTIFY.
The TTY driver now only notifies the IS server about function key event,
but does not tell which keys are pressed. The IS servers queries the TTY
driver to find out about this.
2005-06-20 14:23:31 +00:00
Ben Gras 39c90d6c90 Added (fake) readlink().
Compile fix for fslib (BITS_PER_BLOCK was renamed to FS_BITS_PER_BLOCK).

Added extra arg to various timer functions.
2005-06-17 13:47:29 +00:00
Jorrit Herder 7279bb68ef Applied MINIX 2.0.4 pathes provides by Al Woodhull. 2005-06-17 13:00:04 +00:00
Ben Gras b7c75fab5b Added dummy readlink() call that returns an error (we don't have symlinks
yet)

also select() stub
2005-06-17 11:43:24 +00:00
Jorrit Herder 4a2817cea1 Changed uname to retrieve actual OS release and version number at runtime. 2005-06-17 08:53:33 +00:00
Philip Homburg dc23e18cef Improved compatibility with other Unix systems. 2005-06-10 15:12:03 +00:00
Ben Gras aca763443a removed debug message 2005-06-06 14:58:47 +00:00
Jorrit Herder 2f74381dcc Fixed 'ps' utility: now get process table addresses with getsysinfo() calls.
To be done: get copies of process tables instead of using /dev/(k)mem.
2005-06-06 13:51:50 +00:00
Ben Gras e44e9ad261 small compile fixes; initial select() stubs; release.sh script doesn't
need /tmp any more since 16MB root device; increase to 3.0.5 to make new
CD with working FXP driver. (not tagged 3.0.5 yet as at driver bios-copy
workaround hasn't been done.)
2005-06-06 11:40:32 +00:00
Ben Gras 9392dde997 bugfix 2005-06-06 11:31:20 +00:00
Jorrit Herder c281867f46 Fixed bug relating to FS and MEMORY during startup;
Relocated some syslib functions to utils library;
Changed location of 'Multiuser startup ..." echo in /etc/rc
2005-06-06 09:30:44 +00:00
Jorrit Herder f2a85e58d9 Various updates.
* Removed some variants of the SYS_GETINFO calls from the kernel;
  replaced them with new PM and utils libary functionality. Fixed
  bugs in utils library that used old get_kenv() variant.
* Implemented a buffer in the kernel to gather random data.
  Memory driver periodically checks this for /dev/random.
  A better random algorithm can now be implemented in the driver.
  Removed SYS_RANDOM; the SYS_GETINFO call is used instead.
* Remove SYS_KMALLOC from the kernel. Memory allocation can now
  be done at the process manager with new 'other' library functions.
2005-06-03 13:55:06 +00:00
Jorrit Herder e782e76944 Created new findproc system call to the PM (to replace similar kernel
functionality). Currently working on memory allocation (not yet finished).
2005-06-02 12:43:21 +00:00
Jorrit Herder 6d23f072f3 Cleaned up src/lib/utils library. Renamed server_ functions to more logical
names. All system processes can now either use panic() or report() from
libutils, or redefine their own function. Assertions are done via the standard
<assert.h> functionality.
2005-06-01 14:31:00 +00:00
Ben Gras b4335679cb Added sys_physzero library call for corresponding system call; modified
system-printf() so it returns number of characters printed (for use in
smart formatting)
2005-06-01 09:36:07 +00:00
Jorrit Herder f0af8d85e7 *** empty log message *** 2005-05-31 14:44:49 +00:00
Jorrit Herder 0165662cd9 Replaced flagalrm() timers with another technique to check for timeouts.
This allowed removing the p_flagarlm timer from the kernel's process table.
Furthermore, I merged p_syncalrm and p_signalrm into p_alarm_timer to save
even more space. Note that processes can no longer have both a signal and
synchronous alarm timer outstanding as of now.
2005-05-31 14:43:04 +00:00
Jorrit Herder 322ec9ef8b Moved stime, time, times POSIX calls from FS to PM. Removed child time
accounting from kernel (now in PM).  Large amount of files in this commit
is due to system time problems during development.
2005-05-31 09:50:51 +00:00
Jorrit Herder b421423c77 SENDREC now always has flag FRESH_ANSWER to prevent pending notifications
to be used as answer to a SENDREC call.
2005-05-30 11:11:40 +00:00
Jorrit Herder 8d9c0886cd Created ECHO system call for testing purposes.
Furthermore, a quick way to get one's own process number.
2005-05-27 13:57:00 +00:00
Jorrit Herder d0a5a5d007 New system call added to PM: getprocnr(int *proc_nr) (like getpid);
Minor update to scheduling code (unready().
2005-05-20 09:37:43 +00:00
Jorrit Herder 307c825515 New NOTIFY trap (IPC call) to send queued notification messages.
The call works. Permission check, restriction of outstanding notifications
to be added. Low level code to make it work from within interrupt handlers
will be added as well.
2005-05-19 14:05:51 +00:00
Jorrit Herder 1cb880b158 Intermediate update---please await next commit. 2005-05-19 09:36:44 +00:00
Ben Gras 7f52483b9f Release process to use and create 16MB root; FS setcache call removed 2005-05-13 12:47:35 +00:00
Jorrit Herder 49b86f3373 Fixed tick_delay; it now reschedules a previous synchronous alarm. 2005-05-13 09:33:53 +00:00
Ben Gras 0e859fd436 Must be able to run FP.compile if FP.compile isn't an executable script. 2005-05-03 15:41:39 +00:00
Ben Gras 6a335043f6 bugfix from jnherder 2005-05-03 09:03:55 +00:00
Jorrit Herder ac0995259d *** empty log message *** 2005-05-02 14:30:04 +00:00
Jorrit Herder 89ac678b9b *** empty log message *** 2005-04-29 15:36:43 +00:00
Ben Gras 9865aeaa79 Initial revision 2005-04-21 14:53:53 +00:00