浏览代码

Intial checkin

Nils Ohlmeier 23 年之前
父节点
当前提交
4785b6d702
共有 2 个文件被更改,包括 244 次插入0 次删除
  1. 126 0
      rpm/ser.init.SuSE
  2. 118 0
      rpm/ser.spec.SuSE

+ 126 - 0
rpm/ser.init.SuSE

@@ -0,0 +1,126 @@
+#! /bin/sh
+# Copyright (c) 2002 Frauenhofer Gesellschaft FOKUS, Germany.
+#
+# Author: Nils Ohlmeier <[email protected]>
+#
+# /etc/init.d/ser
+#
+### BEGIN INIT INFO
+# Provides: sip
+# Required-Start: $network
+# Required-Stop:  $network
+# Default-Start:  3 5
+# Default-Stop:   0 1 2 6
+# Description:    Start the SIP Express Router.
+### END INIT INFO
+
+# Source SuSE config
+. /etc/rc.config
+
+# Determine the base and follow a runlevel link name.
+base=${0##*/}
+link=${base#*[SK][0-9][0-9]}
+
+SER_BIN=/usr/sbin/ser
+test -x $SER_BIN || exit 5
+
+# Shell functions sourced from /etc/rc.status:
+#      rc_check         check and set local and overall rc status
+#      rc_status        check and set local and overall rc status
+#      rc_status -v     ditto but be verbose in local rc status
+#      rc_status -v -r  ditto and clear the local rc status
+#      rc_failed        set local and overall rc status to failed
+#      rc_failed <num>  set local and overall rc status to <num><num>
+#      rc_reset         clear local rc status (overall remains)
+#      rc_exit          exit appropriate to overall rc status
+. /etc/rc.status
+
+# First reset status of this service
+rc_reset
+
+# Return values acc. to LSB for all commands but status:
+# 0 - success
+# 1 - generic or unspecified error
+# 2 - invalid or excess argument(s)
+# 3 - unimplemented feature (e.g. "reload")
+# 4 - insufficient privilege
+# 5 - program is not installed
+# 6 - program is not configured
+# 7 - program is not running
+# 
+# Note that starting an already running service, stopping
+# or restarting a not-running service as well as the restart
+# with force-reload (in case signalling is not supported) are
+# considered a success.
+
+case "$1" in
+    start)
+	echo -n "Starting SIP Express Router"
+	## Start daemon with startproc(8). If this fails
+	## the echo return value is set appropriate.
+
+	# NOTE: startproc return 0, even if service is 
+	# already running to match LSB spec.
+	startproc $SER_BIN
+
+	# Remember status and be verbose
+	rc_status -v
+	;;
+    stop)
+	echo -n "Shutting down SIP Express Router"
+	## Stop daemon with killproc(8) and if this fails
+	## set echo the echo return value.
+
+	killproc -TERM $SER_BIN
+
+	# Remember status and be verbose
+	rc_status -v
+	;;
+    restart)
+	## Stop the service and regardless of whether it was
+	## running or not, start it again.
+	$0 stop
+	$0 start
+
+	# Remember status and be quiet
+	rc_status
+	;;
+    force-reload)
+	## Signal the daemon to reload its config. Most daemons
+	## do this on signal 1 (SIGHUP).
+	## If it does not support it, restart.
+
+	echo -n "Reload service SIP Express Router"
+	## Otherwise:
+	$0 stop  &&  $0 start
+	rc_status
+	;;
+    reload)
+	## Like force-reload, but if daemon does not support
+	## signalling, do nothing (!)
+
+	## Otherwise if it does not support reload:
+	rc_failed 3
+	rc_status -v
+	;;
+    status)
+	echo -n "Checking for SIP Express Router: "
+	## Check status with checkproc(8), if process is running
+	## checkproc will return with exit status 0.
+
+	# Status has a slightly different for the status command:
+	# 0 - service running
+	# 1 - service dead, but /var/run/  pid  file exists
+	# 2 - service dead, but /var/lock/ lock file exists
+	# 3 - service not running
+
+	# NOTE: checkproc returns LSB compliant status values.
+	checkproc $SER_BIN
+	rc_status -v
+	;;
+    *)
+	echo "Usage: $0 {start|stop|status|restart}"
+	exit 1
+	;;
+esac
+rc_exit

