1999-12-03  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Version 2.3.6.

	* configure.in: Add the `--with-logdir' option.
	* ndtpd/Makefile.am (logdir): Set the macro to `@logdir@'.
	
	* ndtpd/ndtpd.c (inetd_main): Change the current working directory
	to `work_directory'.

1999-11-25  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/ndtpd.c (standalone_main): Output the syslog message
	``the child server process exits'' with the priority LOG_INFO,
	not LOG_ERR.

1999-11-03  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Version 2.3.5.

	* lib/readconf.c (read_configuration): Fix the bug that
	the function dumps core if the last line of a configuration
	file lacks a newline character.

	* ndtpd/ndtpdaily.in: When the `--version' option is specified,
	don't put an empty line followed by the Copyright string.
	* ndtpd/ndtpstat.in: Likewise.

1999-10-24  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Version 2.3.4.

	* lib/readconf.c (read_configuration): Fix the bug that
	the function says "line is too long" if the last line of
	a configuration file lacks a newline character.

1999-09-04  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Version 2.3.3.

	* Use libtool-1.3.3.

	* ndtpd/ndtp.c: Don't use `LOG_NOTICE' for informational message
	that should not be recorded to system default logfile such as
	/var/log/messages.  Use `LOG_INFO' instead.
	* ndtpd/ndtpd.c: Likewise.
	* lib/ident.c: Likewise.

1999-06-13  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Version 2.3.2.

	* Use libtool-1.3.2.

1999-05-29  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Version 2.3.1.

	* ndtpd/config.c (conf_end_book): Set `max_clients' to 0 when
	test mode.

	* ndtpd/defs.h.in (DEFAULT_BOOK_MAX_CLIENTS): Defined.
	* ndtpd/book.c (add_book): Set the default `max_clients' for
	a book to `DEFAULT_BOOK_MAX_CLIENTS'.

	* ndtpd/ndtpd.h (Book): Delete unused member `code'.

	* ndtpd/ndtpd.c (standalone_main): Unblock SIGCHLD before
	call select.
	
1999-04-29  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Version 2.3.

1999-04-26  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Version 2.3beta2.

	* ndtpd/ndtpd.c (inetd_main): Clear lists and buffers before
	exit.

	* ndtpd/ndtpd.c (inetd_main): Change the syslog message.
	Use "the server exits" other than "the server dies".

1999-04-24  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/ndtpd.c: Include "ticket.h".
	* ndtpd/global.h, ndtpd/ndtpd.h (connection_ticket_stock,
	connection_lock_filename): Add these varaiables.
	* ndtpd/ndtpd.c (main): Initialize `connection_ticket_stock'.
	* ndtpd/config.c (end_conf): Set `connection_lock_filename'.
	* ndtpd/ndtpd.c (inetd_main): Bind a connection ticket stock and
	get a ticket.
	* ndtpd/ndtpd.c (standalone_main): Likewise.

	* ndtpd/ndtpd.c (connection_count): Remove the variable.
	* ndtpd/ndtpd.c (standalone_main, restart_parent): Don't count
	the connections.  When the number of connections are reached to
	maximum, reject a new connection rather than call sigsuspend()
	nor pause().

	* ndtpd/ndtpd.c (inetd_main): Call activate_book_registry()
	after establishing a connection.

1999-04-19  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/book.c (add_book): Output the syslog message `memory
	exhausted' when malloc() is failed.
	* lib/linebuf.c (initialize_line_buffer): Likewise.
	* lib/permission.c (add_permission): Likewise.
	* ib/permission.c: Include "fakelog.h" if `USE_FAKELOG' is defined.

1999-04-18  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/book.c: Include "ticket.h".
	* ndtpd/book.c: Include <limit.h> and define `PATH_MAX'.
	* ndtpd/book.c (clear_book_registry): Call clear_ticket_stock() for
	the `ticket_stock' member in the struct `Book' of the registry.
	* ndtpd/book.c (activate_book_registry): Call bind_ticket_stock() for
	for the `ticket_stock' member in the struct `Book' of the registry.
	* ndtpd/book.c (add_book): Call initialize_ticket_stock() for
	the `ticket_stock' member in the struct `Book' of a new book.

	* ndtpd/defs.h.in (MAXLEN_WORK_PATH_BASENAME, NDTPD_LOCK_BASENAME,
	BOOK_LOCK_SUFFIX): Added the definitions.
	* ndtpd/defs.h.in (MAXLEN_STRING, MAXLEN_BOOK_NAME, MAXLEN_BOOK_TITLE,
	MAXLEN_NDTP_LINE, LISTENING_BACKLOG): Define them only when they
	are not defined yet.

	* ndtpd/ndtpd.h: Include "ticket.h".
	* ndtpd/ndtpd.h (Book): Add the member `ticket_stock'.

	* ndtpd/config.h (conf_begin): Use `MAXLEN_WORK_PATH_BASENAME'
	rather than `strlen(PID_BASENAME)'.
	* ndtpd/config.h (conf_work_path): Likewise.

	* ndtpd/ndtp.c: Include "ticket.h".
	* ndtpd/ndtp.c (command_L): Get a ticket to access the selected
	book.

	* lib/Makefile.am (libndtpd_a_SOURCES): Add `ticket.c'.
	* lib/Makefile.am (noinst_HEADERS): Add `ticket.h'.
	* lib/ticket.c, lib/ticket.h: Added.

	* ltmain.sh, ltconfig: Use libtool 1.2f.

1999-03-28  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Version 2.3beta1.

	* ndtpd.sample.in: Renamed to `ndtpd.conf.sample.in'.
	* Makefile.am (sysconf_DATA, CLEANFILES, EXTRA_DIST,
	ndtpd.conf.sample): Rename `ndtpd.sample' to `ndtpd.conf.sample',
	and `ndtpd.sample.in' to `ndtpd.conf.sample.in'.

	* ndtpd/hookset.c (generic_hooks): Add `hook_gb2312', hook
	for `EB_HOOK_GB2312'.
	* ndtpd/hookset.c (hook_gb2312): Add this function.

