Commit Graph
66 Commits
Author SHA1 Message Date
Joel Sherrill 3274c87676 2005-04-28 Joel Sherrill <joel@OARcorp.com>
* libnetworking/kern/kern_sysctl.c, libnetworking/libc/inet_ntop.c,
	libnetworking/net/if_ppp.c, libnetworking/net/pppcompress.c,
	libnetworking/net/slcompress.c, libnetworking/netinet/ip_output.c,
	libnetworking/netinet/udp_usrreq.c, libnetworking/nfs/bootp_subr.c,
	libnetworking/rtems/rtems_select.c,
	libnetworking/rtems/rtems_showifstat.c,
	libnetworking/rtems/rtems_showroute.c,
	libnetworking/rtems/rtems_syscall.c: Fixed type mismatch and
	uninitialized variable warnings.
2005-04-28 21:49:50 +00:00
Ralf Corsepius e953e2df06 Partial updates from FreeBSD. 2005-04-15 06:29:42 +00:00
Ralf Corsepius ef1f80ea30 Partial updates from FreeBSD. 2005-04-14 15:09:06 +00:00
Joel Sherrill e9105d48b8 2005-03-14 Thomas Doerfler <Thomas.Doerfler@imd-systems.de>
* libnetworking/netinet/in_cksum_m68k.h: Change back to lcsum[12]_lbl
	to temporary labels.
2005-03-14 21:45:33 +00:00
Joel Sherrill c995cd6689 2005-03-10 Joel Sherrill <joel@OARcorp.com>
* libnetworking/netinet/in_cksum_m68k.h: Change back to lcsum[12]_lbl
	since my fix did not fix all issues.
2005-03-10 21:46:12 +00:00
Joel Sherrill c025abde80 2005-03-05 Joel Sherrill <joel@OARcorp.com>
* libnetworking/netinet/in_cksum_m68k.h: Change lcsum[12]_lbl to
	temporary inline assembly labels to remove compilation error.
2005-03-05 23:53:37 +00:00
Ralf Corsepius 4c92297a3e Misc. part. updates from FreeBSD. 2005-02-04 16:35:05 +00:00
Greg Menke 5194a28430 PR 730
* cpu_asm.S: Collected PR 601 changes for commit to cvshead
	for rtems-4.7
2004-12-06 20:29:51 +00:00
Ralf Corsepius 751c51343c 2004-12-03 Ralf Corsepius <ralf.corsepius@rtems.org>
* libnetworking/net/if_ethersubr.c,
	libnetworking/net/radix.h,
	libnetworking/netinet/if_ether.h,
	libnetworking/netinet/igmp_var.h,
	libnetworking/netinet/in_var.h,
	libnetworking/netinet/tcp_timer.h,
	libnetworking/netinet/udp_usrreq.c,
	libnetworking/rtems/rtems_glue.c:
	Misc. updates from FreeBSD and bugfixes tripped by GCC-4.0.0.
2004-12-03 05:07:56 +00:00
Joel Sherrill 78219ad15b 2004-12-02 Joel Sherrill <joel@OARcorp.com>
* libnetworking/kern/kern_sysctl.c, libnetworking/netinet/ip_mroute.c,
	libnetworking/sys/socketvar.h: Remove warnings.
2004-12-02 20:24:30 +00:00
Ralf Corsepius dac1edba93 2004-12-02 Ralf Corsepius <ralf.corsepius@rtems.org>
* libnetworking/net/radix.c, libnetworking/net/radix.h,
	libnetworking/net/route.h, libnetworking/netinet/if_ether.h,
	libnetworking/netinet/in_var.h, libnetworking/netinet/tcp_timer.h,
	libnetworking/netinet/udp_usrreq.c, libnetworking/netinet/udp_var.h,
	libnetworking/sys/callout.h, libnetworking/sys/socketvar.h,
	libnetworking/sys/sysctl.h: Cosmetics from FreeBSD.