+ 118 - 0
rpm/ser.spec.SuSE

@@ -0,0 +1,118 @@
+%define name  ser
+%define ver   0.8.7
+%define rel   1
+
+Summary:      SIP Express Router, very fast and flexible SIP Proxy
+Name:         %name
+Version:      %ver
+Release:      %rel
+Packager:     Nils Ohlmeier <[email protected]>
+Copyright:    GPL
+Group:        System Environment/Daemons
+Source:       http://iptel.org/ser/stable/%{name}-%{ver}.tar.gz
+Source2:      ser.init.SuSE
+URL:          http://ser.iptel.org
+Vendor:       FhG Fokus
+BuildRoot:    /var/tmp/%{name}-%{ver}-root
+BuildPrereq:  make flex bison 
+
+
+%description
+Ser or SIP Express Router is a very fast and flexible SIP (RFC3621)
+proxy server. Written entirely in C, ser can handle thousands calls
+per second even on low-budget hardware. C Shell like scripting language
+provides full control over the server's behaviour. It's modular
+architecture allows only required functionality to be loaded.
+Currently the following modules are available: Digest Authentication,
+CPL scripts, Instant Messaging, MySQL support, Presence Agent, Radius
+Authentication, Record Routing, SMS Gateway, Jabber Gateway, Transaction 
+Module, Registrar and User Location.
+
+
+%prep
+%setup
+
+%build
+make all
+cd utils/gen_ha1
+make
+
+
+%install
+[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf "$RPM_BUILD_ROOT"
+
+make install cfg-prefix=$RPM_BUILD_ROOT/%{_sysconfdir} \
+             cfg-dir=ser/ \
+	     bin-prefix=$RPM_BUILD_ROOT/%{_sbindir} \
+	     bin-dir="" \
+	     modules-prefix=$RPM_BUILD_ROOT/%{_libdir}/ser \
+	     modules-dir=modules/ \
+	     doc-prefix=$RPM_BUILD_ROOT/%{_docdir} \
+	     doc-dir=ser/ \
+	     man-prefix=$RPM_BUILD_ROOT/%{_mandir} \
+	     man-dir=""
+
+mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/init.d
+install -m755 $RPM_SOURCE_DIR/ser.init.SuSE \
+              $RPM_BUILD_ROOT/%{_sysconfdir}/init.d/ser
+
+mkdir -p $RPM_BUILD_ROOT/%{_bindir}
+
+install -m755 utils/gen_ha1/gen_ha1 \
+	      $RPM_BUILD_ROOT/%{_bindir}/gen_ha1
+
+install -m755 scripts/harv_ser.sh \
+	      $RPM_BUILD_ROOT/%{_sbindir}/harv_ser.sh
+
+install -m755 scripts/sc \
+	      $RPM_BUILD_ROOT/%{_sbindir}/serctl
+
+install -m755 scripts/ser_mysql.sh \
+	      $RPM_BUILD_ROOT/%{_sbindir}/ser_mysql.sh
+
+
+%clean
+rm -rf "$RPM_BUILD_ROOT"
+
+%post
+sbin/insserv etc/init.d/ser
+
+%preun
+if [ $1 = 0 ]; then
+    etc/init.d/ser stop > /dev/null 2>&1
+fi
+
+%postun
+sbin/insserv etc/init.d/
+
+%files
+%defattr(-,root,root)
+%doc README
+
+%dir %{_sysconfdir}/ser
+%config(noreplace) %{_sysconfdir}/ser/*
+%config %{_sysconfdir}/init.d/*
+
+%dir %{_libdir}/ser
+%dir %{_libdir}/ser/modules
+%{_libdir}/ser/modules/*
+
+%{_sbindir}/*
+%{_bindir}/*
+
+%{_mandir}/man5/*
+%{_mandir}/man8/*
+
+
+%changelog
+* Fri Sep 06 2002 Nils Ohlmeier <[email protected]>
+- Adaptation to SuSE
+
+* Mon Sep 02 2002 Jan Janak <[email protected]>
+- gen_ha1 utility added, scripts added.
+
+* Tue Aug 28 2002 Jan Janak <[email protected]>
+- Finished the first version of the spec file.
+
+* Sun Aug 12 2002 Jan Janak <[email protected]>
+- First version of the spec file.