1999-03-05  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Version 2.3beta0.

	* ndtpd/ndtp.c (reverse_word): Don't put NUL onto `*p2' when
	the loop is over.  This bug may raise SIGSEGV.

1999-02-27  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* lib/ioall.c (read_all): Return the number of read bytes so far
	when it receives an EOF.
	
	* Version 2.2.1.

	* ndtpd/Makefile.am (appendixdir): Removed.
	* ndtpd/Makefile.am (BUILT_SOURCES): Define this macro, and
	add `defs.h' to it.

1999-02-11  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/config.c (conf_end): permit server name without a
	domain name.

	* ndtpd/global.h (book_registry_tail): Added.
	* ndtpd/ndtpd.h (book_registry_tail): Likewise.
	* ndtpd/book.c (initialize_book_registry, clear_book_registry):
	Clear book_registry_tail.
	* ndtpd/book.c (add_book): New book is added to the end of the
	book registry.

	* lib/readconf.h (READCONF_SIZE_LINE): Change the value from
	`512' to `511'.

	* ndtpd/defs.h.in (MAXLEN_LARGE_STRING): Removed.
	
	* ndtpd/ndtpcontrol.c (main): Don't include <syslog.h>.
	* ndtpd/ndtpcheck.c (main): Likewise.
	
	* lib/fakelog.c (set_fakelog_level): Takes a facility with
	`FAKELOG_' prefix as an argument.
	* lib/fakelog.h, lib/fakelog.c: Move facility macros definitions
	(`FAKELOG_QUIET', `FAKELOG_EMERG' ...) from `lib/fakelog.c' to
	`lib/fakelog.h'.
	* lib/fakelog.c: include `syslog.h' only when `HAVE_SYSLOG_H'
	is defined (for DOS and Windows).
	* lib/fakelog.c (fakelog): call syslog() only when HAVE_SYSLOG
	is defined (for DOS and Windows).
	* configure.in (AC_CHECK_FUNCS): Add `syslog'.
	* configure.in (AC_CHECK_HEADERS): Add `syslog.h'.
	
1999-02-06  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Makefile.am (logdir, log_DATA): Delete these macros.
	
	* ndtpd/ndtp.c (command_P): Send an empty list if eb_search_word(),
	eb_search_endword() or eb_search_exactword() is failed.
	* ndtpd/ndtp.c (command_S): Send an empty text if eb_seek()
	is failed.
	* ndtpd/ndtp.c (command_F): Send a page filled with NUL if
	eb_seek() is failed.

	* ndtpd/defs.h.in (DEFAULT_MAX_TEXT_SIZE): Change the value
	from 16384 to 32768.

	* ndtpd/ndtp.h (iso8859_1_to_euc_table): Add this static variable.
	* ndtpd/ndtp.h (iso8859_1_to_euc_str, iso8859_1_to_euc_mem):
	Add two static functions.
	* ndtpd/ndtp.c (command_T, command_t, command_P, command_S):
	Don't send ISO 8859-1 string to client.  Title written in ISO
	8859-1 are convert to ASCII.

1999-01-11  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Version 2.2.

	* ndtpd/hookset.c (generic_hooks): Use `eb_hook_stopcode', 
	not `eb_hook_stopcode_mixed'.
	
1998-12-06  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Version 2.1.2.
	
	* ndtpd/defs.h.in (DEFAULT_MAX_TEXT_SIZE): Change it from 8192 to
	16384.

1998-12-05  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/Makefile.am (ndtpd_DEPENDENCIES, ndtpcheck_DEPENDENCIES,
	ndtpcheck_DEPENDENCIES): First `@DEPENDENCIES_FOR_LIBZ@' is 
	modified to `@DEPENDENCIES_FOR_LIBEB@'.
	* ndtpd/Makefile.am (INCLUDES): Add missing `@INCLUDES_FOR_LIBZ@'.

1998-11-21  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/ndtpd.c (test_main): Use strncpy(), instead of strcpy()
	when `ndtpd' sets a `client_hostname'.

	* configure.in (AC_PATH_PROGS): Don't exit even if MAILX is not
	found.

1998-11-13  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Version 2.1.1.
	
	* ndtpd/ndtpd.c (main, standalone_main, inetd_main, test_main):
	Modify syslog messages.  Use `exits' instead of `dies'.

1998-11-11  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd.sample.in (work-path): The defaut path is
	`@pkglocalstatedir@', not `@pkglocalstatedir@/ndtpd'.

1998-11-06  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Makefile.am (EXTRA_DIST): Delete PROTOCOL-ja.
	* PROTOCOL-ja: Delete the file.
	
1998-10-31  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* doc-ja/texinfo.tex: Use Japanized 1998-10-27 version.
	* doc/texinfo.tex: Use 1998-10-27 version.
	* doc-ja/Makefile.am (EXTRA_DIST): Add texinfo-ja.tex.

	* ndtpd/ndtp.c (command_L, command_t, command_T): Ignore unbound
	books.
	* ndtpd/ndtpd.c (standalone_main, inetd_main, test_main):
	Call activate_book_registry().
	* ndtpd/book.c (add_book): Initialize `path' and `appendix_path'.
	* ndtpd/book.c (clear_book_registry): Dispose memories allocated
	to `path' and `appendix_path'.
	* ndtpd/book.c (find_book): Skip unboud books.
	* ndtpd/book.c (terminate_book_registry): Delete this function.
	`eb_set_all_subbooks()' and `eb_set_all_appendix_subbooks()'.
	* ndtpd/book.c (activate_book_registry): Add the function.
	* ndtpd/book.c (delete_book): Delete the function.
	* ndtpd/config.c (conf_book_path): Don't call eb_bind().
	* ndtpd/config.c (conf_book_appendix_path): Don't call
	eb_bind_appendix().
	* ndtpd/config.c (conf_end): Don't call terminate_book_registry(). 
	* ndtpd/ndtpd.h (Book): Add `path' and `appendix_path'.

	* lib/permission.c, lib/permission.h (count_permission):
	Add the function.
	
	* ndtpd/Makefile.am (CLEANFILES): Clean `stamp-defs-h', not 
	`stamp-defs'.

	* ndtpd/config.c (configuration_table): Rewrite it with new
	notaion.
	* ndtpd/config.c (conf_end, conf_end_book): Output warning
	message when no `book' group directive is definded.
	* ndtpd/book.c ndtpd/ndtpd.h (count_book_registry): Add the
	function.
	* lib/readconf.c (read_configuration): Change the notation of
	the special directive `begin' and `end'.
	* lib/readconf.c (read_configuration): Don't pass `block' and
	`name' to dispatched functions.
	* lib/readconf.h (Configuration): Change the type of `function'.
	* lib/readconf.h (Configuration): Delete `redefinable' and
	`optional', and unify them into `deftype'.
	* lib/readconf.h (READCONF_ZERO_OR_ONCE, READCONF_ONCE, 
	READCONF_ZERO_OR_MORE, READCONF_ONCE_OR_MORE): Add these macros.
	* lib/readconf.h (READCONF_REDEFINABLE, READCONF_ONCE, 
	READCONF_REQUIRED, READCONF_OPTIONAL): Delete these macros.
	
