Age | Commit message (Collapse) | Author |
|
* users.c (S_term_get_peername): Compare BOTTOM against the
correct value, and call ports_port_deref with the proper name.
Reported by Yamashita TAKAO (az207@epa.go.jp).
* devio.c (devio_desert_dtr): Cast &BITS correctly in call to
device_set_status.
(device_open_reply): Alwas clean open_pending no matter what. Use
ERR instead of ERRNO. On fake opens, close the device before
deallocating the port.
Reported by Mark Kettenis (kettenis@gnu.org).
Tue Mar 16 01:04:06 1999 Thomas Bushnell, BSG <tb@mit.edu>
* devio.c (open_pending): Make an enum.
(devio_desert_dtr): Don't close the device, just set the TM_HUP
modem bit, which should cause a hangup to occur.
(devio_assert_dtr): Don't always open the device, instead use
initial_open the first time, and schedule a fake open the other
times.
(initial_open): New function, guts from old device_assert_dtr.
(device_open_reply): Distinguish replies from initial and fake
opens appropriately.
(ports_do_mach_notify_send_once): Test and set open_pending using
new enum values.
|
|
* users.c (S_term_get_peername): Implement new RPC.
* users.c (S_term_get_nodename): Return ENOENT if the name is not
set.
|
|
* migsupport.c (trivfs_begin_using_protid): In first branch,
protect work against PI being null, and call ports_port_deref with
the proper value.
(trivfs_begin_using_control): Likewise.
Reported by Mark Kettenis (kettenis@wins.uva.nl).
|
|
* term.defs (term_get_peername): New RPC, suggested by Mark
Kettenis (kettenis@wins.uva.nl).
|
|
|
|
|
|
* boot.c: Fix typo in last change.
|
|
* users.c (po_destroy_hook): Only reset state and hardware if
TTY_OPEN bit is set in TERMFLAGS.
|
|
* ethernet.c (ether_filter): Use a shorter filter program.
(ether_filter_len): Compute more safely.
|
|
|
|
* mgt.c (S_proc_reassign): Remove unused variable FOO.
|
|
* login.c (add_utmp_entry): Properly call setutent and endutent
around the getutline call.
|
|
* notify.c (do_mach_notify_dead_name): Remove unnecessary braces.
* msg.c (S_proc_setmsgport): Remove unused variable FOO.
(S_proc_getmsgport): Only check if the message port is still alive
if it is not MACH_PORT_NULL. Use mach_port_type instead of
mach_port_get_refs to check if the port is dead.
* mgt.c (S_proc_reassign): Use mach_port_destroy to release the
old task port.
|
|
|
|
* Makefile: Add rules for building info, dvi and ps files.
* hurd.texi: Change the basic structure, and add a lot more
information.
|
|
|
|
* portinfo.c (main): Grok -E and inhibit error msg for
print_xlated_port_info if set.
(options): #if 0 -q option until we implement it.
|
|
|
|
* boot.c (main): Only use real device name if root_store is for an
enforced single run starting at the beginning of the device.
|
|
* notify.c (do_mach_notify_dead_name): Don't check against
P->p_msgport anymore.
* msg.c (message_port_dead): Delete function.
(S_proc_setmsgport): Don't request a dead-name notification
anymore.
(S_proc_getmsgport): Check to see if P->p_msgport is dead before
returning it.
* mgt.c (S_proc_reassign): Only use mach_port_deallocate to
release P->msgport.
(process_has_exited): Likewise.
* proc.h (message_port_dead): Delete prototype.
|
|
|
|
* lmail.c (OPT_REMOVE): New macro.
(options): Don't recognize -r as an alias for --remove, but
recognize it separately as a hidden alias.
(main / parse_opt): Make -d do nothing.
Make -r an alias for -f. Have OPT_REMOVE do the removal thing.
Reported by Mark Kettenis (kettenis@wins.uva.nl).
|
|
* mgt.c (S_proc_reassign): It's not necessary to re-request the
task-death notification; we've moved both the task right and the
proc port that gets the notification, so delete that.
* mgt.c (S_proc_reassign): Use mach_port_destroy instead of
mach_port_deallocate to release P->p_msgport, for the same reasons
as the changes below.
|
|
|
|
* boot.c (main): Add newline to error msg.
Patch by Marcus Brinkmann <Marcus.Brinkmann@ruhr-uni-bochum.de>.
|
|
* mgt.c (process_has_exited): Use mach_port_destroy instead of
mach_port_deallocate to release P->p_msgport.
(complete_exit): Likewise for P->p_task.
These changes eliminate a race; we are destroying the receiver of
the dead-name notifications on these ports, but if that means we
lose a notification, then the ref-count on the name will get
incremented and we can't re-decrement it since we never hear the
notification.
|
|
|
|
* primes.c: Fix last change.
|
|
|
|
* def_pager_setup.c (default_pager_setup): #if 0 out unused function.
|
|
* bootstrap.c (main: scrript_paging_file): Pass LINUX_SIGNATURE arg
through to add_paging_file.
|
|
* default_pager.c (default_pager_paging_file): Pass 0 for new
LINUX_SIGNATURE arg to add_paging_file.
|
|
* notify.c (do_mach_notify_dead_name): Deallocate reference to
DEADPORT.
|
|
* notify-dead-name.c (ports_do_mach_notify_dead_name): Deallocate
newly created reference to DEAD_NAME.
|
|
* start-translator-long.c (service_fsys_startup): Doc fixes, and
omit unused member `dead' from REQUEST.
|
|
* init.c (do_mach_notify_dead_name): Deallocate the extra
reference to NAME that the notification carries.
|
|
* group, passwd: Revert preceding change.
|
|
* passwd (bin): New entry with ID 0, for compatibility with BSD.
* group (bin, kmem): Likewise.
|
|
* dir-lookup.c (netfs_S_dir_lookup): Only set newnode to 1 if the
lookup does not need to be retried as a result of getting EEXIST.
|
|
* primes.c (_ihash_nextprime): Use a dynamically-sized array for
`seive' instead of alloca, so that if we are looping we won't
allocate more stack than necessary. Suggested by wesommer@mit.edu
(Bill Sommerfeld).
|
|
|
|
* pf.c (S_socket_whatis_address): Implement. Since we cannot tell
what our adress is, return an empty string as the file name.
|
|
* munge.c (output_width): If C is a tab, then the width is the
offset from LOC, not the total final position of the tab.
Reported by Kalle Olavi Niemitalo <tosi@ees2.oulu.fi).
|
|
|
|
* users.c (trivfs_S_io_revoke): Use ports_class_iterate.
|
|
* main.c (S_startup_dosync): Use ports_class_iterate.
(sigterm_handler): Likewise.
|
|
* destroy-right.c (ports_destroy_right): Return error_t (always 0).
* ports.h: Update decl.
* bucket-iterate.c (_ports_bucket_class_iterate): New function,
transmorgified from ports_bucket_iterate.
(ports_bucket_iterate): Now just call that to do the work.
* class-iterate.c: New file.
(ports_class_iterate): New function.
* ports.h: Declare ports_class_iterate and _ports_bucket_class_iterate.
* Makefile (SRCS): Add class-iterate.c.
|
|
* destroy-right.c (ports_destroy_right): Return error_t (always 0).
* ports.h: Update decl.
|
|
* bucket-iterate.c (_ports_bucket_class_iterate): New function,
transmorgified from ports_bucket_iterate.
(ports_bucket_iterate): Now just call that to do the work.
* class-iterate.c: New file.
(ports_class_iterate): New function.
* ports.h: Declare ports_class_iterate and _ports_bucket_class_iterate.
* Makefile (SRCS): Add class-iterate.c.
|
|
* io-revoke.c (netfs_S_io_revoke): Use ports_class_iterate.
|