1999-03-23  Mikolaj J. Habryn  <dichro@rcpt.to>

	* grammar.y: don't delete caps in cleanup.

	* libdb.c: reset capability storage correctly.

	* bytecode.c: check tcpd.h exists before including it... should
	probably make sure that both library and header files exist before 
	using them, for tcpwrappers and libcap.

	* rlinetd.conf.5 (Example): fixed typo in rlimit example and added 
	capability documentation.

	* grammar.y: merged various opcode chains together, imposed
	stricter ordering for capabilities.

1999-03-22  Mikolaj J. Habryn  <dichro-log@rcpt.to>

	* signals.c: test for null pointer after reload

	* libdb.c: capabilities implemented

1999-03-17  Mikolaj J. Habryn  <dichro-log@rcpt.to>

	* bytecode.c (run_bytecode): no need to SETFD on sockets - either
	done in OP_ACCEPT, or not relevant

	* grammar.y: allow fallback to get{serv,rpc}byname if lacking *_r, 
	error on 'tcpd' if no libwrap support. don't SETFD on udp sockets.

	* Makefile.am: autoconf/automake/libtool.

	* THANKS: libc5 patch from ianj@chocobo.org

	* lex.l: renamed from parse.l

	* grammar.y: renamed from parse.y

1999-03-13  Mikolaj J. Habryn  <dichro-log@rcpt.to>

	* rlinetd.conf.5: documented rpc config syntax

	* bytecode.c (run_bytecode): tcp_wrappers support - OP_WRAP.

	* parse.y (service_element): chroot is a restrictive directive,
	methinks.

1999-03-11  Mikolaj J. Habryn  <dichro-log@rcpt.to>

	* version 0.2 released
	
	* engine.c: fixed SEGV-if-two-reqs

	* parse.y: only do NDELAY on stream sockets

	* Makefile (CFLAGS): pass INSTALLPATH around, and use it for
	default filenames

	* parse.y: allow port to default to service name

	* data.c: wrote stringlists

	* parse.y: moved port lookups into validation stage.

1999-03-10  Mikolaj J. Habryn  <dichro-log@rcpt.to>

	* inetd2rlinetd: handle rpc services and uid.gid specs.

	* data.c: extracting various data manipulation routines from
	parse.y (it's just tooooo big).

	* removed README.conf, supplanted by rlinetd.conf(5)

	* cleanups.c (rlp_cleanup): cleanup functions for reloading
	configurations

	* parse.y (numrange): wrote numrangelists for rpc version
	numbers. also wrote rpc directive parsing.

	* rlinetd.conf.5: documented %x modifiers

1999-03-09  Mikolaj J. Habryn  <dichro-log@rcpt.to>

	* parse.y: spiff up error reporting, track string protocol for
	later use in getservbyname_r, allow multiple directory directives,
	abstract out validation checking for services.

	* libdb.c: spiff up error reporting

	* engine.c: ditto

	* bytecode.c (rl_fail1): ditto

	* rlinetd.h (rl_fatal): wrote varargs macros for rl_{warn,fatal}

	* inetd2rlinetd: handle argv0 fudging

	* rlinetd.conf.5 (Example): added documentation for directory
	directive.

	* parse.y: recognize and handle directory directive.

	* inetd2rlinetd.1: created.

	* inetd2rlinetd: renamed from inetd2rlinetd.pl

1999-03-08  Mikolaj J. Habryn  <dichro-log@rcpt.to>

	* rlinetd.conf.5 (Example): phew. documented all the directives.

	* README.inetd: inetd compatibility notes

	* debian/rules (binary-arch): do dh_install{init,manpages}

	* rlinetd.1: wrote my very first man page. Gosh.

1999-03-05  Mikolaj J. Habryn  <dichro-log@rcpt.to>

	* parse.y: use getservbyname_r to avoid memory leaks

	* parse.l: add function to free flex buffers

	* libdb.c: free more things

	* Makefile: removed conditional static loading

	* parse.y (service_element): accept server directive

	* libdb.c: accept exec path separate to argv

	* bytecode.c (run_bytecode): trimmed out error handling before
	exec - we're post fork and pretty well committed at this
	stage. also handle argv[0] != exec cases (tcpd)

	* inetd2rlinetd.pl: write quick'n'dirty converter from inetd.conf
	to rlinetd.conf

	* parse.y: fixed up service support routines to handle the new
	additions to opcodes
	(portlist): allow a service name as a port entry

	* rlinetd.h: added length field to rl_instance for multiproto
	support.

1999-03-04  Mikolaj J. Habryn  <dichro-log@rcpt.to>

	* engine.c: moved bulk of instance startup into bytecodes.

	* bytecode.c (run_bytecode): added OP_ACCEPT and OP_FORK, moved
	std stream manipulation into OP_EXEC

	* parse.y: set close-on-exec for listening sockets

	* engine.c: add new sockets out of rls_pending before calling
	select(2)

	* signals.c: set up a pending fd_set manipulated by signal handler 
	keeping sockets which can now accept further connections due to
	previous instances exiting

	* parse.y: copy defaults onto initial service template, use
	protocol setting in service template, track sockets belonging to
	service