1998-10-18  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* configure.in (AC_CHECK_FUNCS): Add `sigsetjmp'.

1998-10-17  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/ndtpcheck.c (main): Set `server_mode' to
	`SERVER_MODE_CHECK', instead of `SERVER_MODE_UTILITY'.
	* ndtpd/ndtpcontrol.c (main): Set `server_mode' to
	`SERVER_MODE_CONTROL', instead of `SERVER_MODE_UTILITY'.
	* ndtpd/defs.h.in: Delete `SERVER_MODE_UTILITY', and add
	`SERVER_MODE_CHECK' and `SERVER_MODE_CONTROL'.

	* lib/permission.c (count_permission): Add this function.
	* lib/permission.h (count_permission): Add this function.
	* ndtpd/config.c (conf_end): Output a warning message when no
	`hosts' directive is not defined.
	* ndtpd/config.c (conf_book_end): Output a warning message when
	no `hosts' sub-directive is not defined.

1998-10-08  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* lib/daemon.c (daemonize): Support POSIX compatible setpgrp().
	* configure.in (AC_FUNC_SETPGRP): Added.

1998-10-02  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Version 2.1.

1998-09-17  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* lib/readconf.c (read_configuration): Don't ignore unbalanced
	`end' keywords.

1998-08-26  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/ndtp.c (ndtp_main): Call `skip_line_buffer' when too long
	line is received.
	* lib/linebuf.c (read_line_buffer): Reset `linebuffer->restsize'
	when too long line is received.

1998-08-21  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/ndtpd.c (standalone_main): Block SIGCHLD during fork.

	* configure.in (LIBZ_INCLUDED): Rename it to `INCLUDED_FOR_LIBZ'.
	* configure.in (LIBZ_DEPENDED): Rename it to `DEPENDENCIES_FOR_LIBZ'.
	* configure.in (LIBZ_LDADDED): Rename it to `LDADD_FOR_LIBZ'.

	* configure.in (LIBEB_INCLUDED): Rename it to `INCLUDED_FOR_LIBEB'.
	* configure.in (LIBEB_DEPENDED): Rename it to `DEPENDENCIES_FOR_LIBEB'.
	* configure.in (LIBEB_LDADDED): Rename it to `LDADD_FOR_LIBEB'.

1998-08-15  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Version 2.1beta2.

	* lib/ident.c (identify_user): Use `sigaction' instead of
	`signal' if the system supports POSIX signal mechanism.

	* ndtpd/ndtpd.c (standalone_main, inetd_main, terminate_child,
	terminate_parent): Call `clear_book_registry', `clear_permission'
	and `clear_line_buffer' to clear lists and buffers when ndtpd
	exits.

	* ndtpd/ndtpd.c (standalone_main): Delete `die_child:' label.
	* ndtpd/ndtpd.c (standalone_main): Rename `die_child:' label
	to `die:'.

1998-08-14  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/getopt_long.pl (getopt_long): Set option name to ''
	for a return value of a non-option argument when RETURN_IN_ORDER
	mode.

1998-08-08  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Makefile.am (EXTRA_DIST): Delete `FAQ' and `FAQ-ja'.

	* ndtpd/ndtpd.c (standalone_main): At first, kill children when
	it restarts.

	* ndtpd/ndtpd.c (inetd_main): Ignore SIGQUIT and SIGINT.

	* ndtpd/ndtpd.c (standalone_main): Ignore SIGINT if it is parent
	process.
	* ndtpd/ndtpd.c (standalone_main, terminate_parent): Send SIGINT
	to a process group, when it kills children.
	* ndtpd/ndtpd.c (standalone_main): 

	* ndtpd/ndtpd.c: Use POSIX signal functions if the system
	supports POSIX signal.
	* ndtpd/ndtpd.c (standalone_main): Return when wait_server_port()
	returns because of receiving SIGHUP.
	* lib/serverport.c (wait_server_port): Return with a return
	value `-1' when select() is interrupted.
	* ndtpd/ndtpd.c (main): Call standalone_main() endlessly.

	* configure.in (AC_CHECK_FUNCS): Add `sigsetmask' and `sigprocmask'.
	* ndtpd/ndtpd.c (standalone_main): Block SIGCHLD when get or set
	`connection_count'.
	* ndtpd/ndtpd.c (standalone_main): Block SIGINT, SIGQUIT, SIGTERM
	and SIGCHLD when a new connection is come.
	* ndtpd/ndtpd.c (standalone_main): Block SIGHUP when it does
	restart procedures.
	* ndtpd/ndtpd.c (standalone_main): Block SIGHUP when it processes
	a new connection , and when it does restart procedures.
	`connection_count'.
	* ndtpd/ndtpd.c (set_signal_hander, block_signal, unblock_signal):
	Add these functions.

	* configure.in (AC_CHECK_FUNCS): Remove `sigsetjmp'.
	* ndtpd/ndtpd.c (standalone_main, restart_parent): Don't use
	sigsetjmp(), siglongjmp(), setjmp() and longjmp().
	Use the `restart_trigger' variable, instead.

