Thu Oct 15 17:12:23 1992  Jan Brittenson  (bson@kropotkin.gnu.ai.mit.edu)

	* src/in.fingerd (list_clients): mark conusers[] entries we have already
	matched.

	* src/in.fingerd.c (finger_reply): respond with short finger if
	only given "/W" and nothing else.

	* lib/packet.c (generic_read_packets), src/in.cfingerd (main):
	remove byte ordering code.

	* src/in.fingerd.c (finger_reply): change call to print_packet to
	a call to ascii_packet, to get a header.

	* lib/util.c (print_packet): strip domain from host name.

	* src/in.fingerd.c (finger_reply): check for special targets
	before calling long_finger().

	* lib/site/userinfo.c, src/in.fingerd.c, src/fingerd.c,
	lib/packet.c: add missing third argument to print_packet calls.

	* src/finger.c (main, call_finger): don't use /W if no user name
	is given, i.e. finger @host.

	* lib/packet.c: move forward declaration of read_component() out
	of function to satisfy pedantic ANSI compilers.

	* lib/os.c (tty_location): fix typo.

Thu Oct  1 14:02:05 1992  Jan Brittenson  (bson@apple-gunkies.gnu.ai.mit.edu)

	* lib/util.c (matches_p): fix fencepost error.

	* lib/tty.c (get_last_access): change call to malloc() into call
	to xmalloc().
	
Tue Sep 29 13:21:19 1992  Jan Brittenson  (bson@apple-gunkies.gnu.ai.mit.edu)

	* lib/tty.c (get_last_access): read through device list for
	console to find out when last accessed.

Mon Sep 28 18:47:28 1992  Jan Brittenson  (bson@apple-gunkies.gnu.ai.mit.edu)

	* config.h: add definition FINGERRC_SHELL.

	* lib/site/userinfo.c (maybe_exec_as_user): use shell specified in
	FINGERRC_SHELL instead of login shell, if defined.

Fri Sep 25 11:04:34 1992  Jan Brittenson  (bson@apple-gunkies.gnu.ai.mit.edu)

	* lib/packet.c (record_user_info): never allow a non-console
	record to overwrite a console record.

	* lib/packet.c (filter_packets) (console_user_p) (console_users):
	new functions. 

	* src/in.fingerd (list_clients): new function.

	* src/in.fingerd.c (finger_reply): move all the .client code into
	list_clients().

	* lib/util.c (matches_username) (matches_p): new functions.

	* lib/text-finger.c (long_finger): return an integer indicating
	whether the user was recognized or not. Use matches_username().

	* src/in.fingerd (finger_reply): let no_such_user() handle the
	case where the user doesn't exist. Check return value from
	long_finger().	 
	

