Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 47653 - Start up script for super-freeswan version 1.99.7.3
Summary: Start up script for super-freeswan version 1.99.7.3
Status: RESOLVED WONTFIX
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Jared H. Hudson (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-04-12 17:42 UTC by Sean Higgins
Modified: 2004-07-09 07:25 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Sean Higgins 2004-04-12 17:42:39 UTC
The startup script for super-freeswan 1.99.7.3 is not a "Gentoo-like" startup script.  I have modified the script to make it work like a Gentoo startup script.  I have tried to make as little modifications as possible to the original script.

Here is the script:

#!/sbin/runscript
#
# ipsec - Startup script for ipsec
#
# Modified by:  Sean C. Higgins
#
# Changes made to make this a Gentoo startup script
#
# IPsec startup and shutdown script
# Copyright (C) 1998, 1999, 2001  Henry Spencer.
#
# This program is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the
# Free Software Foundation; either version 2 of the License, or (at your
# option) any later version.  See <http://www.fsf.org/copyleft/gpl.txt>.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
# or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
# for more details.
#
# RCSID $Id: setup,v 1.2 2003/02/21 23:35:07 ken Exp $
#
# ipsec         init.d script for starting and stopping
#               the IPsec security subsystem (KLIPS and Pluto).
#
# This script becomes /etc/rc.d/init.d/ipsec (or possibly /etc/init.d/ipsec)
# and is also accessible as "ipsec setup" (the preferred route for human
# invocation).
#
# The startup and shutdown times are a difficult compromise (in particular,
# it is almost impossible to reconcile them with the insanely early/late
# times of NFS filesystem startup/shutdown).  Startup is after startup of
# syslog and pcmcia support; shutdown is just before shutdown of syslog.
#
# chkconfig: 2345 47 76
# description: IPsec provides encrypted and authenticated communications; \
# KLIPS is the kernel half of it, Pluto is the user-level management daemon.

depend() {
        need logger net
        after vmware
}

ipsec_script_setup() {
        me='ipsec setup'                # for messages

        if test " $IPSEC_DIR" = " "     # if we were not called by the ipsec com
mand
        then
                # we must establish a suitable PATH ourselves
                PATH=/usr/local/sbin:/sbin:/usr/sbin:/usr/local/bin:/bin:/usr/bi
n
                export PATH
        fi

        # Check that the ipsec command is available.
        found=
        for dir in `echo $PATH | tr ':' ' '`
        do
                if test -f $dir/ipsec -a -x $dir/ipsec
                then
                        found=yes
                        break                   # NOTE BREAK OUT
                fi
        done
        if ! test "$found"
        then
                echo "cannot find ipsec command -- \`$1' aborted" |
                        logger -s -p daemon.error -t ipsec_setup
                exit 1
        fi

# Pick up IPsec configuration (until we have done this, successfully, we
# do not know where errors should go, hence the explicit "daemon.error"s.)
# Note the "--export", which exports the variables created.
        eval `ipsec _confread --varprefix IPSEC --export --type config setup`
        if test " $IPSEC_confreadstatus" != " "
        then
                echo "$IPSEC_confreadstatus -- \`$1' aborted" |
                        logger -s -p daemon.error -t ipsec_setup
                exit 1
        fi
        IPSECsyslog=${IPSECsyslog-daemon.error}
        export IPSECsyslog

# misc setup
        umask 022
} # End ipsec_script_setup


# do it
#case "$1" in
#  start|--start|stop|--stop|_autostop|_autostart)
start_stop() {
        ipsec_script_setup
        if test " `id -u`" != " 0"
        then
                echo "permission denied (must be superuser)" |
                        logger -s -p $IPSECsyslog -t ipsec_setup 2>&1
                exit 1
        fi
        tmp=/var/run/ipsec_setup.st
        (
                ipsec _realsetup $1
                echo "$?" >$tmp
        ) 2>&1 | logger -s -p $IPSECsyslog -t ipsec_setup 2>&1
        st=`cat $tmp`
        rm -f $tmp
        eend $st "Error with service"
#       exit $st
#       ;;
} # End start_stop

start() {
        ebegin "Starting ipsec"
        start_stop start
}

stop() {
        ebegin "Stopping ipsec"
        start_stop stop
}

#  restart|--restart)
#       $0 stop
#       $0 start
#       ;;

#  _autorestart)                        # for internal use only
#       $0 _autostop
#       $0 _autostart
#       ;;

#  status|--status)
status() {
        ipsec_script_setup
        ipsec _realsetup $1
#       exit
#       ;;
} # End status

#  --version)
#       echo "$me $IPSEC_VERSION"
#       exit 0
#       ;;

#  --help)
#       echo "Usage: $me {--start|--stop|--restart|--status}"
#       exit 0
#       ;;

#  *)
#       echo "Usage: $me {--start|--stop|--restart|--status}" >&2
#       exit 2
#esac

#exit 0
Comment 1 Jay Pfeifer (RETIRED) gentoo-dev 2004-07-09 07:25:51 UTC
superfreeswan is gone from out tree. use openswan or strongswan.

Closing.