1998-08-05  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/ndtp.c (command_L): Change an error message which is
	output upon failure of `find_appendix_subbook'.

1998-08-03  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/ndtpstat.in: Change titles of charts.

	* configure.in: Fix a cached variable name.
	The valid name is `ac_cv_lib_resolv_res_query', but we used
	`ac_cv_lib_resolv'.

1998-07-26  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/ndtpstat.in: Fix counting of `X' prefixed commands.

	* ndtpd/ndtpd.c (inetd_main): Set `abort_parent' as a signal
	handler for SIGBUS and SIGSEGV.
	* ndtpd/ndtpd.c (inetd_main): Set `terminate_parent' as a signal
	handler for SIGINT, SIGTERM and SIGHUP.
	* ndtpd/ndtpd.c (terminate_parent): Output the message ``the
	server process exits, timeout'' with LOG_NOTICE priority
	when receives SIGALRM.
	* ndtpd/ndtp.c: Output error messages with LOG_NOTICE except for
	`permission denied'.
	* ndtpd/ndtpd.c (inetd_main, standalone_main, terminate_parent,
	terminate_child): Ignores errors upon shutdown().
	* ndtpd/ndtpd.c (main, inetd_main): Output the message ``server
	dies'' with LOG_NOTICE, not LOG_CRIT, when server mode is INETD.
	* lib/linebuf.c (read_line_buffer): Output syslog messages with
	LOG_NOTICE.
	* lib/ident.c (identify_user): Output syslog messages with
	LOG_NOTICE except for failure of getsockname or getpeername.

1998-07-19  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* move-if-change: Add the file.
	* Makefile.am (EXTRA_DIST): Add `move-if-change'.
	* ndtpd/Makefile.am (defs.h): Use `move-if-change' to generate
	defs.h.
	* ndtpd/Makefile.am (CLEANFILES): Add `stamp-defs-h'.

1998-07-16  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Version 2.1beta1.

	* acinclude.m4 (AX_HAVE_STRUCT_UTIMBUF): Fix a message.

	* configure.in (AC_CHECK_LIB): Don't check the `bind' library
	twice.

1998-07-13  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Version 2.1beta0.

	* ndtpd/book.c (find_book): Ignore case sensitivity when compares
	book names.

1998-07-12  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* configure.in (AC_ARG_WITH): Add `--with-eb' and `--with-zlib'.

1998-07-09  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Makefile.am, sample.in: Rename `sample.in' to `ndtpd.sample.in'
	though it exceeds 14 characters.

	* configure.in (AC_CHECK_LIB): Check `-lbind' in addition with
	`-lresolv'.
	* configure.in (AC_CHECK_LIB): Modify the order of libraries.
	It must be `-lnsl -lsocket'.

1998-06-28  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/ndtpd.c (short_options): Define this variable and passed
	to getopt_long().
	* ndtpd/ndtpcheck.c (short_options): Likewise.
	* ndtpd/ndtpcontrol.c (short_options): Likewise.

	* ndtpd/ndtpd.c (longopts): Rename to `long_options'.
	* ndtpd/ndtpcheck.c (longopts): Likewise.
	* ndtpd/ndtpcontrol.c (longopts): Likewise.

1998-06-27  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/Makefile.am (ndtpd_LDADD, ndtpd_DEPENDENCIES): Add zlib.
	* ndtpd/Makefile.am (ndtpcheck_LDADD, ndtpcheck_DEPENDENCIES):
	Likewise.
	* ndtpd/Makefile.am (ndtpcontrol_LDADD, ndtpcontrol_DEPENDENCIES):
	Likewise.
	* ndtpd/Makefile.am (WITH_ZLIB): Add this conditional flag.
	* ndtpd/Makefile.am (LIBEB_DEPENDED): Define this macro.

	* configure.in (AC_ARG_WITH): Set `zlibdir' when
	`--with-eb-libraries' is specified.
	* configure.in (AC_ARG_WITH): Set `zincludedir' when
	`--with-eb-includes' is specified.
	* configure.in (AC_ARG_WITH): Add `--with-zlib-includes'
	and `--with-zlib-libraries'.
	* configure.in (AM_CONDITIONAL): Add `WITH_ZLIB'.

	* Use libtool 1.2a.

1998-06-18  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/ndtpd.c (inetd_main): When exit, output a syslog message
	which shows the process dies.

1998-06-13  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/config.c (conf_begin): Check the length of the default
	work-path.

	* ndtpd/ndtpd.c (main), ndtpd/ndtpcheck.c (main), ndtpd/ndtpcontrol.c
	(main): Check the length of the default configuration filename.

	* ndtpd/ndtpcheck.c, ndtpd/ndtpcontrol.c: Include `limits.h' and
	define PATH_MAX when not defined.

	* ndtpd/defs.h.in (MAXLEN_BOOKNAME): Rename to 
	`MAXLEN_BOOK_NAME'.
	* ndtpd/defs.h.in (MAXLEN_BOOKTITLE): Rename to 
	`MAXLEN_BOOK_TITLE'.

	* ndtpd/defs.h.in (MAXLEN_FILENAME): Delete this macro.
	Instead, use PATH_MAX.

	* configure.in (AC_PATH_PROGS): Don't exit when MAILX is
	not found.  

	* Makefile.am, configure.in (AM_CONDITIONAL): Rename
	`BUILD_JA_DOC' to `ENABLE_JA_DOC'.
	* Makefile.am, configure.in (AM_CONDITIONAL): `--with-ja-doc'
	is `true' by default.

	* Makefile.am, ndtpd/Makefile.am, configure.in (AM_CONDITIONAL):
	Rename `BUILD_LIBEB' to `WITH_EB'.

