summaryrefslogtreecommitdiff
path: root/pfinet/ChangeLog
diff options
context:
space:
mode:
Diffstat (limited to 'pfinet/ChangeLog')
-rw-r--r--pfinet/ChangeLog640
1 files changed, 640 insertions, 0 deletions
diff --git a/pfinet/ChangeLog b/pfinet/ChangeLog
new file mode 100644
index 00000000..4bf8d70d
--- /dev/null
+++ b/pfinet/ChangeLog
@@ -0,0 +1,640 @@
+2000-02-04 Roland McGrath <roland@baalperazim.frob.com>
+
+ * options.c (parse_opt): New code to set the default gateway using
+ fib_new_table and the tb_insert/tb_delete callbacks.
+
+ * options.c (parse_opt): Take global_lock while applying changes.
+ * main.c (main): Unlock global_lock before calling argp_parse.
+
+ * options.c (struct parse_interface): Use uint32_t for the IP
+ address members.
+
+ * linux-src/net/ipv4/devinet.c [_HURD_] (inquire_device): New function.
+ * options.c: Declare it.
+ (trivfs_append_args): Use inquire_device for --address and --netmask.
+ (ADD_ADDR_OPT): #undef it after uses.
+
+2000-02-03 Roland McGrath <roland@baalperazim.frob.com>
+
+ Complete overhaul of pfinet based on the IPv4 networking code from the
+ Linux 2.2.12 kernel sources. This page describes a single unified set
+ of interdependent changes, but there are so many changes that I have
+ broken up the log entry into paragraphs based on rough topical
+ divisions of the work involved.
+
+ Subset of verbatim Linux 2.2.12 sources imported on a vendor branch.
+ * linux-src: New directory, see README for details.
+ * README: New file, describes linux-src layout and procedures for
+ tracking Linux source updates.
+
+ Light modifications to linux-src files to avoid really bending over
+ backwards with the glue macros. All modifications to files in
+ linux-src are conditionalized by #ifdef _HURD_.
+ * linux-src/include/linux/net.h [_HURD_] (struct socket): New members
+ refcnt and identity; elide members fasync_list, file.
+ * linux-src/include/linux/rtnetlink.h [! CONFIG_RTNETLINK]
+ (rtnl_shlock, rtnl_shunlock) [! _HURD_]: Conditionalize contents on
+ this, making these no-ops #ifdef _HURD_.
+ * linux-src/net/core/dev.c [_HURD_] (dev_ioctl): Don't define the
+ function, instead #define it to 0.
+ * linux-src/net/ipv4/af_inet.c [_HURD_] (inet_ioctl): Likewise.
+ * linux-src/net/ipv4/arp.c [_HURD_] (arp_ioctl): Likewise.
+ * linux-src/net/ipv4/udp.c [_HURD_] (udp_ioctl): Likewise.
+ * linux-src/net/ipv4/tcp.c [_HURD_] (tcp_ioctl): Likewise.
+ [_HURD_] (tcp_tiocinq): New function, TIOCINQ code from tcp_ioctl.
+ * linux-src/net/ipv4/devinet.c [_HURD_] (devinet_ioctl): Don't define
+ the function, instead #define it to 0.
+ [_HURD_] (configure_device): New function, cobbled from SIOCSIFADDR
+ and SIOCSIFNETMASK code from devinet_ioctl.
+
+ * glue-include/asm, glue-include/linux: New directories.
+ These contain glue kludge headers that replace all of the
+ Linux <asm/*.h> headers except checksum.h, and several of
+ the Linux <linux/*.h> headers (the remainder come from
+ linux-src/include/linux and are mostly unmodified).
+ * glue-include/asm/atomic.h: New file, glue replacement header.
+ * glue-include/asm/bitops.h: New file, glue replacement header.
+ * glue-include/asm/byteorder.h: New file, glue replacement header.
+ * glue-include/asm/checksum.h: New file, glue replacement header.
+ * glue-include/asm/errno.h: New file, glue replacement header.
+ * glue-include/asm/hardirq.h: New file, glue replacement header.
+ * glue-include/asm/init.h: New file, glue replacement header.
+ * glue-include/asm/segment.h: New file, glue replacement header.
+ * glue-include/asm/spinlock.h: New file, glue replacement header.
+ * glue-include/asm/system.h: New file, glue replacement header.
+ * glue-include/asm/types.h: New file, glue replacement header.
+ * glue-include/asm/uaccess.h: New file, glue replacement header.
+ * glue-include/linux/autoconf.h: New file, glue replacement header.
+ * glue-include/linux/binfmts.h: New file, glue replacement header.
+ * glue-include/linux/config.h: New file, glue replacement header.
+ * glue-include/linux/errno.h: New file, glue replacement header.
+ * glue-include/linux/fcntl.h: New file, glue replacement header.
+ * glue-include/linux/fs.h: New file, glue replacement header.
+ * glue-include/linux/in.h: New file, glue replacement header.
+ * glue-include/linux/in6.h: New file, glue replacement header.
+ * glue-include/linux/interrupt.h: New file, glue replacement header.
+ * glue-include/linux/ioctl.h: New file, glue replacement header.
+ * glue-include/linux/ipv6.h: New file, glue replacement header.
+ * glue-include/linux/kernel.h: New file, glue replacement header.
+ * glue-include/linux/limits.h: New file, glue replacement header.
+ * glue-include/linux/major.h: New file, glue replacement header.
+ * glue-include/linux/malloc.h: New file, glue replacement header.
+ * glue-include/linux/mm.h: New file, glue replacement header.
+ * glue-include/linux/param.h: New file, glue replacement header.
+ * glue-include/linux/personality.h: New file, glue replacement header.
+ * glue-include/linux/poll.h: New file, glue replacement header.
+ * glue-include/linux/proc_fs.h: New file, glue replacement header.
+ * glue-include/linux/sched.h: New file, glue replacement header.
+ * glue-include/linux/slab.h: New file, glue replacement header.
+ * glue-include/linux/socket.h: New file, glue replacement header.
+ * glue-include/linux/sockios.h: New file, glue replacement header.
+ * glue-include/linux/stat.h: New file, glue replacement header.
+ * glue-include/linux/string.h: New file, glue replacement header.
+ * glue-include/linux/termios.h: New file, glue replacement header.
+ * glue-include/linux/time.h: New file, glue replacement header.
+ * glue-include/linux/timer.h: New file, glue replacement header.
+ * glue-include/linux/timex.h: New file, glue replacement header.
+ * glue-include/linux/types.h: New file, glue replacement header.
+ * glue-include/linux/un.h: New file, glue replacement header.
+ * glue-include/linux/version.h: New file, glue replacement header.
+ * glue-include/linux/wait.h: New file, glue replacement header.
+
+ * kmem_cache.c: New file. Glue code replaces Linux kmem_cache_t et al.
+ * stubs.c: New file. No-op functions and stub variables for a few
+ things the Linux networking code needs to link.
+
+ * Makefile (core-srcs, arch-lib-srcs, ethernet-srcs, ipv4-srcs): New
+ variables, listing sources used from linux-src subdirectories.
+ (LINUXSRCS): Define using those.
+ (SRCS): Remove devices.c; add kmem_cache.c, stubs.c.
+ (UNUSEDSRC): Variable removed.
+ (vpath %.c): Remove vpath for $(srcdir)/linux-inet directory.
+ Add vpaths for $(srcdir)/linux-src subdirectories.
+ (CPPFLAGS): Add -D_HURD_SYSTYPE defining it to $(asm_syntax) as a
+ double-quoted string. Add -I's for glue-include and linux-src/include.
+
+ * pfinet.h: Include <sys/socket.h>, and not <linux/netdevice.h>.
+ (master_device): Remove decl.
+ (global_lock, packet_queue_lock): Remove common defns.
+ (global_lock, net_bh_lock): Declare them as externs.
+ (struct sockaddr): Remove len member, make address member just a
+ struct sockaddr rather than a 0-length array.
+ (setup_loopback_device, become_task_protid, become_task): Remove decls.
+ (ethernet_initialize): Declare it.
+ (input_work_thread): Remove decl.
+ (net_bh_thread): Declare it.
+ (tcp_readable): Remove decl.
+ (tcp_tiocinq): Declare it.
+
+ * config.h: Rewritten based on Linux 2.2.12 set of CONFIG_* options.
+ (CONFIG_NET, CONFIG_INET, CONFIG_SKB_LARGE): These are the only
+ Linux config options we set.
+ (CONFIG_IP_NOSIOCRT): New macro (not a proper config option, but
+ used conveniently in the code).
+ * ethernet.c (ethernet_set_multi): Take only one parameter.
+ Remove assert, since we always get passed IGMP_ALL_HOSTS.
+ (ethernet_thread): Make static.
+ (ethernet_demuxer): Use __mutex_lock in place of mutex_lock, so as to
+ get cthreads instead of linux/spinlock.h glue macros. Lock
+ net_bh_lock instead of global_lock. Set SKB->protocol with
+ eth_type_trans before calling netif_rx.
+ (ethernet_initialize): New function, one-time initialization broken
+ out of ethernet_open.
+ (ethernet_open): Ports setup moved to ethernet_initialize.
+ Don't use `errno' to avoid glue conflicts.
+ Use get_privileged_ports here to get the master device port, and
+ deallocate it after calling device_open.
+ (ethernet_xmit): Use assert_perror. Only one arg to dev_kfree_skb now.
+ (setup_ethernet_device): Change initializations for structure changes.
+ Call dev_init_buffers and register_netdevice on the device.
+ * timer-emul.c (all functions): Use __mutex_lock instead of mutex_lock.
+ Adjust for renaming of `prevp' member to `prev' in struct timer_list.
+ (mod_timer): New function.
+ * socket.c (proto_ops): Variable removed.
+ (net_families): New variable replaces it.
+ (sock_register): Rewritten for new calling convention, set
+ net_families rather than proto_ops.
+ (make_sock_user, clean_socketport, sock_alloc, sock_release):
+ Functions moved here from misc.c.
+ * sched.c (packet_queue_lock): Variable removed.
+ (net_bh_lock, net_bh_wakeup): New variables.
+ (current): Variable removed (now a macro in the glue headers).
+ (interruptible_sleep_on, wake_up_interruptible): Functions removed.
+ They are replaced by inlines in the glue headers.
+ (become_task, become_task_protid): Functions removed; they are
+ replaced by macros in glue-include/linux/sched.h.
+ (net_bh_worker): New function.
+ * loopback.c: Completely rewritten, mostly copied from linux-2.2.12's
+ drivers/net/loopback.c source file.
+
+ * io-ops.c (all functions): Use __mutex_lock in place of mutex_lock.
+ (S_io_write): Call ops->sendmsg instead of ops->write,
+ which no longer exists. If O_NONBLOCK is set, set MSG_DONTWAIT in
+ msg_flags.
+ (S_io_read): Call ops->recvmsg instead of ops->read,
+ which no longer exists If O_NONBLOCK is set, pass MSG_DONTWAIT.
+ (S_io_readable): Use USER->sock->data in place of USER->sock->sk.
+ For SOCK_STREAM and SOCK_SEQPACKET types, call tcp_tiocinq.
+ (S_io_set_all_openmodes, S_io_get_openmodes, S_io_set_some_openmodes,
+ S_io_clear_some_openmodes): Member USER->sock->userflags is now
+ renamed USER->sock->flags.
+ (S_io_select): Completely rewritten using ops->poll.
+ (select_wait): Function removed.
+ (S_io_stat): Set st_mode to reflect S_IFSOCK.
+ * socket-ops.c (all functions): Use __mutex_lock instead of mutex_lock.
+ (S_socket_create): Don't set SOCK->ops or call SOCK->ops->create.
+ Instead, call net_families[PF_INET]->create.
+ (S_socket_listen): Remove extra checks; just call ops->listen.
+ (S_socket_accept): Remove extra checks before ops->accept call.
+ Avoid use of goto.
+ (S_socket_connect): Remove extra checks; just call ops->connect.
+ (S_socket_bind): Adjust for struct sock_addr changes.
+ (S_socket_create_address): Likewise.
+ (S_socket_whatis_address): Likewise.
+ (S_socket_connect2): Don't diddle data structures after
+ ops->socketpair call.
+ (S_socket_getopt): Use sock_getsockopt if LEVEL is SOL_SOCKET.
+ Accept any data size, not just sizeof (int).
+ (S_socket_setopt): Use sock_setsockopt if LEVEL is SOL_SOCKET.
+ (S_socket_send): Always use ops->sendmsg instead of ops->send or
+ ops->sendto, which no longer exist. If O_NONBLOCK is set, set
+ MSG_DONTWAIT in msg_flags.
+ (S_socket_recv): Always use ops->recvmsg instead of ops->recv, which
+ no longer exists. If O_NONBLOCK is set, set MSG_DONTWAIT in flags.
+ Check for error from S_socket_create_address.
+
+ * main.c (find_device): Don't try to set ether_dev.pa_mask (it's gone).
+ (main): Don't call init_devices. Call ethernet_initialize.
+ Start net_bh_worker instead of input_work_thread. Don't call
+ setup_loopback_device. Instead, take global_lock, do prepare_current,
+ and then call sk_init, skb_init, inet_proto_init, and net_dev_init.
+ Keep global_lock held while calling argp_parse.
+ Call arrange_shutdown_notification only after all that.
+ Fix error call for "contacting parent" to pass ERR instead of errno.
+ * options.c (ADDR): #undef before defining macro.
+ (parse_opt): #if 0 out EDESTADDRREQ check (I don't understand it).
+ To apply settings, call configure_devices.
+ (ADD_ADDR_OPT): #if 0 --address and --netmask options. Needs fixed.
+ * misc.c (make_sock_user, clean_socketport, sock_alloc, sock_release):
+ Functions moved to socket.c.
+ (sock_release_peer): Function removed.
+ (make_sockaddr_port): Use struct sockaddr_storage to size buffer.
+ Fix size calculation for new struct sock_addr layout.
+ Initialize sa_family and sa_len of new struct sock_addr.
+
+ Remove the old Linux (2.0.??) network stack and the glue code for it.
+ * linux-inet, asm, linux: Directories and all files removed.
+ Some of the new files in glue-include came from the old glue headers
+ in the asm and linux directories, but most were substantially modified.
+ * devices.c: File removed. The equivalent glue is now elsewhere.
+
+2000-01-27 Roland McGrath <roland@baalperazim.frob.com>
+
+ * mapped-time.h: Include <maptime.h>.
+ (fill_timeval): Function removed.
+ (fetch_jiffies): Use maptime_read.
+ * timer-emul.c (init_time): Use maptime_map and maptime_read.
+ * linux/sched.h (fetch_xtime): Use maptime_read.
+ * linux/time.h (do_gettimeofday): Likewise.
+
+1999-10-22 Roland McGrath <roland@baalperazim.frob.com>
+
+ * socket-ops.c (S_socket_getopt): Implement the call.
+ All options supported by the code in linux-inet are in
+ fact of type int, so we can support just that one size.
+ (This is still a bogus untyped interface!)
+
+1999-09-13 Roland McGrath <roland@baalperazim.frob.com>
+
+ * io-ops.c: Reverted changes related to io_map_segment.
+
+1999-09-09 Thomas Bushnell, BSG <tb@mit.edu>
+
+ * ethernet.c (ethernet_open): Don't start the input work thread
+ here.
+ (more_packets, mark_bh, input_work_thread): Move
+ these to ...
+ * devices.c: ... here.
+ Also include "pfinet.h" instead of list of <> includes.
+ * main.c (main): Launch input work thread here.
+ * pfinet.h (input_work_thread): Declare function.
+
+ * devices.c (add_device): Remove unused function.
+ * pfinet.h (incoming_net_packet): Remove unused declaration.
+
+1999-09-07 Thomas Bushnell, BSG <tb@mit.edu>
+
+ * io-ops.c (S_io_map_segment): New function.
+
+1999-07-11 Roland McGrath <roland@baalperazim.frob.com>
+
+ * pfinet.h: Add #include <sys/mman.h> for munmap decl.
+
+1999-07-10 Roland McGrath <roland@baalperazim.frob.com>
+
+ * io-ops.c: Add #include <sys/mman.h> for munmap decl.
+
+1999-07-09 Thomas Bushnell, BSG <tb@mit.edu>
+
+ * io-ops.c (S_io_read): Use mmap instead of vm_allocate.
+ * socket-ops.c (S_socket_whatis_address): Likewise.
+
+1999-07-03 Thomas Bushnell, BSG <tb@mit.edu>
+
+ * io-ops.c (S_io_read): Use munmap instead of vm_deallocate.
+ (S_io_reauthenticate): Likewise.
+
+1999-06-13 Roland McGrath <roland@baalperazim.frob.com>
+
+ * main.c (trivfs_goaway): Exit if there are no socket ports.
+
+Sun Mar 14 18:33:54 1999 Thomas Bushnell, BSG <tb@mit.edu>
+
+ * ethernet.c (ether_filter): Use a shorter filter program.
+ (ether_filter_len): Compute more safely.
+
+1999-02-28 Roland McGrath <roland@baalperazim.frob.com>
+
+ * main.c (S_startup_dosync): Use ports_class_iterate.
+ (sigterm_handler): Likewise.
+
+Tue Feb 16 05:50:27 1999 Thomas Bushnell, BSG <tb@mit.edu>
+
+ * io-ops.c (S_io_revoke): New function. Don't attempt to
+ implement. (Other systems don't even permit non-file revokes.)
+
+1998-10-24 Roland McGrath <roland@baalperazim.frob.com>
+
+ * ethernet.c (ethernet_open): Check error return from device_open and
+ device_set_filter.
+ (setup_ethernet_device): Check error return from device_get_status.
+
+ * ethernet.c (ethername): Remove static variable.
+ (setup_ethernet_device): Don't set it.
+ (ethernet_open): Don't use it; use DEV->name instead.
+
+1998-09-04 Roland McGrath <roland@baalperazim.frob.com>
+
+ * loopback.c (loopback_type_trans): Return u_int16_t.
+
+Fri Apr 24 15:43:07 1998 Thomas Bushnell, n/BSG <tb@mit.edu>
+
+ * io-ops.c (S_io_select): When returning EINTR after cancellation,
+ deallocate REPLY because the stub won't do it for us. Reported by
+ UCHIYAMA Yasushi (uch@nop.or.jp).
+
+1997-08-25 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * io-ops.c (S_io_write): Negate linux error codes before returning.
+
+1997-08-19 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * linux-inet/tcp.c (tcp_conn_request): SK->err holds errno values,
+ not linux negative errno return vals.
+
+Wed Aug 20 14:05:52 1997 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
+
+ * main.c (main): New args for
+ ports_manage_port_operations_multithread.
+
+Fri Aug 8 11:47:08 1997 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
+
+ * linux-inet/tcp.c (tcp_check): Move to end of file so it isn't
+ inlined and can be profiled easily.
+ * linux-inet/udp.c (udp_check): Likewise.
+
+Mon Jul 21 14:58:13 1997 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
+
+ * Makefile (HURDLIBS): Add iohelp.
+
+ * main.c (trivfs_goaway): If FSYS_GOAWAY_FORCE is set, then go
+ away, otherwise, continue to return EBUSY.
+
+Fri Apr 25 10:46:49 1997 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * options.c (trivfs_append_args): Renamed from trivfs_get_options.
+ Don't initialize ARGZ/ARGZ_LEN.
+
+Tue Feb 4 16:53:19 1997 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * socket-ops.c (S_socket_send): Don't deref ADDR if it's 0.
+ (S_socket_bind): Return EADDRNOTAVAIL if ADDR is 0.
+
+Fri Oct 25 20:02:17 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
+
+ * loopback.c (loopback_type_trans): New function.
+ (setup_loopback_device): Bother to mark interface up
+ too. Set LOOPBACK_DEV.type_trans.
+
+Thu Oct 24 22:38:55 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
+
+ * main.c (main): Call setup_loopback_device before parsing args
+ (and thus before the ethernet device shows up).
+ * loopback.c: New file.
+ * Makefile (SRCS): Add loopback.c.
+ * pfinet.h (loopback_dev): New variable.
+
+ * pfinet.h (ip_rt_del): New prototype.
+
+Thu Sep 12 16:47:24 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
+
+ * Makefile (HURDLIBS): New variable.
+ (pfinet): Omit special dependency.
+
+ * Makefile (vpath %.c): Put this after Makeconf inclusion so it
+ catches setting of $(srcdir) there.
+
+Fri Sep 6 16:46:43 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
+
+ * socket-ops.c (S_socket_recv): Bother to pass
+ USER->sock->userflags through to the recvfrom routine.
+
+Sat Jul 20 15:48:29 1996 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu>
+
+ * Makefile (lndist-asm-files): Look for files in $(srcdir).
+ (lndist-linux-files): Likewise.
+ (lndist-linux-inet-files): Likewise.
+
+Fri Jul 19 09:39:08 1996 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * pfinet.h (make_sock_user): Declaration updated.
+
+Thu Jul 18 23:19:07 1996 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu>
+
+ * misc.c (make_sock_user): New parm `noinstall'; if it's set use
+ non-installing version of ports_create_port. All callers
+ changed.
+ * io-ops.c (S_io_reauthenticate): Install NEWUSER port right into
+ portset after it's fully initialized.
+
+Sat Jul 13 20:18:18 1996 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu>
+
+ * io-ops.c (S_io_reauthenticate): Repeat auth_server_authenticate
+ for as long as we get EINTR. Deal with other errors without
+ crashing.
+
+Sun Jul 7 21:29:42 1996 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu>
+
+ * io-ops.c (S_io_reauthenticate): Don't use unsafe MOVE_SEND in
+ call to auth_server_authenticate.
+
+Fri Jul 5 19:42:54 1996 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu>
+
+ * ethernet.c (setup_ethernet_device): Linux's device `mtu' member
+ does not include the hardware header size; subtract that off the
+ value the kernel specifies as maximum packet size in setting
+ ETHER_DEV.mtu.
+
+Thu Jun 27 10:14:10 1996 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu>
+
+ * Makefile (lndist): Add lndist-asm-files.
+ (lndist-asm-files): New rule.
+ (ASMHEADERS): New variable.
+ ($(top_srcdir)/hurd-snap/$(dir)/asm): New rule.
+
+Tue Jun 25 14:00:07 1996 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * linux-inet/route.c (ip_rt_del): New function.
+ * linux-inet/route.h (ip_rt_del): New declaration.
+
+ * options.c (trivfs_get_options): Initialize *ARGZ & *ARGZ_LEN.
+ (parse_opt): Fix test for address-less netmask.
+ Fix byte order when using IN_* macros.
+ Base default netmask on dev->pa_addr, not in->address.
+ Don't clear dev->pa_addr.
+ Delete old routing entries before adding new ones.
+ (trivfs_get_options): Add & use ADD_ADDR_OPT macro.
+ (parse_hook_add_interface): Initialize H->curint->device.
+
+Mon Jun 24 16:48:51 1996 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * main.c (sigterm_handler): Renamed from sighup_handle. Make void.
+ Deal with SIGTERM instead of SIGHUP.
+ (main): Use SIGTERM & sigterm_handler instead of SIGHUP &c.
+
+ * options.c (parse_hook_add_interface): Realloc the correct number
+ of bytes.
+
+Mon Jun 24 16:33:55 1996 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu>
+
+ * main.c (sighup_handle): New function.
+ (arrange_shutdown_notification): Register SIGHUP handler.
+
+Mon Jun 24 12:44:17 1996 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * options.c (parse_opt): Don't fail if there were no options.
+ (RETURN): New macro.
+ (PERR, FAIL): Use RETURN instead of return to free memory if nec.
+
+Fri Jun 21 16:42:29 1996 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * main.c (main): Pass ARGC & ARGV to argp_parse in the correct order.
+
+Thu Jun 20 22:39:17 1996 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * options.c: Renamed from opts.c.
+ (parse_opt): Fix lots of typos.
+ (trivfs_get_options): New function.
+ (get_opts, trivfs_S_fsys_get_options, trivfs_S_file_get_fs_options):
+ Functions removed.
+ <netinet/in.h>, <arpa/inet.h>: New includes.
+ * Makefile (pfinet): Depend on ../libfshelp/libfshelp.a &
+ ../libshouldbeinlibc/libshouldbeinlibc.a.
+ (SRCS): Add options.c.
+
+Thu Jun 20 19:47:40 1996 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu>
+
+ * main.c: Include <hurd/startup.h> and <string.h>.
+ (shutdown_notify_class): Declare variable.
+ (S_startup_dosync): Give enough args to ports_lookup_port.
+ (S_startup_dosync/do1): Return a value.
+ (arrange_shutdown_notification): Correct spelling of
+ ports_create_port. Initialize shutdown_notify_class.
+ (find_device): Construct arg to strcmp correctly. Correct
+ spelling of ENXIO.
+
+Wed Jun 19 18:46:35 1996 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * opts.c (trivfs_S_fsys_set_options): Function removed.
+ (trivfs_runtime_argp): New variable.
+
+Sun Jun 16 22:45:54 1996 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * opts.c (parse_opt): Rename ERR macro to FAIL. Use argp_failure.
+
+Sat Jun 15 19:47:06 1996 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * main.c (main): Rearrange for arg parsing some more.
+ (enumerate_devices): New function.
+ (pfinet_argp): New declaration.
+ (already_open): Make global.
+ <error.h>, <argp.h>: New includes.
+
+Fri Jun 14 15:41:57 1996 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * main.c (find_device): New function.
+ (main): Rearrange to use new argument parsing.
+
+Thu Jun 13 16:55:42 1996 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu>
+
+ * Makefile (MIGSRCS): Add startup_notifyServer.c.
+ * main.c (S_startup_dosync, arrange_shutdown_notification): New
+ functions.
+ (pfinet_demuxer): Call startup_notify_server.
+ (main): Call arrange_shutdown_notification).
+
+Tue May 14 14:12:25 1996 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu>
+
+ * main.c (main): Initialize fsys_identity.
+ * misc.c (sock_alloc): Initialize SOCK->identity.
+ (sock_release): Destroy SOCK->identity if it's been set.
+ * io-ops.c (S_io_identity): New function.
+ * pfinet.h (fsys_identity): New variable.
+ * linux/net.h (struct socket) [_HURD_]: New member `identity'.
+
+ * ethernet.c (ethernet_open): Delete superfluous arg to
+ assert_perror.
+
+Fri May 10 16:56:52 1996 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * misc.c (make_sock_user): Pass correct args to ports_create_port.
+
+ * ethernet.c (ethernet_open): Pass in ERRNO to assert_perror.
+
+Thu May 9 20:27:28 1996 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu>
+
+ * io-ops.c (S_io_reauthenticate): Use new auth_server_authenticate
+ interface.
+
+ * io-ops.c (S_io_select): Drop ID_TAG arg.
+
+ * ethernet.c (ethernet_thread): Return any_t.
+ (input_work_thread): Likewise.
+
+ * ethernet.c (ethernet_open): Use new ports_create_port call.
+ * socket-ops.c (S_socket_create_address): Likewise.
+ * misc.c (make_sock_user): Likewise.
+ (make_sockaddr_port): Likewise.
+
+Wed Apr 24 18:35:50 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
+
+ * main.c (main): Take third cmdline arg and add gateway route.
+
+Mon Apr 15 12:53:24 1996 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu>
+
+ * Makefile (CPPFLAGS): Look for config.h in $(srcdir).
+ (io-MIGSFLAGS, socket-MIGSFLAGS): Look for mutations.h in
+ $(srcdir).
+ (vpath %.c): Find linux-inet dir under #(srcdir)>
+ (SRCS): Add time.c.
+ (LCLHDRS, LINUXHDRS, FROBBEDLINUXHEADERS): New variables.
+ (lndist, lndist-linux-inet-files, lndist-linux-files,
+ $(top-srcdir)/hurd-snap/$(dir)/linux-inet,
+ $(top-srcdir)/hurd-snap/$(dir)/linux): New targets.
+
+Mon Feb 26 13:36:14 1996 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu>
+
+ * misc.c (end_using_sockaddr_port): Only call ports_port_deref if
+ arg is valid.
+ (end_using_socket_port): Likewise.
+
+ * linux/interrupt.h (mark_bh): Remove stubby inline, replace
+ with real declaration.
+ * pfinet.h (packet_queue_lock): New variable.
+ * sched.c (packet_queue_lock): Provide initialization.
+ * ethernet.c (ethernet_open): Put READPT in etherport_bucket
+ instead of pfinet_bucket. Fork ethernet_thread and
+ input_work_thread before returning.
+ (more_packets, etherport_bucket): New variables.
+ (input_work_thread, ethernet_thread, mark_bh): New functions.
+
+ * main.c (pfinet_demuxer): Don't use call ethernet_demuxer.
+
+Thu Feb 22 17:54:25 1996 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu>
+
+ * ethernet.c (ethernet_open): Request maximum queue limit
+ on our read port.
+
+Thu Feb 8 18:32:33 1996 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu>
+
+ * socket-ops.c (S_socket_connect): Don't return EINVAL for
+ SS_CONNECTED state.
+
+Mon Jan 22 13:47:47 1996 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
+
+ * timer-emul.c (init_time): There are *still* a million microseconds to
+ the second.
+
+Thu Jan 18 12:37:57 1996 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu>
+
+ * mapped-time.h (fetch_jiffies): Uh, duh, there are a million
+ microseconds in a second, not just a thousand.
+
+Tue Dec 26 19:29:16 1995 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * io-ops.c (S_io_select): Add REPLY parameter, and request
+ notification if it dies.
+ * mutations.h (IO_SELECT_REPLY_PORT): New def.
+
+Thu Dec 14 18:50:07 1995 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu>
+
+ * ethernet.c (ethernet_open): Don't set filter priority high.
+
+Mon Dec 11 13:23:49 1995 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * socket-ops.c (S_socket_recv): Whoops, incorrectly negated this
+ particular return value. Rename the variable `recvd' to make
+ things more clear.
+ (S_socket_send): Ditto (`sent'), plus correctly check the return
+ value when deciding whether to deallocate ADDR's send right.
+
+Thu Dec 7 18:24:37 1995 Miles Bader <miles@gnu.ai.mit.edu>
+
+ * socket-ops.c (S_socket_recv, S_socket_bind, S_socket_send):
+ Negate error return values from linux code.
+ (S_socket_setopt): Implement.
+
+Wed Aug 23 14:20:48 1995 Miles Bader <miles@churchy.gnu.ai.mit.edu>
+
+ * Makefile (pfinet): Put all dependencies here.
+ (HURDLIBS): Removed.