Age | Commit message (Collapse) | Author |
|
* term.h (struct bottomhalf): New member GWINSZ.
* devio.c (devio_bottom): Add new member.
* ptyio.c (ptyio_bottom): Likewise.
* hurdio.c (hurdio_bottom): Likewise.
(hurdio_gwinsz): New function.
(tioc_caps): Change type to unsigned int.
(TIOC_CAP_GWINSZ): New symbol.
* users.c (open_hook): Call GWINSZ of bottom layer after
establishing the carrier.
|
|
|
|
* ptyio.c (pty_io_readable): int -> size_t in argument type.
* term.h: Update decl.
* users.c (trivfs_S_io_write): int -> size_t in AMT argument type.
(trivfs_S_io_readable): Likewise.
(trivfs_S_io_read): Likewise. Also u_int -> size_t, off_t -> loff_t.
(trivfs_S_io_write): Likewise.
(trivfs_S_io_map): Add reply port args.
|
|
* main.c: Include <error.h>.
(main): Use error, not fprintf and exit or perror and exit. Use
ERR, not errno. Use MACH_PORT_NULL explicitly.
* users.c: Include <error.h>.
(init_users): Use ERR, not errno. Use error, not perror and exit.
|
|
* main.c (main): Use memset instead bzero.
Fix error message, and formatting of some comments.
* ptyio.c (pty_io_read): Use memcpy instead bcopy.
* users.c (S_tioctl_tiocflush): Ignore error by bottom handler's
notice_input_flushed.
* users.c (set_state): Likewise.
If bottom handler's set_bits fails, don't adjust terminal state
but return success anyway.
|
|
* term.h: Declare rdev.
* main.c (options): New variable.
(parse_opt): Handle case `n' to set rdev number.
Also return EINVAL if terminal type is invalid.
* users.c (trivfs_modify_stat): Set ST->st_rdev to global rdev.
|
|
* term.h: Include `hurd/hurd_types.h'.
(struct bottomhalf): Change the return types of the following
members from void to error_t: abandon_physical_output,
suspend_physical_output, notice_input_flushed, desert_dtr,
set_break, clear_break, start_output, set_bits (which now takes an
struct termios * as argument), mdmctl and mdmstate (which now
takes an int * as argument). Add new members init and type.
(bottom): Define as const.
(devio_bottom, ptyio_bottom): Declare as const.
(drop_output): Change return type from void to error_t.
(ptyio_init): Remove prototype.
* devio.c (devio_abandon_physical_output): Change return value to
error_t, and return 0.
(devio_suspend_physical_output): Likewise.
(devio_notice_input_flushed): Likewise.
(devio_desert_dtr): Likewise.
(devio_set_break): Likewise.
(devio_clear_break): Likewise.
(devio_start_output): Likewise.
(devio_set_bits): Likewise.
(devio_mdmctl): Likewise.
(devio_mdmstate): Likewise.
(init_devio): Rename to ...
(devio_init): ... this. Do not give constructor attribute.
Change return type to error_t, and return an error value, rather
than bailing out. Declare as static.
(devio_bottom): Add type TERM_ON_MACHDEV and init function
devio_init.
(devio_set_bits): Accept new argument STATE and use that to work
out the terminal state, rather than changing the global termstate.
(devio_mdmstate): Accept new argument STATE and use that to return
the bits.
* ptyio.c: Do not include `hurd/hurd_types.h'.
(ptyio_suspend_physical_output): Change return value to error_t,
and return 0. Likewise.
(ptyio_notice_input_flushed): Likewise.
(ptyio_desert_dtr): Likewise.
(ptyio_set_bits): Likewise.
(ptyio_set_break): Likewise.
(ptyio_clear_break): Likewise.
(ptyio_mdmctl): Likewise.
(ptyio_start_output): Likewise.
(ptyio_abandon_physical_output): Likewise.
(ptyio_mdmstate): Likewise, and accept new argument STATE.
(ptyio_init): Declare as static and change return type to error_t.
(ptyio_bottom): Add type TERM_ON_MASTERPTY and init function
ptyio_init.
(ptyio_set_bits): Accept new argument STATE and use that to work
out the terminal state, rather than changing the global termstate.
(ptyio_mdmstate): Accept new argument STATE and use that to return
the bits.
* munge.c (drop_output): Change return value to error_t. Only
clear queue if there was no error.
* users.c (S_term_get_bottom_type): Just return bottom->type.
(set_state): Rework logic to take possible errors into account,
and to delay changing the termstate until we know that we won't
fail.
(S_tioctl_tiocflush): Return errors properly, and clear queue only
if notice_input_flushed succeeded.
(open_hook): Save error value of set_bits. Save old termflags and
restore them if if set_bits failed. Call set_bits with correct
arguments.
(S_tioctl_tiocmods): Set err to result of mdmctl.
(S_tioctl_tiocmset): Likewise.
(S_tioctl_tiocmbic): Likewise.
(S_tioctl_tiocmbis): Likewise.
(S_tioctl_tioccdtr): Likewise.
(S_tioctl_tiocsdtr): Likewise.
(S_tioctl_tioccbrk): Likewise for clear_break.
(S_tioctl_tiocsbrk): Likewise for set_break.
(S_tioctl_tiocstart): Likewise for start_output. Save old
termflags and restore them if if start_output failed.
(S_tioctl_tiocstop): Likewise for stop_output.
(S_trivfs_io_write): Abort the operation if start_output fails.
Do not call start_output if it just failed, or if there was no
data to be written.
* main.c (main): Initialize bottom handler (rather than special
casing this for ptyio).
* users.c (open_hook): Use memcpy instead bcopy and memset instead
bzero.
(S_tioctl_tiocgeta): Likewise.
(set_state): Likewise.
(open_hook): Likewise.
* munge.c (rescan_inputq): Likewise.
|
|
2002-01-30 Marcus Brinkmann <marcus@gnu.org>
* users.c (trivfs_S_io_select): Remove IDTAG argument.
Also in invocation of pty_io_select.
* ptyio.c (pty_io_select): Likewise.
pfinet/
2002-01-30 Marcus Brinkmann <marcus@gnu.org>
* tunnel.c (trivfs_S_io_select): Remove IDTAG argument.
|
|
* users.c (S_termctty_open_terminal): Use iohelp_create_empty_iouser.
|
|
* users.c (trivfs_S_io_select): Fix typo in last change.
|
|
* users.c (trivfs_S_io_select): Mask out SELECT_READ and/or
SELECT_WRITE if those accesses are not allowed by the peropen.
Don't keep old bits in AVAILABLE across waits, return only
what is true at the moment we return.
|
|
* users.c (trivfs_S_io_select): Don't diagnose an error for *TYPE
containing irrelevant bits (i.e. SELECT_URG). It's always ok to
ask even when the answer is always no.
|
|
* users.c (send_signal): Use ports_get_send_right.
|
|
* term.h, devio.c, users.c: Revert previous change. Do it this
way instead:
* users.c (report_carrier_error): New function.
(carrier_error): New static global variable.
(open_hook): Deal with errors from carrier open.
* devio.c (device_open_reply): Move the !RETURNCODE case out of
the "initial open" case and use report_carrier_error.
* term.h (report_carrier_error): Declare new function.
|
|
* term.h (NO_DEVICE): New macro, bit for termflags.
(termflags): Change type to uint_fast32_t.
* devio.c (device_open_reply): For D_NO_SUCH_DEVICE error reply, set
NO_DEVICE flag in termflags.
* users.c (open_hook): If NO_DEVICE flag set, return ENXIO immediately.
If we put out an open request, check for that bit as well as
NO_CARRIER changing in termflags and diagnose with ENXIO.
* Makefile (device_replyServer-CPPFLAGS): New variable, turn off
TypeCheck for this stub. This is necessary for error replies to get
through to our server-side functions in devio.c.
|
|
|
|
* users.c (trivfs_S_io_map): Renamed to ...
(trivfs_S_io_map_segment): ... here.
|
|
* ptyio.c (pty_io_read): Use mmap instead of vm_allocate.
* users.c (trivfs_S_io_read): Likewise.
|
|
* users.c (trivfs_S_file_chown): Either arg being -1 means don't
change that id.
|
|
* 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.
|
|
* users.c (po_destroy_hook): Only reset state and hardware if
TTY_OPEN bit is set in TERMFLAGS.
|
|
* users.c (trivfs_S_io_revoke): Use ports_class_iterate.
|
|
* users.c (trivfs_S_io_revoke): Protect the revocation by blocking
all other rpcs.
|
|
* users.c (trivfs_S_io_revoke): Release global_lock before
beginning the iteration.
* users.c (trivfs_S_io_revoke): Add reply, reply_type args.
|
|
* main.c (main): Initialize status from underlying node.
* users.c (check_access_hook): New function. Correctly implement
access permission checking.
(trivfs_check_access_hook): Initialize with check_access_hook.
(trivfs_S_file_check_access): Removed.
|
|
* users.c (trivfs_S_io_revoke): Fix typos.
|
|
* users.c (trivfs_S_io_revoke): New function.
|
|
* users.c (trivfs_S_file_chmod): Clear S_ISVTX bit instead of
clearing all other bits.
|
|
* users.c (open_hook): Assert DTR if NO_CARRIER, even for CLOCAL.
This is the only thing that tells it to open the device.
|
|
* users.c: Include <hurd/fshelp.h> for fshelp_isowner decl.
|
|
* users.c (trivfs_S_file_chmod): Fix typo.
|
|
* users.c (trivfs_S_file_chmod): Turn off S_ISPARE too.
|
|
Add OPEN_COUNT hack to try and detect lossage.
|
|
Turn off S_ITRANS bits, and turn on S_IROOT in TERM_MODE.
|
|
* users.c: Include <hurd/iohelp.h>.
(trivfs_S_file_chmod): Bother to fill in ST.
|
|
* users.c (trivfs_modify_stat): Omit pointless assignment.
Fri Nov 15 17:37:12 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* users.c (open_hook): New arg syntax.
(trivfs_check_open_hook): Likewise.
* ptyio.c (pty_open_hook): Likewise.
* term.h (pty_open_hook): Likewise.
* users.c (S_termctty_open_terminal): New syntax of trivfs_open.
* users.c (trivfs_S_file_chown): Rewrite using idvecs.
(trivfs_S_file_chmod): Likewise.
|
|
* users.c (open_hook): Always assert DTR (even if O_NONBLOCK).
Don't return any errors if O_NONBLOCK and we don't have carrier.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ourselves.
(trivfs_S_file_chown): New routine, to override trivfs default.
(trivfs_S_file_chmod): Likewise.
|