1998-06-11  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Version 2.0.1.

	* ndtpd/config.c (conf_work_path): Don't set `pid_filename'
	at here.
	* ndtpd/config.c (conf_end): Set `pid_filename'.

1998-06-06  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/book.c (find_subbook): Examine whether the return
	value of `eb_subbook_directory2' is NULL.
	* ndtpd/book.c (find_appendix_subbook): Examine whether the
	return value of `eb_appendix_subbook_directory2' is NULL.

1998-06-05  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Version 2.0.

1998-05-17  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/Makefile.am (ndtpdaily): Fix the rule.
	`@ndtpstat@' in `ndtpdaily.in' was not replaced correctly.

	* lib/permission.c (test_permission): Fix the permission
	check procedure.  The hostname `?' was matched to any host.

1998-05-02  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Version 2.0beta1.

	* configure.in: Delete `AC_ISC_POSIX'.

1998-04-29  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Use automake 1.3.

	* ndtpd/getopt_long.pl: Don't use expressions like as
	`($ver, $var, $var) = (0..2)'.  Perl5.004_01 doesn't accept
	such an expression.

	* ndtpd/ndtp.c (command_P): Recognize asterisk in JIS X
	0208 as wild card.

	* lib/permission.h (Permission): Add the members; `not',
	`address' and `netmask'.  Rename `host' to `hostname'.
		
	* lib/permission.c (add_permission, test_permission):
	Recognize the `address/netmask' pattern.
	* lib/permission.c (parse_address, parse_address_netmask):
	Add these functions.

1998-04-13  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/Makefile.am (ndtpdaily): Concat the header part of
	`ndtpdaily.in', `getopt_long.pl' and the body part of
	`ndtpdaily.in' in that order to generate `ndtpdaily'.
	* ndtpd/Makefile.am (ndtpstat): Concat the header part of
	`ndtpstat.in', `getopt_long.pl' and the body part of
	`ndtpstat.in' in that order to generate `ndtpstat'.

	* ndtpd/ndtpdaily.in: Fix miss spelling.

1998-04-11  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/ndtp.c (command_F): Delete succeeded duplicate hit
	entries.

	* configure.in (AC_ARG_WITH): Output default values of
	`--with-eb-libraries' and `--with-eb-includes' options
	when `configure --help'.

1998-04-04  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/hookset.c (bitmap_hooks, text_hooks): Delete some hooks.
	* ndtpd/hookset.c (generic_hooks): Add this hook array.
	* ndtpd/hookset.c (hook_initialize): Add the function.
	* ndtpd/global.c (bitmap_hookset): Delete this global variable.

1998-04-01  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/ndtpd.c (standalone_main): Never pause when
	`max_clients' is 0.

1998-03-30  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/ndtpd.h: Add declarations of `find_subbook' and
	`find_appendix_subbook'
	* ndtpd/ndtp.c (find_subbook, find_appendix_subbook): 
	Move to `ndtpd/book.c', and remove the `static' modifier.

	* ndtpd/ndtp.c (command_XB): Use `accepted_file', not `1'.

1998-03-25  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Version 2.0beta0.

	* Use GNU libtool-1.2.

1998-03-25  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* lib/readconf.c (read_configuration): Raise an error when
	an argument to a directive is missing.

1998-03-22  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/ndtp.c (command_S): Fix calculation of `request_size'.

1998-03-21  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/hookset.c (hook_narrow_character_text): Use
	`eb_narrow_alt_character_text' to get alternation text.
	* ndtpd/hookset.c (hook_wide_character_text): Use
	`eb_wide_alt_character_text' to get alternation text.
	* ndtpd/hookset.c (hook_narrow_character_bitmap): Use
	`eb_wide_alt_character_text' to get bitmap data.
	* ndtpd/hookset.c (hook_wide_character_bitmap): Use
	`eb_wide_alt_character_text' to get bitmap data.

	* ndtpd/ndtp.c (command_F): Use `eb_seek' and `eb_rawtext'
	to get a page.
	* ndtpd/ndtp.c (command_S): Use `eb_seek' and `eb_text'.
	to get text.
	* ndtpd/ndtp.c (command_P): Use `eb_seek' and `eb_heading'
	to get headings of hit entries of a previous search.
	* ndtpd/ndtp.c (command_P): Use `eb_search_word',
	`eb_search_endword' and `eb_hit_list' to search a word.

	* ndtpd/ndtp.c (command_P): Invoke `reverse_word' to reverse
	an input word.
	* ndtpd/ndtp.c (reverse_word_A, reverse_word_K): Unite
	these functions to the new function `reverse_word'.

1998-03-19  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/ndtpdaily.in: Use `@NDTPSTAT@' instead of `ndtpstat'.
	* ndtpd/Makefile.am (ndtpdaily): Replace `@NDTPSTAT@' to
	`$(program_prefix)ndtpstat$(program_suffix)'.

1998-03-07  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/ndtpd.c (inetd_main, test_main): Output `connected'
	message to syslog.

	* ndtpd/Makefile.am (ndtpdaily): Replace `@BZIP2@' to $(BZIP2).
	* ndtpd/ndtpdaily.in: Support `bzip2' as a log file compressor.
	* configure.in (AC_PATH_PROG): Look for `bzip2'.

	* ndtpd/ndtpstat.in: Add the `others' column to `Accesses to
	Book/Subbook:' chart.