Thu Sep 24 11:37:58 1992  Jan Brittenson  (bson@apple-gunkies.gnu.ai.mit.edu)

	* lib/packet.c (finger_at_address): use receive_packet() instead
	of read_network_packets() to receive input from in.cfingerd.

	* lib/packet.c (write_packet) (read_packet) (receive_packets): new
	functions.

	* src/fingerd.c (initialize_clients_internal): don't free() parts
	of clients[].

	* src/fingerd.c (add_client): clear memory block after xmalloc().

	* lib/text-finger.c (text_finger): use separate files for reading
	and writing to TCP stream.

	* lib/packet.c (finger_at_client): add argument port_or_service.

	* src/fingerd.c (poll_client): pass client cfinger port/service to
	finger_at_address().

	* include/util.h, lib/util.c (strdup): new function.

	* src/fingerd.c (initialize_clients_internal): add code to parse
	@port in `clients' file. Pass port to add_client() along with
	hostinfo. 

Thu Sep 17 00:10:22 1992  Jan Brittenson  (bson@moomin)

	* lib/in.fingerd.c (client_finger): remove unused variable line.

	* lib/text-finger.c (text_finger): reduce trailing CR/LF to LF
	only on all text received from finger server.

	* lib/site/userinfo (print_nmail_forwarding),
	lib/tty.c (lookup_tty), lib/mail.c (getsmtphost),
	src/fingerd.c (initialize_clients_internal),
	src/in.cfingerd (main), src/in.fingerd (main),
	lib/getservhost.c (getservhost): use getline() instead
	of fgets().

	* lib/os.c (utmp_to_packets): dynamically allocate device_name.
	Call pw_real_name() to get the real name from *passwd_entry.

	* lib/tcp.[ch] src/fingerd.c: move host_cmp() from fingerd.c to
	tcp.c, declare in tcp.h.

	* src/fingerd.c (main): use host_cmp() to determine whether we're
	the server host.

	* src/in.fingerd.c (main): ditto.

	* src/Makefile.in, targets/Makefile.in: declare and add explicit
	references to $(srcdir).

	* src/fingerd.c (packet_host): new function.

	* src/fingerd.c: change host_cmp() to take two strings as
	arguments.

	* src/fingerd.c: change host_cmp() to compare IP addresses
	if names do not match.

	* src/fingerd.c (main): change declaration of optc from char to
	int. 

	* src/finger.c (main): change declaration of optc from char to
	int. 

Tue Sep 15 03:12:12 1992  Jan Brittenson  (bson@moomin)

	* lib/site/userinfo.c: (get_hostdata): new function.

	* lib/site/userinfo.c (print_login): add call to get_hostdata();

	* lib/site/userinfo.c (print_login, display_long_info): add
	`localflag' argument to print_login().

	* config.h: add configurable options to include code for owner and
	permissions checking in maybe_exec_as_user().

	* lib/site/userinfo.c (maybe_exec_as_user): checks for owner and
	permissions of file before execing.

	* lib/text-finger.c, lib/x_show_face.c: change all calls to
	display_finger_info into calls to display_long_info.

	* lib/site/*.c: rename display_finger_info to display_long_info
	and add argument `localflag'.

	* src/in.fingerd.c: change calls to local_finger into calls
	to long_finger.

	* lib/text-finger.c: rename local_finger to long_finger. Add
	extra argument `localflag'.

Fri Sep 11 20:07:53 1992  Jan Brittenson  (bson@moomin)

	* src/fingerd.c: change the way SIGHUP is caught and the client
	database rehashed to fix bug on Suns, where sleep is implemented
	as a library routine that uses alarm().

Thu Sep 10 02:30:06 1992  Jan Brittenson  (bson@moomin)

	* lib/hostname.c: new file.

	* all files: cope with ut_host missing in struct utmp. 

	* lib/os.c src/finger.c src/fingerd.c src/in.fingerd.c: change
	all calls to gethostname() to calls to xgethostname(). 

	* src/in.fingerd.c (finger_reply): update all calls to
	display_finger_info.

	* lib/site/userinfo.c (display_finger_info): remove argument
	`packets'. 

	* lib/site/userinfo.c (print_login): remove argument `packets'. 

	* lib/os.c (get_finger_data): rename all_users to all_info.

Tue Sep  8 02:27:54 1992  Jan Brittenson  (bson@moomin)

	* src/in.fingerd.c (finger_reply): print message to that effect if
	user exists but has never logged on.

	* src/finger.c (main), config.h: add #define to select whether
	--info or --brief is default. 

	* Makefile.in: version number is now 1.36.

	* lib/tty.c (lookup_tty): make storage class of buffer `static'.

	* all Makefile.in and Makefile: explicitly set SHELL to /bin/sh.

	* lib/os.c (make_utmp_array): change strncmp() to !strncmp().

	* src/in.fingerd.c (get_clients): fix typo in call to fprintf().

Sun Sep  6 01:16:24 1992  Jan Brittenson  (bson@moomin)

	* lib/site/userinfo.c (print_login): change \n to \r\n.

Sat Sep  5 20:36:11 1992  Jan Brittenson  (bson@moomin)

	* support/prdefine: remove '+' in regex (some braindead sed's
	choke on it), collapse sequence of two sed's to one sed with two
	arguments.

Fri Sep  4 13:48:19 1992  Jan Brittenson  (bson@apple-gunkies.gnu.ai.mit.edu)

	* src/fingerd.c (record_user_info): record the user process with
	the least idle time, not the last one reported.

	* lib/os.c (utmp_to_packets): examine /proc on SVR4.

	* configure.in: check if system has /proc.

	* lib/packet.c: fix typo in previous timeout fix.

	* All files: fix installation problems.

Wed Sep  2 20:01:11 1992  Jan Brittenson  (bson@moomin.ai.mit.edu)

	* Makefile.in: tweak version to 1.34, add references to
	target/Makefile. 

	* src/in.fingerd, lib/text-finger.c, lib/site/userinfo.c: move the
	targets .help and .site into the ``targets'' directory as scripts.

	* lib/site/userinfo.c (maybe_special_target): new function.

	* targets/{x-.site, x-.help, Makefile.in}: new files.

	* targets: new directory

	* doc/fingerinfo.texinfo: bring up to date.

Fri Aug 28 08:18:05 1992  Jan Brittenson  (bson@moomin.ai.mit.edu)

	* src/in.fingerd.c (finger_reply): print message if no user with a
	matching name is found.  

	* lib/site/userinfo.c (print_login): new function.

	* lib/site/userinfo.c (print_mail_status): new function.

	* lib/site/userinfo.c (print_mail_forwarding): new function.

	* lib/site/userinfo.c (maybe_exec_as_user): new function.

	* lib/site/userinfo.c (print_lastlog): new function.

	* lib/site/userinfo.c (display_finger_info): clean up, reduce
	in size by moving out distinct parts into separate functions.

	* lib/site/userinfo.c (got_cld): new function.

	* lib/site/userinfo.c (display_finger_info): pass normal finger
	output via pipe to fingerrc script.

	* All .[ch] files: make sure all writes to the finger client have
	their lines terminated with CR/LF, not just LF.

Thu Aug 27 13:17:41 1992  Jan Brittenson  (bson@moomin.ai.mit.edu)

	* lib/site/userinfo.c (display_finger_info): fix error
	message typo.

	* lib/site/userinfo.c (display_finger_info): decrease
	timeout alarm granularity. Make timeout diagnostic more
	useful by keeping track of where it occurs.

	* configure.in, lib/site/userinfo.c: use vfork() instead
	of fork(). Include vfork.h if required.

	* lib/site/userinfo.c (print_file): new function.

	* lib/site/userinfo.c: fix plan and project printing bugs. Make
	sure files are printed with trailing CR/LFs on each line. Add
	extra empty line after file.

Wed Aug 26 12:57:49 1992  Jan Brittenson  (bson@moomin.ai.mit.edu)

	* src/site/userinfo.c (display_finger_info): display project file,
	much like the plan file.

	* src/site/userinfo.c (display_finger_info): print message to that
	effect if the .plan file isn't accesible.

	* src/finger.c, config.h: add compile-time option
	BASENAME_IS_SERVICE to decide whether the basename determines
	the default service to use.

	* src/finger.c: add --port option for optional port number or
	service.

	* lib/site/userinfo.c (display_user_info): fix bug which causes
	the message "No one logged on." to appear if the user has never
	logged on.

	* lib/tcp.c: fix port number network byte ordering bug by removing
	htons() call after getservbyname(). [The latter returns the port
	number in network byte ordering.]

	* all files: use struct utmpx instead of struct utmp if it exists,
	also use the getutx(3) routines instead of getut(3).

Tue Aug 25 15:23:04 1992  Jan Brittenson  (bson@apple-gunkies.gnu.ai.mit.edu)

	* userinfo.c: use getutent() to read utmp file on systems that
	provide it.

	* configure.in: check for libraries, include in LIBS.

        * configure.in: check for <utmpx.h> and getutent(3). This is for
	the SVR4 specific code. 

        * userinfo.c: add code to support System V pts/nn device names.

        * os.c: fix typo resulting in ridiculous idle times for the console.

        * config.h: reduce its importance. Don't preprocess any Makefiles
	through cpp.

        * All Makefiles and all code: switch to Autoconfig.

	* Makefile.in, src/Makefile.in, lib/Makefile.in,
	lib/site/Makefile.in: new
    
	* in.fingerd.c: Reply "No one logged on" where and when
	appropriate.

	* All .[ch] files: Add code for PC/RT w/BSD.

	* in.fingerd.c: Add .help special user.

	* userinfo.c: Make this the "default" user display format.

	* defface.c: Remove, obsolete.

	* definfo.c: Remove, obsolete.

Thu Aug 22 19:00:27 1991  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)

	* definfo.c (display_finger_info): Print login shell also.

	* whois.1: Fix typo.

	* save_rastfile.c: Don't assume suns all have sunview headers.

	* os.c (make_utmp_array): Don't assume ut_name is null terminated.

	* fingerd.c (initalize_clients_internal): Pass strncpy the
	string's address, not a character from it.

Mon May  6 14:04:39 1991  Brian Fox  (bfox at gnuwest.fsf.org)

	* All sources:  Merge changes made by DJM and RMS into my source.
	  Merge ChangeLogs into this one.

Tue Apr 16 01:34:43 1991  Richard Stallman  (rms at mole.gnu.ai.mit.edu)

	* src/cpp-Makefile (FINGERDIR): use `echo ...` to flush trailing space.
	(fingerpaths.h): Avoid quoting $(FINGERDIR), so `echo ...` works.

Fri Apr 19 21:23:42 1991  David J. MacKenzie  (djm at geech.gnu.ai.mit.edu)

	* os.c (tty_location): Use sizeof instead of hardcoded sizes for
	struct utmp members.
	Don't try to print a string that might not be null-terminated.
	* save_rastfile.c: Use HAVE_SUN_WINDOWS instead of sun to
	determine whether sunview headers are available.
	* Makefile: Include getopt in CORELIB, and read_face in BM_READERS.

Tue Apr 16 00:54:07 1991  Richard Stallman  (rms at mole.gnu.ai.mit.edu)

	* os.c (utmp_to_packets): Read 100 entries at a time from ACCT_FILE.

	* os.c (same_person): Make name1, name2 signed char * for strncmp.

Mon Aug  6 13:58:12 1990  Brian Fox  (bfox at gnuwest.fsf.org)

	* lib/util.c (xmalloc, xrealloc); Functions still return a (void
	*), but internally use a (char *).  Apparently, this satifies the
	MIPS compiler.

	* lib/util.c (idle_time_string); Change tests from:
	  (minutes > 60) to (minutes >= 60).

	* lib/x_show_face.c: Add casts to a few arguments for X calls.

	* src/fingerd.c; (initialize_clients_internal); DIRECTIVE always
	terminated in a zero.

	* lib/packet.c (finger_at_address); changed declaration of address
	parameter to (char *).

	* lib/tcp.c: changed ularm to alarm, changed timeout to one
	second.

Mon Jul  9 16:52:47 1990  Brian Fox  (bfox at gnuwest.fsf.org)

	* lib/os.c: (tty_location) "unix" as a hostname is the same name
	as the localhost.

	* lib/tty.c (lookup_tty) Fixed bug of concatenation of full ttyloc
	file path with fingerdir path.  Now only uses TTYLOCFILE.

	
