OpenPKG CVS Repository
  http://cvs.openpkg.org/
  ____________________________________________________________________________

  Server: cvs.openpkg.org                  Name:   Ralf S. Engelschall
  Root:   /v/openpkg/cvs                   Email:  [EMAIL PROTECTED]
  Module: openpkg-src                      Date:   09-Oct-2005 21:27:05
  Branch: HEAD                             Handle: 2005100920270500

  Added files:
    openpkg-src/openser     fsl.openser openser.cfg openser.patch
                            openser.schema-dbtext.txt openser.spec rc.openser

  Log:
    new package: openser 0.9.5 (Open SIP Express Router)

  Summary:
    Revision    Changes     Path
    1.1         +16 -0      openpkg-src/openser/fsl.openser
    1.1         +58 -0      openpkg-src/openser/openser.cfg
    1.1         +12 -0      openpkg-src/openser/openser.patch
    1.1         +8  -0      openpkg-src/openser/openser.schema-dbtext.txt
    1.1         +205 -0     openpkg-src/openser/openser.spec
    1.1         +57 -0      openpkg-src/openser/rc.openser
  ____________________________________________________________________________

  patch -p0 <<'@@ .'
  Index: openpkg-src/openser/fsl.openser
  ============================================================================
  $ cvs diff -u -r0 -r1.1 fsl.openser
  --- /dev/null 2005-10-09 21:26:46 +0200
  +++ fsl.openser       2005-10-09 21:27:05 +0200
  @@ -0,0 +1,16 @@
  +##
  +##  fsl.openser -- OSSP fsl configuration
  +##
  +
  +ident .*(openser)/.+ q{
  +    prefix(
  +        prefix="%b %d %H:%M:%S %N <%L> $1[%P]: "
  +    )
  +    -> {
  +        debug: file(
  +            path="@l_prefix@/var/openser/openser.log",
  +            perm=0664
  +        )
  +    }
  +};
  +
  @@ .
  patch -p0 <<'@@ .'
  Index: openpkg-src/openser/openser.cfg
  ============================================================================
  $ cvs diff -u -r0 -r1.1 openser.cfg
  --- /dev/null 2005-10-09 21:26:46 +0200
  +++ openser.cfg       2005-10-09 21:27:05 +0200
  @@ -0,0 +1,58 @@
  +##
  +##  openser.cfg -- OpenSER server configuration
  +##
  +
  +#
  +#   GLOBAL CONFIGURATION PARAMETERS
  +#
  +
  +#   process configuration
  +debug=1
  +log_stderror=no
  +fork=yes
  +check_via=no
  +dns=no
  +rev_dns=no
  +children=4
  +user="@l_rusr@"
  +group="@l_rgrp@"
  +fifo="@l_prefix@/var/openser/openser.fifo"
  +workdir="@l_prefix@/var/openser"
  +
  +#   network configuration
  +alias="example.com"
  +listen="127.0.0.1"
  +port=5060
  +
  +#
  +#   EXTENSION MODULE LOADING
  +#
  +
  +loadmodule "@l_prefix@/lib/openser/modules/dbtext.so"
  +loadmodule "@l_prefix@/lib/openser/modules/sl.so"
  +loadmodule "@l_prefix@/lib/openser/modules/tm.so"
  +loadmodule "@l_prefix@/lib/openser/modules/rr.so"
  +loadmodule "@l_prefix@/lib/openser/modules/maxfwd.so"
  +loadmodule "@l_prefix@/lib/openser/modules/usrloc.so"
  +loadmodule "@l_prefix@/lib/openser/modules/registrar.so"
  +loadmodule "@l_prefix@/lib/openser/modules/textops.so"
  +loadmodule "@l_prefix@/lib/openser/modules/auth.so"
  +loadmodule "@l_prefix@/lib/openser/modules/auth_db.so"
  +
  +#
  +#   EXTENSION MODULE CONFIGURATION
  +#
  +
  +#   module usrloc:
  +modparam("usrloc", "db_mode", 2)
  +modparam("usrloc|auth_db", "db_url", "dbtext://@l_prefix@/var/openser/db")
  +
  +#   module auth:
  +modparam("auth_db", "calculate_ha1", 1)
  +modparam("auth_db", "password_column", "password")
  +modparam("auth_db", "user_column", "username")
  +modparam("auth_db", "domain_column", "domain")
  +
  +#   module rr:
  +modparam("rr", "enable_full_lr", 1)
  +
  @@ .
  patch -p0 <<'@@ .'
  Index: openpkg-src/openser/openser.patch
  ============================================================================
  $ cvs diff -u -r0 -r1.1 openser.patch
  --- /dev/null 2005-10-09 21:26:46 +0200
  +++ openser.patch     2005-10-09 21:27:05 +0200
  @@ -0,0 +1,12 @@
  +Index: Makefile.defs
  +--- Makefile.defs.orig       2005-07-01 14:13:43 +0200
  ++++ Makefile.defs    2005-10-09 18:37:26 +0200
  +@@ -982,6 +982,8 @@
  +             found_lock_method=yes
  + endif
  + 
  ++LDFLAGS += -L$(prefix)/lib
  ++LIBS    += -lfsl
  + 
  + 
  + 
  @@ .
  patch -p0 <<'@@ .'
  Index: openpkg-src/openser/openser.schema-dbtext.txt
  ============================================================================
  $ cvs diff -u -r0 -r1.1 openser.schema-dbtext.txt
  --- /dev/null 2005-10-09 21:26:46 +0200
  +++ openser.schema-dbtext.txt 2005-10-09 21:27:05 +0200
  @@ -0,0 +1,8 @@
  +subscriber: username(str) domn(str) password(str) first_name(str) 