1998-03-06  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* configure.in: Don't output a warning message when `configure'
	is invoked without the `--enable-doc-ja' option.

	* ndtpd/ndtp.c (command_Q, command_u, command_I, command_v,
	command_T, command_t, command_XI, command_XB): Return with an
	error when its argument is not empty.

	* ndtpd/ndtp.c (command_P): Fix `syslog' format.
	`ndtpd' dumped core when received a request with an invalid
	method.

1998-03-01  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/texthook.c: Rename to `hookset.c'.

	* ndtpd/ndtp.c (command_P, command_S): Use `bitmap_hookset'
	when a request command starts with `X'.
	* ndtpd/texthook.c (initialize_hookset): Also initialize
	`bitmap_hookset':
	* ndtpd/ndtpd.h, ndtpd/global.c: Add the global variable 
	`bitmap_hookset'.
	* ndtpd/texthook.c: Add the static variable `bitmap_hooks'.
	* ndtpd/texthook.c (initialize_text_hookset), ndtpd.h, ndtpd.c
	(main): Rename `initialize_text_hookset' to `initialize_hooksets'.
	* ndtpd/texthook.c (hook_narrow_font, text_hookset): Rename
	`hook_narrow_font' to `hook_narrow_character_text'.
	* ndtpd/texthook.c (hook_wide_font, text_hookset): Rename
	`hook_wide_font' to `hook_wide_character_text'.
	* ndtpd/texthook.c (hook_narrow_character_bitmap, 
	hook_wide_character_bitmap): Add these functions.

	* ndtpd/ndtp.c (command_L, command_Q, command_A, command_u,
	command_P, command_F, command_S, command_I, command_v,
	command_T, command_t, command_X, command_XI, command_XL, 
	command_XB, command_Xb): Use `command' as an argument to `syslog'.

	* ndtpd/ndtp.c (command_L, command_Q, command_A, command_u,
	command_P, command_F, command_S, command_I, command_v,
	command_T, command_t, command_X, command_XI, command_XL, 
	command_XB, command_Xb): Change type of first argument to
	`const char *' from `int'.

	* ndtpd/ndtp.c (command_X, command_XI, command_XL, command_XB,
	command_b): Add these functions.

1998-02-22  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/book.c (set_book_permissions): Rename to
	`check_book_permissions'.
	* ndtpd/book.c (set_all_book_permissions): Add this function.
	* ndtpd/ndtpd.c (test_main): Call `set_all_book_permissions'.

	* ndtpd/book.c (set_current_book, unset_current_book,
	set_current_subbook, unset_current_subbook): Delete these
	functions.
	* ndtpd/ndtp.c (command_L): Don't use `set_current_book',
	`unset_current_book', `set_current_subbook' and 
	`unset_current_subbook'.

	* ndtpd/ndtp.c (command_L, book_number_to_name): Merge these
	functions into `command_L'.

	* ndtpd/ndtp.c (command_P): Find first `*', not last `*'.

	* configure.in (AC_PATH_PROG for MAILX): Separate paths with
	a space, not `:'.

1998-02-20  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/Makefile.am (INCLUDES): Use `$(ebincludedir)' instead of
	`../eb'.
	* ndtpd/Makefile.am (LIBEB): Use `$(eblibdir)' instead of
	`../eb'.
	* configure.in: Add the `--with-eb-libraries' and
	`-with-eb-includes' options to `configure'.

	* lib/readconf.h: Add the macros `READCONF_REDEFINABLE',
	`READCONF_ONCE', `READCONF_REQUIRED' and `READCONF_OPTIONAL'.
	* ndtpd/config.c (configuration_table): Use READCONF_ macros
	instead of `0' and `1'.

1998-01-25  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* sample.in, Makefile.am (ndtpd.sample):
	Use `$(datadir)/eb/appendix' instead of `$(appendixdir)'.

	* lib/makedir.c (make_missing_directory_chain):
	Add missing initialization code about `tmppath[]'.

	* book.c, config.c, ndtp.c, ndtpcheck.c, ndtpcontrol.c, ndtpd.c:
	Use the `NDTPD_P' macro.
	* ndtpd.h: Define the `NDTPD_P' macro for function declarations.
	
1998-01-19  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Version 1.0.5.

1998-01-09  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/getopt_long.pl (getopt_initialize),
	ndtpd/ndtpdaily.in (long_options), ndtpd/ndtpstat.in (long_options):
	Modify option-list format of `getopt_long'.
	FLAGS must be `no-argument' or `required-argument'.

1997-12-31  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/ndtpcheck.c, ndtpd/ndtpcontrol.c: (main)
	Call set_fakelog_name(), set_fakelog_mode() and set_fakelog_level().

	* lib/fakelog.c, lib/fakelog.h: Delete set_fakelog().
	Add set_fakelog_name(), set_fakelog_mode() and
	set_fakelog_level().

	* ndtpd/ndtpcheck.c: Add the `--verbose' option.
	This option is equivalent to `--debug'.
	
	* Makefile.am: Delete `appendixdir' and `appendix_DATA'.
	Set `pkgdatadir' to `$(datadir)/eb/appendix'.

	* Add README.ja and INSTALL.ja.

	* ndtpd/ndtpd.c, ndtpd/ndtpcheck.c, ndtpd/ndtpcontrol.c,
	ndtpd/ndtpstat.in, ndtpd/ndtpdaily.in:
	Unify style of error messages.

	* ndtpd/defs.h.in: Delete the `PROGRAM_VERSION' macro.
	Use `VERSION' instead.

1997-12-30  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* configure.in, ndtpd/Makfile.am, ndtpd/ndtpstat.in,
	ndtpd/ndtpdaily.in: Set and substitute MAILING_ADDRESS.

	* ndtpd/ndtpd.c, ndtpd/ndtpcheck.c, ndtpd/ndtpcontrol.c,
	ndtpd/ndtpstat.in, ndtpd/ndtpdaily.in:
	Modify version and help messages; output version and help messages
	to standard rather than standard error, add copyright and license
	into version message, add mailing address information into help
	message.

1997-12-15  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* configure.in, acinclude.m4: Move the `union wait' check
	to acinclude.m4, and Define the `AX_UNION_WAIT' macro.

	* Add the file `acinclude.m4'.

1997-12-14  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/ndtp.c: (command_S) Limit the maximum text size along
	with the `max_text_size'.

	* ndtpd/config.c: Add the single directive `max-text-size'.

	* ndtpd/ndtpd.h, ndtpd/defs.h.in, ndtpd/global.c:
	Add the macro `DEFAULT_MAX_TEXT_SIZE' and the global variable
	`max_text_size'.

	* ndtpd/ndtpd.c: Add the `--test' and `-t' options.
	Add test_main().

	* ndtpd/defs.h.in: Define SERVER_MODE_TEST.

	* ndtpd/ndtp.c: Add command_i() and command_X().

	* ndtpd/ndtp.c, Makefile.am: include <eb/font.h>.

