pkgsrc/chat/silc-server/files/silcd.generic
salo ac6ed089d3 Updated to version 0.9.14.
This version is a major upgrade release and everyone running older version is
strongly recommended to upgrade to this version.  This version introduces
several bugfixes, security fixes and bunch of new features.  This also
completes the development work for the SILC protocol version 1.2.

Changes:

- removed patch-ac, merged into distribution
- create server keys with strict permissions

0.9.14:
=======
- Several bugfixes and security fixes were made.  A major remote exploit
  was also fixed.

- The SILC Server now ignores SIGXFSZ and SIGXCPU signals which will
  terminate the process if they occur.  They can occur in poorly
  configured environment.

- Fixed SERVER_SIGNOFF notify handling which caused ghosts to remain in
  the network.

- Fixed inviting and banning by public key.  Fixed invite and ban string
  handling.  Implemented SILC 1.2 complying invite and ban data
  distribution between routers and servers.  To also comply with SILC 1.2,
  prohibited using '@' and '!' characters in invite and ban strings.

- Support for channel public keys added.  A new feature in SILC 1.2, that
  allows join authentication using digital signatures.  Use the latest
  SILC Client to take advantage of this feature.

- Support for SILC 1.2 backup protocol.  This version introduces rewritten
  version of the backup router protocol.  The purpose of the backup router
  protocol is to prevent servers from splitting from the rest of the SILC
  network if the primary router becomes unresponsive.  There are no
  changes to the configuration of the backup router support, and old
  configurations will work with this version too.

  This version is now able to detect much better different network failure
  situations and understand how to work with them.  The servers are now
  able to actually detect when the backup router can/must be used.  They
  are also able, in case of error in backup router protocol, to resume
  back to either to the backup router or to the primary router, and always
  recover from desyncs automatically (usually within 60 seconds).

- Support for command reply error arguments was added.  This allows
  clients to better handle error conditions within command execution.

- The founder public key distribution now complies with the SILC 1.2.
2003-10-16 12:37:44 +00:00

82 lines
1.3 KiB
Text

# $NetBSD: silcd.generic,v 1.3 2003/10/16 12:37:44 salo Exp $
#
KILL="/bin/kill"
CAT="/bin/cat"
RM="/bin/rm"
name="silcd"
confdir="@PKG_SYSCONFDIR@"
required_files="$confdir/silcd.conf"
required_dirs="/var/log/silcd"
pidfile="/var/run/${name}.pid"
command="@PREFIX@/sbin/silcd"
start_precmd="silcd_precmd"
silcd_precmd() {
if [ ! -f $confdir/silcd.prv ]; then
umask 7177 && $command -C $confdir
fi
}
silcd_start() {
if [ ! -r $required_files ]; then
echo "$0: WARNING: $required_files is not readable."
exit 1
fi
if [ ! -d $required_dirs ]; then
echo "$0: WARNING: $required_dirs is not a directory."
exit 1
fi
eval $start_precmd
return_code=$?
if [ $return_code != "0" ]; then
exit 1
fi
echo "Starting ${name}."
eval $command
return_code=$?
if [ $return_code != "0" ]; then
exit 1
fi
}
silcd_stop() {
if [ -r $pidfile -a ! -z $pidfile ]; then
_pid=`${CAT} ${pidfile}`
else
echo "${name} not running?"
fi
if [ ${_pid:=0} -gt 1 -a ! "X$_pid" = "X " ]; then
echo "Stopping ${name}."
${KILL} ${_pid}
return_code=$?
if [ $return_code != "0" ]; then
exit 1
fi
fi
${RM} -f $pidfile
}
case $1 in
'start')
silcd_start
;;
'stop')
silcd_stop
;;
'restart')
silcd_stop
silcd_start
;;
*)
echo "Usage: $0 (start|stop|restart)"
;;
esac