last_name(str) phone(str) email_address(str) datetime_created(int) 
datetime_modified(int) confirmation(str) flag(str) sendnotification(str) 
greeting(str) ha1(str) ha1b(str) perms(str) allow_find(str) timezone(str,null) 
rpid(str,null) uuid(str,null)
  +subscriber: admin:default:admin:Initial:Admin:123:[EMAIL 
PROTECTED]:::::::::::::
  +location: username(str) domain(str,null) contact(str,null) expires(int,null) 
q(double,null) callid(str,null) cseq(int,null) last_modified(str) 
replicate(int,null) state(int,null) flags(int) user_agent(str) received(str)
  +aliases: username(str) domain(str,null) contact(str,null) expires(int,null) 
q(double,null) callid(str,null) cseq(int,null) last_modified(str) 
replicate(int,null) state(int,null) flags(int) user_agent(str) received(str)
  +version: table_name(str) table_version(int)
  +version: subscriber:3
  +version: location:6
  +version: aliases:6
  @@ .
  patch -p0 <<'@@ .'
  Index: openpkg-src/openser/openser.spec
  ============================================================================
  $ cvs diff -u -r0 -r1.1 openser.spec
  --- /dev/null 2005-10-09 21:26:46 +0200
  +++ openser.spec      2005-10-09 21:27:05 +0200
  @@ -0,0 +1,205 @@
  +##
  +##  openser.spec -- OpenPKG RPM Package Specification
  +##  Copyright (c) 2000-2005 OpenPKG Foundation e.V. <http://openpkg.net/>
  +##  Copyright (c) 2000-2005 Ralf S. Engelschall <http://engelschall.com/>
  +##
  +##  Permission to use, copy, modify, and distribute this software for
  +##  any purpose with or without fee is hereby granted, provided that
  +##  the above copyright notice and this permission notice appear in all
  +##  copies.
  +##
  +##  THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  +##  WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
  +##  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
  +##  IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
  +##  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  +##  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  +##  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  +##  USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  +##  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  +##  OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  +##  OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  +##  SUCH DAMAGE.
  +##
  +
  +#   package information
  +Name:         openser
  +Summary:      Open SIP Express Router
  +URL:          http://openser.org/
  +Vendor:       FhG FOKUS
  +Packager:     OpenPKG
  +Distribution: OpenPKG
  +Class:        EVAL
  +Group:        Network
  +License:      GPL
  +Version:      0.9.5
  +Release:      20051009
  +
  +#   package options
  +%option       with_fsl  yes
  +
  +#   list of sources
  +Source0:      