2004-12-02 18:42:53 +00:00
Ralf Corsepius 50c0d1ff00 2004-04-30 Ralf Corsepius <ralf_corsepius@rtems.org>
* libnetworking/netinet/in.c: Partial update from FreeBSD.
2004-04-30 12:44:07 +00:00
Ralf Corsepius d589e75279 2004-04-26 Ralf Corsepius <ralf_corsepius@rtems.org>
* libnetworking/netinet/igmp_var.h: Cosmetic updates from FreeBSD.
	* libnetworking/sys/sysctl.h: Update from FreeBSD.
	* libnetworking/sys/socketvar.h: Update from FreeBSD.
2004-04-26 11:46:52 +00:00
Ralf Corsepius 79e69da631 2004-04-22 Ralf Corsepius <ralf_corsepius@rtems.org>
* libnetworking/kern/uipc_socket.c: Partial update from FreeBSD
	(Remove adv-clause from copyright notice).
	* libnetworking/netinet/igmp_var.h: Partial update from FreeBSD.
2004-04-22 03:27:13 +00:00
Ralf Corsepius dc28f16d8e Use -D_KERNEL instead of -DKERNEL for greater FreeBSD compliance. 2004-04-20 12:28:19 +00:00
Ralf Corsepius 3239698d1f Remove stray white spaces. 2004-04-15 13:26:21 +00:00
Ralf Corsepius 2609e83f77 Unused. 2004-03-08 16:26:41 +00:00
Ralf Corsepius 8dbe311c96 2004-01-14 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Re-add dirstamps to PREINSTALL_FILES.
	Add PREINSTALL_FILES to CLEANFILES.
	* netinet/in_cksum.c: #include netinet/in_cksum_<cpu>.h.
2004-01-14 05:23:13 +00:00
Ralf Corsepius ae60724872 2004-01-13 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
PR/549 networking

	* netinet/in_cksum_powerpc.h: New (copy of in_cksum_powerpc.c).
	* netinet/in_cksum_powerpc.c: Remove.
	* netinet/in_cksum_i386.h: New (copy of in_cksum_i386.c).
	* netinet/in_cksum_i386.c: Remove.
	* netinet/in_cksum_arm.h: New (copy of in_cksum_arm.c).
	* netinet/in_cksum_arm.c: Remove.
	* netinet/in_cksum_m68k.c: New (copy of in_cksum_m68k.c).
	* netinet/in_cksum_m68k.c: Remove.
	* netinet/Makefile.am: Reflect changes above.
2004-01-14 00:10:20 +00:00
Jennifer Averett 4e0576c023 2003-09-15 Jennifer Averett <jennifer@OARcorp.com>
PR 481/networking
	* net/ethernet.h, net/if_arp.h, netinet/if_ether.h: Network structs
	should be packed
2003-09-15 14:28:11 +00:00
Chris Johns ef6d9efbeb PR406 - Added INET_ADDRSTRLEN per the SUSv3 standard. 2003-05-15 09:27:03 +00:00
Ralf Corsepius ec0a3462b0 Merger from rtems-4-6-branch. 2003-03-11 11:47:17 +00:00
Ralf Corsepius d6c3d56acd 2003-01-15 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* netinet/tcp_subr.c: Add args to INP_INFO_RLOCK, INP_INFO_RUNLOCK,
	INP_LOCK, INP_UNLOCK macros.
	* netinet/udp_usrreq.c: Add args to INP_INFO_RLOCK, INP_INFO_RUNLOCK,
	INP_LOCK, INP_UNLOCK macros.
