0.4 (20010215)
0.4 (20010215)
- Fixed memory usage bugs
- Changed net server/client functions to use service name else port number
- Fixed security bug: daemon_file_is_safe() wasn't following symlinks (doh!)
- Renamed daemon_file_is_safe() to daemon_path_is_safe()
- Added daemon_absolute_path() to daemon module
- Added memory pool functions to mem module
- Fixed bug: optional option arguments were handled in dodgy C
- Made supplied snprintf() POSIX compliant (was using getpagesize())
- Removed conf module (Added daemon_parse_config() to daemon module)
- Removed net_chat(), rfc822_localtime(), rfc822_gmtime() (not useful enough)
- Added secure memory/pool functions to mem module
- Fixed Makefile bug: $(CCFLAGS) for daemon and libslack weren't separate
- Added fgetline() to fifo module (reads a line with any line ending)
- Added str_fgetline() to str module (like fgetline but handles any length)
- Renamed fifo module to fio
- Fixed Makefile bug: wasn't uninstalling everything properly
- Changed net_send() to take a timeout argument like next_expect() does
- Added strlcpy(), strlcat(), strcasecmp() and strncasecmp() to str module
- Renamed conf/solaris to solaris-gcc and added solaris-cc for sun workshop
- Added support for root and user pidfiles in separate directories
- Added make rpm rpm-daemon rpm-slack (with Edward Avis ed at membled.com)
- Added installation of manpages for each function (link to module manpage)
- Added libslack(3) overview manpage
- Added list_break(), map_break()
- Renamed assert() to check() for obvious reasons
- Renamed re funcs in str module: s/regex/regexpr/g
- Added thread module and made everything MT-Safe or MT-Disciplined
- Added relative index/range semantics to string functions
- Added make deb deb-daemon deb-slack (debian binary packages)
- Added make pkg pkg-daemon pkg-slack (solaris binary packages)
- Added setsockopt(SO_REUSEADDR) for net servers
- Changed net server/client API to allow optional setsockopt(RCVBUF/SNDBUF)
- Added REFERENCES section to README file
- Stopped net_expect/net_send from interfering with SIGALRM/alarm/setitimer
- Added read_timeout(), write_timeout() and rw_timeout() to fio module
- Changed net_read() and net_write() to take a timeout argument
- Added '?' field size specifier to unpack() (for packet length fields)
- Added libslack-config administration utility
- Renamed sockaddr typedef to sockaddr_t
- Changed net_client to take a timeout parameter
- Fixed fd leak in error handling code in net server/client functions
- Fixed bug: str_regsub() didn't handle empty string matches at all
- Changed str_regexpr_split() to take cflags and eflags arguments
- Changed all *_destroy macros to functions that take address of pointer
- Changed mem_resize macro so client must explicitly provide address of mem
- Changed all *_destroy_t typedefs to *_release_t
- Added make [un]install-{daemon|slack}-html (not part of make [un]install)
- Temporarily removed snprintf module (not MT-Safe, not essential)
- Merged lognames module into msg module
- Merged opt module into prog module
- Renamed _* functions in err module to *f (not ANSI compliant)
- Removed MANIFEST