1997-12-06  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/Makefile.am
	Link ../eb/eb/libeb.la instead of ../eb/eb/libeb.a.

	* configure.in: Add `AM_PROG_LIBTOOL'.

	* Use libtool-1.0.
	Get 4 files from the libtool-1.0 distribution;
	`config.guess', `config.sub', `ltconfig' and `ltmain.sh'.

1997-12-02  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Version 1.0.4.

	* lib/openmax.c: (get_open_max) Fix getrlimit() usage.
	Include `sys/types.h'.

1997-11-24  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/ndtp.c: (command_I) Output `OK <page-number>' when
	the current book has the copyright notice.

1997-11-03  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/texthook.c: Delete hook_unprintable().
	Delete a hook for EB_HOOK_OTHERS listed in text_hooks[].

	* ndtpd/config.c: Change default value of `user_id' and
	`group_id'. `user_id' is set to the return value of getuid().
	`groud_id' is set to the return value of getgid().

	* lib/fakelog.c: Don't outpout debug messages.

1997-10-23  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Rename ndtpd/ggetopt.pl to ndtpd/getopt_long.pl.

	* ndtpd/config.c, ndtpd/defs.h.in: Rename DEFAULT_MAXHITS
	to DEFAULT_MAX_HITS.

	* lib/filename.c: Fix a bug that cannot have canonicalize
	a relative path.

	* ndtpd/config.c: (conf_alias_eiwa, conf_alias_waei, 
	conf_alias_kojien) Accept digits in a subbook name.

1997-10-19  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Version 1.0.3.

	* Remove the `misc' sub-dicectory.
	`kenjiro.diff' is no longer distributed with NDTPD.

	* doc-ja/mdate-sh: Set Japanese date to UPDATED.

1997-10-18  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* configure.in: Use AC_MSG_WARN and AC_MSG_ERROR rather
	than echo.

	* Makefile.am, configure.in: Use AM_CONDITIONAL.
	It examines whether Japanese documents should be installed
	or not.

	* configure.in: Add the `--enable-ja-info' option.

	* Create new sub-directory `doc-ja'.
	Add Japanese info document `doc-ja/ndtpd-ja.texi'.

1997-10-10  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Makefile.am: Use `$(srcdir)/sample.in' rather than
	`sample.in' in the commands to generate `ndtpd.sample'.

	* ndtpd/Makefile.am: Use `$(srcdir)/defs.h.in' rather
	than `defs.h.in' in the commands to generate `defs.h'.
	Use `$(srcdir)/ndtpdaily.in' rather than `ndtpdaily.in' in
	the commands to generate `ndtpdaily'.
	Use `$(srcdir)/ndtpstat.in' rather than `ndtpstat.in' in
	the commands to generate `ndtpstat'.

1997-10-02  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/Makefile.am, ndtpdaily.in: Define logdir and use
	it instead of `$pkglocalstatedir/log'.

1997-09-30  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Version 1.0.2.

	* ndtpd/Makefile.am, defs.h.in, ndtpdaily.in: Define
	pkglocalstatedir and use it instead of `$localstatedir/$PACKAGE'.

	* configure.in: Raise a warning instead of a fatal error
	when perl is not found.

	* configure.in: Delete AC_HEADER_DIRENT and AC_FUNC_CLOSEDIR_VOID.

1997-09-24  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Delete lib/bitma.c and lib/bitma.h.
	These sources are moved to EB library.

	* ndtpd/defs.h.in, ndtpd/config.c, ndtpd/ndtpcheck.c,
	ndtpd/ndtpcontrol.c: Rename SERVER_MODE_CHECKER to
	SERVER_MODE_UTILITY.

1997-09-18  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* lib/logpid.c: (log_pid_file) Output the warning message
	`pid file already exists' only when the file is a regular
	file.
	
	* lib/fakelog.c: (fakelog) Fix a mistake in `%m' expansion.
	Took strcat() for strcpy().

	* ndtpd/ndtpd.c: Append a missing new line character in
	the error message `too may arguments'.

	* ndtpd/Makefile.am: Add ndtpcontrol to `sbin_PROGRAMS'.
	Add ndtpcontrol_SOURCES, ndtpcontrol_LDADD, and 
	ndtpcontrol_DEPENDENCIES.

	* Add ndtpd/ndtpcontrol.c.
	
	* lib/logpid.c: Add read_pid_file() and probe_pid_file().

1997-09-15  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/ndtpdaily.in: Fix default filename of the log file.

	* Rename `README.upgrate' to `UPGRADE'.

	* ndtpd/Makefile.am: Add `Makefile' to the dependencies of
	ndtpdaily, ndtpstat, and defs.h.

	* ndtpd/ndtpdaily.in, ndtpd/ndtpstat.in: Modify help message.
	Add explanation about non-option arguments.

	* Makefile.am: Genrerate `ndtpd.sample' from `sample.in'.

	* Makefile.am, ndtpd/Makefile.am: Move pkglocalstate_DATA
	and log_DATA from `ndtpd/Makefile.am' to `Makefile.am'.

	* ndtpd/ndtpdaily.in: Fix usage in the help message.
	Append missing `mail-address...'.

1997-09-06  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Version 1.0.1.

	* ndtpd/config.c, ndtpd/ndtpd.c: Parse DEFAULT_PORT only when
	the `port' directive is not defined in a configuration file.

	* Makefile.am: Add `FAQ' to EXTRA_DIST.

	* Add the file `FAQ'.

1997-08-30  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/ndtp.c, lib/linebuf.c: Move too_long_line() in
	`ndtpd/ndtp.c' to `lib/linebuf.c', and rename to
	skip_too_long_line_buffer().

	* Makefile.am: Install `ndtpd.sample' to `$(sysconfdir)'.

	* Rename `ndtpd.conf' to `ndtpd.sample'.

	* configure.in, ndtpd/Makefile.am, ndtpd/ndtpdaily.in:
	Rename `GZIP' to `GZIPCMD'.

	* Delete misc/automake-1.2.diff.
	Use original version of automake-1.2.