2003-01-15 10:51:32 +00:00
Joel Sherrill 36799d4063 2002-11-26 Chris Johns <cjohns@cybertec.com.au>
* Makefile.am: Added sys/linker_set.h
	* kern/Makefile.am: Added kern_mib.c and kern_sysctl.c.
	* kern/uipc_socket.c: OID changed from KERN_SOMAXCONN to KIPC_SOMAXCONN.
	* kern/uipc_socket2.c: OID changed from KERN_MAXSOCKBUF to
	KIPC_MAXSOCKBUF.
	* net/if_ethersubr.c: FreeBSD 2.2.2 does not have a _net_link node
	while 5.0 does.
	* net/if_ppp.c: Removed the TEXT_SET define as these macros are
	now implemented.
	* net/rtsock.c: Enable sysctl support plus fix the bug with the
	lastest FreeBSD sysctl header file.
	* netinet/icmp_var.h: FreeBSD 2.2.2 does not have a _net_inet_icmp
	node while 5.0 does.
	* netinet/if_ether.c: FreeBSD 2.2.2 does not have a _net_link_ether
	node while 5.0 does.
	* netinet/igmp_var.h: FreeBSD 2.2.2 does not have a _net_inet_igmp
	node while 5.0 does.
	* netinet/in_pcb.c: Fixed the arguments to the sysctl call. Add
	inp_gencnt and ipi_count. These are used when listing connections.
	* netinet/in_pcb.h: Added counters to aid the listing of connections.
	* netinet/in_var.h: Provide the _net_inet_ip and _net_inet_raw nodes.
	* netinet/ip_fw.c: Disable the firewall sysctl calls.
	* netinet/tcp_subr.c: Merge tcp_pcblist from the lastest FreeBSD source.
	* netinet/tcp_var.h: Add structures needed by net-snmp to list
	connections.
	* netinet/udp_usrreq.c: Merged udp_pcblist from the lastest FreeBSD
	source.
	* netinet/udp_var.h: Added the sysctl id UDPCTL_PCBLIST. Used by
	net-snmp.
	* rtems_glue.c: Call sysctl_register_all when initialising the
	network stack to register all the sysctl calls. These are in the
	special sections and required an updated linker script.
	* rtems/rtems_syscall.c: Add the sysctl call.
	* sys/kernel.h: Use the lastest FreeBSD method of handling sysctl
	structures.  This now held in the sys/linker_set.h file.
	* sys/queue.h: This is from the lastest FreeBSD code with the circular
	code merged back in as it is not used in the lastest FreeBSD kernel.
	* sys/sysctl.h: The lastest sysctl. This was needed to use with the new
	linker set method. The FreeBSD 2.2.2 version has asm hacks. The lastest
	version of the FreeBSD does not have these hacks. It uses gcc attribute
	directives.
2003-01-03 18:09:57 +00:00
Ralf Corsepius dd695d81b6 2002-12-12 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Merge-in kern/Makefile.am, net/Makefile.am,
	netinet/Makefile.am, netinet/Makefile.am, nfs/Makefile.am,
	rtems/Makefile.am.
	* kern/Makefile.am: Remove.
	* net/Makefile.am: Remove.
	* netinet/Makefile.am: Remove.
	* nfs/Makefile.am: Remove.
	* rtems/Makefile.am: Remove.
	* wrapup/Makefile.am: Reflect changes above.
	* configure.ac: Ditto.
2002-12-12 12:15:00 +00:00
Ralf Corsepius a3dfa39b35 2002-12-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* kern/Makefile.am: Remove C_O_FILES;
	Don't let all-local depend on $OBJS)
	* lib/Makefile.am: Ditto.
	* libc/Makefile.am: Ditto.
	* net/Makefile.am: Ditto.
	* netinet/Makefile.am: Ditto.
	* nfs/Makefile.am: Ditto.
	* rtems/Makefile.am: Ditto.
2002-12-11 15:34:58 +00:00
Ralf Corsepius 9eadce0a5a 2002-11-18 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Merge-in HEADER-handling from
	net/Makefile.am, netinet/Makefile.am, nfs/Makefile.am.
	* net/Makefile.am: Remove *_HEADERS.
	* netinet/Makefile.am: Remove *_HEADERS.
	* nfs/Makefile.am: Remove *_HEADERS.
2002-11-18 02:21:19 +00:00
Joel Sherrill 0647cc743f 2002-10-31 Joel Sherrill <joel@OARcorp.com>
* libc/rcmd.c, netinet/in_cksum_arm.c: Removed warnings.
2002-10-31 20:10:40 +00:00
Joel Sherrill a63efae255 2002-10-07 Eric Norum <eric.norum@usask.ca>
* netinet/tcp_var.h: Corrected typo in ARM alignment patch which 
	broke all other ports.
