More suggestions:
* require the process to be started as root, not suid-root,
this process would spawn (a) non-root child(ren) and exit
* recognize only a single command line argument:
the configuration file location
* default configuration file = /etc/syslog.conf
a different location can be specified on the command line
* default log location = /var/log
syslogd should be able to create logfiles in this directory
if they don't already exist
* log files should be open for writing as log as the daemon is running
* use common signal interpretations:
SIGHUP: close log files, re-read configuration file; open log files
SIGINT: dump current status and data
SIGUSR1: toggles debugging
SIGKILL: exit
SIGTERM: graceful shutdown
--
Roger Marquis
Roble Systems Consulting
http://www.roble.com/