1997-08-23  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/Makefile.am: Update dependencies among *.c and *.h files.

	* lib/bitmap.c, lib/bitmap.h: Add write_bitmap_xbm(),
	write_bitmap_xpm(), and write_bitmap_gif().

	* ndtp/texthook.c: Hide all unknown control sequences from text.
	Delete a hook for EB_HOOK_UNKNOWN_SEQUENCE from the
	`text_hookset'.

	* ndtp/texthook.c: Add initialize_text_hookset().
	Don't export the `text_hooks' variable.

1997-08-19  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* configure.in: Delete `AC_PROG_MAKE_SET'.

	* ndtpd/Makefile.am: Generate `ndtpdaily.tmp' from `ndtpdaily.in',
	and then copy `ndtpdaily.tmp' to `ndtpdaily'.

	* ndtpd/Makefile.am: Generate `ndtpstat.tmp' from `ndtpstat.in',
	and then copy `ndtpstat.tmp' to `ndtpstat'.

	* ndtpd/Makefile.am: Add `ndtpdaily.tmp' and `ndtpstat.tmp'
	to CLEANFILES.

	* lib/daemon.c, lib/daemon.h, ndtpd/ndtpd.c: Rename
	start_daemon() to daemonize().

1997-08-05  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Version 1.0.

	* Use texinfo-3.11.

	* doc/texinfo.tex: Get the file from texinfo-3.11.

1997-08-02  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/texthook.c: Output an unknown sequence with the
	`#xxxx' format.

	* ndtpd/Makefile.am: Delete `rundir' and `rundir_DATA'
	definitions.

	* ndtpd/config.c, ndtpd/defs.h.in: Erase the `pid-file'
	directive from the directive list.
	The pid file is placed at `<work-path>/ndtpd.pid', and it
	cannot be changed.

	* ndtpd/texthook.c: Change newline code from `\r\005' to `\n'.

	* lib/privilege.c: include stdio.h to define NULL.

1997-07-18  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Version 1.0beta2.

	* ndtp/texthook.c: Add two hooks; EB_HOOK_BEGIN_REFERENCE and 
	EB_HOOK_BEGIN_MENU.
	Output an reference pointer with the `<xxx:xxx>' format like
	as dserver.
	Output an unknown sequence with the `[xxxx]' format.

1997-07-11  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtp/Makefile.am: Delete install-exec-hook and 
	installdirs-hook.

	* ndtp/ndtp.c: Unset the current selected subbook when
	the command `L' is failed.

	* ndtpd/ndtp.c: Fix a response message format to the `v'
	command.

1997-07-06  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Use automake-1.2.

	* ndtp/ndtpd.c: Change syslog priority for the `receiving
	SIGCHLD' message.

1997-06-26  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtp/ndtpstat.in: Count the `L' command as an access to
	a book/subbook.

1997-06-25  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/ndtp.c: Fix a bug that `L0' was always failed.

	* ndtpd/ggetopt.pl, ndtpd/ndtpstat.in, ndtpd/ndtpdaily.in:
	Fix miss spelling variable names.

	* lib/ident.c: Use RETSIGTYPE_VOID at the end of signal handlers.

	* lib/getopt.c, lib/getopt1.c, lib/getopt.h: Get these files
	from glibc-2.0.4.

1997-06-18  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Version 1.0beta1.

	* lib/fakelog.c, lib/fakelog.h: Don't use <varargs.h> for
	ANSI C compilers even when STDC_HEADERS is undefined.

1997-06-14  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/config.c: Don't exit immediately when failed to bind
	a book.

	* ndtpd/book.c, book/ndtpd.h: Add delete_book().

	* ndtpd/book.c: Make an order of subbooks in an appendix be
	independent of that in the correspoinding book.

	* ndtpd/defs.h.in: Delete unused macro `DEFAULT_LOCK_PATH'.

1997-06-12  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Makefile.am: Add README.upgrade to EXTRA_DIST.

	* ndtpd/book.c: Ignore return values from eb_set_appendix_subbook()

	* ndtpd/ndtp.c: Support `nodict'.

	* ndtpd/ndtpdaily.in: Fix gzip compression.
	Delete the `-c' option from a gzip command line.

1997-06-09  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/ndtp.c: Response messages of the `t' and `T' commands
	in NDTP comes to be compatible with those of DSERVER.

	* ndtpd/book.c, ndtpd/ndtpd.h: Add unset_current_book() and
	unset_current_subbook().

	* lib/ident.c, lib/ident.h: Rename `rfc1413.[ch]' to `ident.[ch]'.

	* ndtpd/config.c, ndtpd/global.c, ndtpd/ndtpd.h:
	Delete the unused variable `lock_path'.

1997-06-08  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ndtpd/book.c, ndtpd/ndtpd.h: Add set_book_permissions().
	Add terminate_book_registry().

	* ndtpd/book.c: When a book is added, `current_book' refers to
	the added book.

	* ndtpd/book.c: add_book(), set_current_book() and 
	set_current_subbook() returns (int) other than (Book *).

	* ndtpd/ndtp.c: Implement the `t' and `T' commands in NDTP.
	Implement the `L<book-number>' command.
	Add book_number_to_name().

	* ndtpd/ndtpd.h: Add the member `permflag' to the structure `Book'.

1997-06-07  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* configure.in, acconfig.h: Define RETSIGTYPE_VOID when RETSIGTYPE
	is `void'.

	* ndtpd/ndtpd.c: Use RETSIGTYPE_VOID at the end of signal handlers.

	* lib/makedir.c: Use S_ISDIR instead of S_IFDIR.
	Define S_ISREG and S_ISDIR if they aren't defined in <sys/stat.h>.
	Redefine S_ISREG and S_ISDIR if they are broken.