2002-10-07 17:11:27 +00:00
Joel Sherrill 3fb7680513 2002-10-04 Jay Monkman <jtm@smoothsmoothie.com>
* netinet/in_cksum.c, netinet/ip_icmp.h, netinet/ip_input.c,
	netinet/tcp_input.c, netinet/tcp_subr.c, netinet/tcp_var.h,
	sys/queue.h: Address alignment requirements for the ARM.
2002-10-04 14:47:11 +00:00
Joel Sherrill f4ceef3ef6 2002-09-16 Joel Sherrill <joel@OARcorp.com>
* netinet/Makefile.am, netinet/udp_usrreq.c: Back off some of
	the IP_FORWARD patch as it appears to not compile in the
	current tree.
2002-09-16 11:55:43 +00:00
Joel Sherrill ce2c216469 2002-09-14 Vyacheslav V. Burdjanadze <wr@zelax.ru>
* kern/uipc_mbuf.c, sys/mbuf.h, netinet/udp_usrreq.c: Add
	optional UDP broadcast forwarding support.
	* netinet/Makefile.am: Defined FORWARD_PROTOCOL to enabled UDP
	broadcast forwarding.
2002-09-14 18:18:50 +00:00
Ralf Corsepius 6a2d7ee51e 2002-09-02 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* netinet/in_cksum.c: #include <string.h> for puts in generic
	routines.
2002-09-02 06:26:03 +00:00
Joel Sherrill 7a47bb5724 2002-08-07 Joel Sherrill <joel@OARcorp.com>
* netinet/in.h: Per PR263, added include of <machine/endian.h>
	to <netinet/in.h> so it includes prototypes of ntohl() family
	of routines.
2002-08-07 15:37:33 +00:00
Joel Sherrill 6fd25163de 2002-07-30 Jay Monkman <jtm@smoothsmoothie.com>
* netinet/in_cksum.c, netinet/in_cksum_arm.c: Added ARM in_cksum
	support.
2002-07-30 14:33:24 +00:00
Ralf Corsepius 0e1dd41f04 2002-07-22 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* kern/Makefile.am: Use .$(OBJEXT) instead of .o.
	* lib/Makefile.am: Ditto.
	* libc/Makefile.am: Ditto.
	* net/Makefile.am: Ditto.
	* netinet/Makefile.am: Ditto.
	* nfs/Makefile.am: Ditto.
	* rtems/Makefile.am: Ditto.
	* wrapup/Makefile.am: Ditto.
2002-07-22 13:44:48 +00:00
Ralf Corsepius eb4b28dca2 2002-07-22 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* kern/Makefile.am: Eliminate LIBNAME.
	* lib/Makefile.am: Ditto.
	* libc/Makefile.am: Ditto.
	* net/Makefile.am: Ditto.
	* netinet/Makefile.am: Ditto.
	* nfs/Makefile.am: Ditto.
	* rtems/Makefile.am: Ditto.
	* wrapup/Makefile.am: Use project_libdir instead of
	$(PROJECT_RELEASE)/lib.
2002-07-22 06:35:33 +00:00
Joel Sherrill 74c402a2a3 2002-07-17 Jay Monkman <jtm@smoothsmoothie.com>
* netinet/in.h, netinet/ip.h, netinet/ip_var.h, netinet/tcp.h:
	Modified to added packed attribute.o