http://openser.org/pub/openser/%{version}/src/openser-%{version}_src.tar.gz
  +Source1:      rc.openser
  +Source2:      fsl.openser
  +Source3:      openser.cfg
  +Source4:      openser.schema-dbtext.txt
  +Patch0:       openser.patch
  +
  +#   build information
  +Prefix:       %{l_prefix}
  +BuildRoot:    %{l_buildroot}
  +BuildPreReq:  OpenPKG, openpkg >= 20040130, make, gcc, flex, bison
  +PreReq:       OpenPKG, openpkg >= 20040130
  +%if "%{with_fsl}" == "yes"
  +BuildPreReq:  fsl >= 1.2.0
  +PreReq:       fsl >= 1.2.0
  +%endif
  +AutoReq:      no
  +AutoReqProv:  no
  +
  +%description
  +    OpenSER is a project spawned from FhG FOKUS SIP Express Router
  +    (SER). It provides SIP (RFC3621) registrar, proxy and routing
  +    functionality. A C shell like scripting language provides full
  +    control over the server's behaviour. It's modular architecture
  +    allows only required functionality to be loaded.
  +
  +%track
  +    prog openser = {
  +        version   = %{version}
  +        url       = http://openser.org/pub/openser/
  +        regex     = (\d+\.\d+\.\d+)/
  +        url       = http://openser.org/pub/openser/__NEWVER__/src/
  +        regex     = openser-(__VER__)_src\.tar\.gz
  +    }
  +
  +%prep
  +    %setup -q
  +    %patch -p0
  +
  +%build
  +    #   build dependencies
  +    %{l_make} %{l_mflags} \
  +        CC="%{l_cc}" \
  +        prefix=%{l_prefix} \
  +        dep >/dev/null 2>&1 || true
  +
  +    #   build program
  +    %{l_make} %{l_mflags} \
  +        CC="%{l_cc}" \
  +        prefix=%{l_prefix}
  +
  +    #   build modules
  +    %{l_make} %{l_mflags} \
  +        CC="%{l_cc}" \
  +        prefix=%{l_prefix} \
  +        modules \
  +        skip_modules="mysql jabber"
  +
  +%install
  +    rm -rf $RPM_BUILD_ROOT
  +
  +    #   install program
  +    %{l_make} %{l_mflags} \
  +        basedir=$RPM_BUILD_ROOT \
  +        prefix=%{l_prefix} \
  +        cfg-prefix=$RPM_BUILD_ROOT \
  +        cfg-target=%{l_prefix}/etc/openser/ \
  +        doc-dir=share/openser/doc/ \
  +        man-dir=man/ \
  +        install
  +
  +    #   install modules
  +    %{l_make} %{l_mflags} \
  +        basedir=$RPM_BUILD_ROOT \
  +        prefix=%{l_prefix} \
  +        cfg-prefix=$RPM_BUILD_ROOT \
  +        cfg-target=%{l_prefix}/etc/openser/ \
  +        doc-dir=share/openser/doc/ \
  +        man-dir=man/ \
  +        install-modules \
  +        skip_modules="mysql jabber"
  +
  +    #   strip down installation
  +    strip $RPM_BUILD_ROOT%{l_prefix}/bin/* >/dev/null 2>&1 || true
  +    rm -f $RPM_BUILD_ROOT%{l_prefix}/sbin/openser_mysql.sh
  +
  +    #   post-adjust installation
  +    %{l_shtool} subst \
  +        -e 's;/etc/ser/.openserctlrc;%{l_prefix}/etc/openser/openserctlrc;g' 
\
  +        -e 's;\(PID_FILE\)=.*;\1=%{l_prefix}/var/openser/openser.pid;' \
  +        -e 's;\(SER_FIFO\)=.*;\1=%{l_prefix}/var/openser/openser.fifo;' \
  +        $RPM_BUILD_ROOT%{l_prefix}/sbin/openserctl
  +
  +    #   install default configuration
  +    %{l_shtool} mkdir -f -p -m 755 \
  +        $RPM_BUILD_ROOT%{l_prefix}/etc/openser
  +    %{l_shtool} install -c -m 755 %{l_value -s -a} \
  +        %{SOURCE openser.cfg} \
  +        $RPM_BUILD_ROOT%{l_prefix}/etc/openser/
  +
  +    #   install OSSP fsl configuration
  +    %{l_shtool} mkdir -f -p -m 755 \
  +        $RPM_BUILD_ROOT%{l_prefix}/etc/fsl
  +    %{l_shtool} install -c -m 644 %{l_value -s -a} \
  +        %{SOURCE fsl.openser} \
  +        $RPM_BUILD_ROOT%{l_prefix}/etc/fsl/
  +
  +    #   install run-command script
  +    %{l_shtool} mkdir -f -p -m 755 \
  +        $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d
  +    %{l_shtool} install -c -m 755 %{l_value -s -a} \
  +        %{SOURCE rc.openser} \
  +        $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d/
  +
  +    #   create database directory and install database schema definitions
  +    %{l_shtool} mkdir -f -p -m 755 \
  +        $RPM_BUILD_ROOT%{l_prefix}/var/openser
  +    %{l_shtool} install -c -m 644 \
  +        %{SOURCE openser.schema-dbtext.txt} \
  +        $RPM_BUILD_ROOT%{l_prefix}/share/openser/
  +
  +    #   determine installation files
  +    %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT \
  +        %{l_files_std} \
  +        '%not %dir %{l_prefix}/etc/fsl' \
  +        '%config %{l_prefix}/etc/fsl/*' \
  +        '%config %{l_prefix}/etc/openser/*' \
  +        '%doc %{l_prefix}/share/openser/doc/*' \
  +        '%attr(-,%{l_rusr},%{l_rgrp}) %{l_prefix}/var/openser'
  +
  +%files -f files
  +
  +%clean
  +    rm -rf $RPM_BUILD_ROOT
  +
  +%post
  +    #   on install, setup database
  +    if [ ! -d $RPM_INSTALL_PREFIX/var/openser/db ]; then
  +        mkdir $RPM_INSTALL_PREFIX/var/openser/db
  +        chown %{l_rusr}:%{l_rgrp} $RPM_INSTALL_PREFIX/var/openser/db
  +        chmod 755 $RPM_INSTALL_PREFIX/var/openser/db
  +        schema="$RPM_INSTALL_PREFIX/share/openser/openser.schema-dbtext.txt"
  +        for table in `sed -e 's;\([^:]*\):.*;\1;' <$schema | sort -u`; do
  +            grep "^${table}:" $schema | sed -e "s;^${table}: *;;" \
  +                >$RPM_INSTALL_PREFIX/var/openser/db/$table
  +        done
  +        chown %{l_rusr}:%{l_rgrp} $RPM_INSTALL_PREFIX/var/openser/db/* 
2>/dev/null || true
  +        chmod 644 $RPM_INSTALL_PREFIX/var/openser/db/* 2>/dev/null || true
  +    fi
  +
  +    #   after upgrade, restart service
  +    [ $1 -eq 2 ] || exit 0
  +    eval `%{l_rc} openser status 2>/dev/null`
  +    [ ".$openser_active" = .yes ] && %{l_rc} openser restart
  +    exit 0
  +
  +%preun
  +    #   before erase, stop service and remove log files
  +    [ $1 -eq 0 ] || exit 0
  +    %{l_rc} openser stop 2>/dev/null
  +    rm -rf $RPM_INSTALL_PREFIX/var/openser/db 2>/dev/null || true
  +    rm -f  $RPM_INSTALL_PREFIX/var/openser/*  2>/dev/null || true
  +    exit 0
  +
  @@ .
  patch -p0 <<'@@ .'
  Index: openpkg-src/openser/rc.openser
  ============================================================================
  $ cvs diff -u -r0 -r1.1 rc.openser
  --- /dev/null 2005-10-09 21:26:46 +0200
  +++ rc.openser        2005-10-09 21:27:05 +0200
  @@ -0,0 +1,57 @@
  [EMAIL PROTECTED]@/lib/openpkg/bash @l_prefix@/etc/rc
  +##
  +##  rc.openser -- Run-Commands
  +##
  +
  +%config
  +    openser_enable="$openpkg_rc_def"
  +    openser_flags=""
  +    openser_log_prolog="true"
  +    openser_log_epilog="true"
  +    openser_log_numfiles="10"
  +    openser_log_minsize="1M"
  +    openser_log_complevel="9"
  +
  +%common
  +    openser_pidfile="@l_prefix@/var/openser/openser.pid"
  +
  +%status -u @l_susr@ -o
  +    openser_usable="no"
  +    openser_active="no"
  +    if [ "[EMAIL PROTECTED]@/sbin/openser -c 2>/dev/null | grep 'config file 
ok'`" != . ]; then
  +        openser_usable="yes"
  +    fi
  +    if @l_prefix@/sbin/openserctl ps >/dev/null 2>&1; then
  +        openser_active="yes"
  +    fi
  +    echo "openser_enable=\"$openser_enable\""
  +    echo "openser_usable=\"$openser_usable\""
  +    echo "openser_active=\"$openser_active\""
  +
  +%start -p 100 -u @l_susr@
  +    rcService openser enable yes || exit 0
  +    rcService openser active yes && exit 0
  +    @l_prefix@/sbin/openser \
  +        -P $openser_pidfile \
  +        ${openser_flags}
  +
  +%stop -p 900 -u @l_susr@
  +    rcService openser enable yes || exit 0
  +    rcService openser active no  && exit 0
  +    @l_prefix@/sbin/openserctl stop
  +    sleep 2
  +
  +%restart -p 100 -u @l_susr@
  +    rcService openser enable yes || exit 0
  +    rcService openser active no  && exit 0
  +    rc openser stop start
  +
  +%daily -u @l_susr@
  +    rcService openser enable yes || exit 0
  +    shtool rotate -f \
  +        -n ${openser_log_numfiles} -s ${openser_log_minsize} -d \
  +        -z ${openser_log_complevel} -m 644 -o @l_rusr@ -g @l_rgrp@ \
  +        -P "${openser_log_prolog}" \
  +        -E "${openser_log_epilog}; rc openser reload" \
  +        @l_prefix@/var/openser/openser.log
  +
  @@ .
______________________________________________________________________
The OpenPKG Project                                    www.openpkg.org
CVS Repository Commit List                     openpkg-cvs@openpkg.org

Reply via email to