2002-07-17 17:08:48 +00:00
Ralf Corsepius f22ebf02b2 2002-06-17 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* arpa/Makefile.am: Include $(top_srcdir)/../automake/*.am.
	* kern/Makefile.am: Include $(top_srcdir)/../automake/*.am.
	* Makefile.am: Include $(top_srcdir)/../automake/*.am.
	Use ../aclocal.
	* lib/Makefile.am: Include $(top_srcdir)/../automake/*.am.
	* libc/Makefile.am: Include $(top_srcdir)/../automake/*.am.
	* machine/Makefile.am: Include $(top_srcdir)/../automake/*.am.
	* net/Makefile.am: Include $(top_srcdir)/../automake/*.am.
	* netinet/Makefile.am: Include $(top_srcdir)/../automake/*.am.
	* nfs/Makefile.am: Include $(top_srcdir)/../automake/*.am.
	* rtems/Makefile.am: Include $(top_srcdir)/../automake/*.am.
	* sys/Makefile.am: Include $(top_srcdir)/../automake/*.am.
	* vm/Makefile.am: Include $(top_srcdir)/../automake/*.am.
	* wrapup/Makefile.am: Include $(top_srcdir)/../automake/*.am.
2002-06-17 09:12:00 +00:00
Joel Sherrill 8a79786886 2002-05-29 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
Relocate c/src/libnetworking.
	* Makefile.am: Reflect moval.
	* machine/Makefile.am: Ditto.
	* net/Makefile.am: Ditto.
	* lib/Makefile.am: Ditto.
	* netinet/Makefile.am: Ditto.
	* vm/Makefile.am: Ditto.
	* libc/Makefile.am: Ditto.
	* sys/Makefile.am: Ditto.
	* arpa/Makefile.am: Ditto.
	* nfs/Makefile.am: Ditto.
	* kern/Makefile.am: Ditto.
	* rtems/Makefile.am: Ditto.
	* configure.ac: Dittp.
	* wrapup/Makefile.am: Ditto. Remove references to networking apps.
2002-05-29 17:00:59 +00:00
Joel Sherrill d50c0d2534 2002-04-26 Eric Norum <eric.norum@usask.ca>
* netinet/in_cksum_i386.c: Add volatile so the more agressive
	optimization in gcc 3.1 does not reorder things.
2002-04-26 21:34:58 +00:00
Joel Sherrill 01d48bf8ea 2002-03-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac:
	AC_INIT(package,_RTEMS_VERSION,_RTEMS_BUGS).
	AM_INIT_AUTOMAKE([no-define foreign 1.6]).
	* arpa/Makefile.am: Remove AUTOMAKE_OPTIONS.
	* kern/Makefile.am: Remove AUTOMAKE_OPTIONS.
	* Makefile.am: Remove AUTOMAKE_OPTIONS.
	* lib/Makefile.am: Remove AUTOMAKE_OPTIONS.
	* libc/Makefile.am: Remove AUTOMAKE_OPTIONS.
	* machine/Makefile.am: Remove AUTOMAKE_OPTIONS.
	* net/Makefile.am: Remove AUTOMAKE_OPTIONS.
	* netinet/Makefile.am: Remove AUTOMAKE_OPTIONS.
	* nfs/Makefile.am: Remove AUTOMAKE_OPTIONS.
	* pppd/Makefile.am: Remove AUTOMAKE_OPTIONS.
	* rtems/Makefile.am: Remove AUTOMAKE_OPTIONS.
	* rtems_servers/Makefile.am: Remove AUTOMAKE_OPTIONS.
	* rtems_telnetd/Makefile.am: Remove AUTOMAKE_OPTIONS.
	* rtems_webserver/Makefile.am: Remove AUTOMAKE_OPTIONS.
	* sys/Makefile.am: Remove AUTOMAKE_OPTIONS.
	* vm/Makefile.am: Remove AUTOMAKE_OPTIONS.
	* wrapup/Makefile.am: Remove AUTOMAKE_OPTIONS.
2002-03-28 00:49:43 +00:00
Joel Sherrill b68e01c5d9 2001-09-23 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* machine/Makefile.am: Use 'PREINSTALL_FILES ='.
	* net/Makefile.am: Use 'PREINSTALL_FILES ='.
	* netinet/Makefile.am: Use 'PREINSTALL_FILES ='.
	* vm/Makefile.am: Use 'PREINSTALL_FILES ='.
	* pppd/Makefile.am: Use 'PREINSTALL_FILES ='.
	* sys/Makefile.am: Use 'PREINSTALL_FILES ='.
	* rtems_servers/Makefile.am: Use 'PREINSTALL_FILES ='.
	* arpa/Makefile.am: Use 'PREINSTALL_FILES ='.
	* nfs/Makefile.am: Use 'PREINSTALL_FILES ='.
	* rtems_webserver/Makefile.am: Use 'PREINSTALL_FILES ='.
	* rtems/Makefile.am: Use 'PREINSTALL_FILES ='.
	* rtems_telnetd/Makefile.am: Use 'PREINSTALL_FILES ='.
2001-09-27 13:28:22 +00:00
Joel Sherrill e6d8fe4717 2001-02-03 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am, arpa/Makefile.am, machine/Makefile.am, net/Makefile.am,
	netinet/Makefile.am, nfs/Makefile.am, rtems/Makefile.am,
	rtems_servers/Makefile.am, rtems_webserver/Makefile.am,
	sys/Makefile.am, vm/Makefile.am:
	Apply include_*HEADERS instead of H_FILES.
	* include/Makefile.am: Remove.
	* Makefile.am: Add handling of *.h files.
	* configure.in: Remove include/Makefile.
2001-02-05 18:36:27 +00:00
Joel Sherrill 9b28bea577 2000-09-04 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* kern/Makefile.am, lib/Makefile.am, libc/Makefile.am,
	net/Makefile.am, netinet/Makefile.am, nfs/Makefile.am,
	pppd/Makefile.am, rtems/Makefile.am, rtems_servers/Makefile.am,
	rtems_webserver/Makefile.am, wrapup/Makefile.am: Include compile.am
2000-09-05 16:07:35 +00:00
Joel Sherrill 757e166196 2000-08-31 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* netinet/tcp_input.c: Spelling corrections.
2000-09-01 07:20:06 +00:00
Joel Sherrill df49c60c96 Merged from 4.5.0-beta3a 2000-06-12 15:00:15 +00:00
Joel Sherrill bf85b19188 Patch rtems-rc-4.5.0-13-cvs.diff from Ralf Corsepius <corsepiu@faw.uni-ulm.de>.
adds .cvsignore.
2000-04-13 14:37:14 +00:00
Joel Sherrill 4bf1801d0d Patches rtems-rc-20000118-7.diff from Ralf Corsepius <corsepiu@faw.uni-ulm.de>
that contains the automake files for libnetworking plus a couple of
minor fixes.  [Now only one unused/unsupported Makefile.in remains
(./c/src/lib/libbsp/hppa1.1/pxfl/Makefile.in).]

    To apply:
        patch -p1 < rtems-rc-20000118-7.diff
        /bin/sh rtems-rc-20000118-7.rm
        /bin/sh rtems-rc-20000118-7.add
        ./bootstrap

    Notes:
    * I have tested this one by building all BSPs for m68k, powerpc, sh and
      unix with toolchains built since last weekend.
    * I did not touch libnetworking's directory layout.
2000-02-03 13:21:38 +00:00
Joel Sherrill 8379ada798 Patch from Eric Norum <eric@cls.usask.ca> to address the following problem
report from Philip A. Prindeville <philipp@zembu.com>:

        I was working on a device driver for a certain ethernet chipset that
    occassionally wraps in its buffer, and causes a resulting mbuf chain
    with only a few dozen bytes in the first mbuf of the chain.

        I wouldn't have thought this would be a problem, until I ran some
    stress tests that flooded the ethernet receiver with packets and
    started to get panics here:

       250
       251          if (m->m_pkthdr.len < sizeof(struct ip))
       252                  goto tooshort;
       253
       254  #ifdef  DIAGNOSTIC
       255          if (m->m_len < sizeof(struct ip))
       256                  panic("ipintr mbuf too short");
       257  #endif
       258
       259          if (m->m_len < sizeof (struct ip) &&
       260              (m = m_pullup(m, sizeof (struct ip))) == 0) {
       261                  ipstat.ips_toosmall++;
       262                  return;
       263          }
       264          ip = mtod(m, struct ip *);

    and the panic was at line 256.  But if I #undef'd DIAGNOSTICS,
    then the m_pullup() at line 260 does the right thing and the packet
    ends up being processed just fine.

    So I started wondering, (a) why was the test checking for
    something that apparently wasn't a fatal condition but rather
    one that is subsequently recovered from a couple of lines later
    and (b) why panic as a diagnostic "aid" from a recoverable
    condition rather than just (say) log a message to the console?

    All of this seems overly severe for no reason that is readily
    apparent to me.
1999-10-25 16:09:45 +00:00