aboutsummaryrefslogtreecommitdiff
path: root/net/mpd-l2tp-ipv6pd-client
diff options
context:
space:
mode:
authorHajimu UMEMOTO <ume@FreeBSD.org>2008-11-08 16:47:57 +0000
committerHajimu UMEMOTO <ume@FreeBSD.org>2008-11-08 16:47:57 +0000
commitf9ab7db43237f04b38a7902e3b619f5743b98681 (patch)
tree0ef2835c5cf97cc6ae753c1fa19dff1005893d45 /net/mpd-l2tp-ipv6pd-client
parent4ec0d07fc3eb4b0be69cb82fc9c15f32d3375e19 (diff)
Notes
Diffstat (limited to 'net/mpd-l2tp-ipv6pd-client')
-rw-r--r--net/mpd-l2tp-ipv6pd-client/Makefile48
-rw-r--r--net/mpd-l2tp-ipv6pd-client/pkg-plist2
-rw-r--r--net/mpd-l2tp-ipv6pd-client/scripts/dhcp6c_pd.sh.in10
-rw-r--r--net/mpd-l2tp-ipv6pd-client/scripts/mpd.in8
-rw-r--r--net/mpd-l2tp-ipv6pd-client/scripts/setting44
5 files changed, 67 insertions, 45 deletions
diff --git a/net/mpd-l2tp-ipv6pd-client/Makefile b/net/mpd-l2tp-ipv6pd-client/Makefile
index a78b8cd57bc1..0b7bf2006a20 100644
--- a/net/mpd-l2tp-ipv6pd-client/Makefile
+++ b/net/mpd-l2tp-ipv6pd-client/Makefile
@@ -6,7 +6,7 @@
#
PORTNAME= mpd-l2tp-ipv6pd-client
-PORTVERSION= 20080101
+PORTVERSION= 20081105
#PORTREVISION= 0
CATEGORIES= net ipv6
MASTER_SITES= # none
@@ -15,16 +15,33 @@ DISTFILES= # none
MAINTAINER= ume@FreeBSD.org
COMMENT= A sample implementaiton set of "L2TP-IPv6PD" client using mpd
-BUILD_DEPENDS= ${MPD_NAME}:${PORTSDIR}/net/${MPD_NAME}
-RUN_DEPENDS= dhcp6ctl:${PORTSDIR}/net/dhcp6 \
- ${MPD_NAME}:${PORTSDIR}/net/${MPD_NAME}
-
MANUAL_PACKAGE_BUILD=yes
NO_PACKAGE= yes
USE_RC_SUBR= yes
+OPTIONS= MPD4 "Use mpd4" on \
+ MPD5 "Use mpd5" off
+
+.include <bsd.port.pre.mk>
+
+.if defined(WITH_MPD5) && defined(WITH_MPD4)
+BROKEN= Multiple mpd versions selected. Run 'make config' again!
+.endif
+
+.if defined(WITH_MPD4)
+MPD_NAME= mpd4
+MPD4= ""
+.else
+MPD_NAME= mpd5
+MPD4= "@comment "
+.endif
+
+BUILD_DEPENDS= ${MPD_NAME}:${PORTSDIR}/net/${MPD_NAME}
+RUN_DEPENDS= dhcp6ctl:${PORTSDIR}/net/dhcp6 \
+ ${MPD_NAME}:${PORTSDIR}/net/${MPD_NAME}
+
CONF_DIR?= etc/${MPD_NAME}
-CONF_FILES= dhcp6c.conf.in mpd.conf mpd.links rtadvd.conf
+CONF_FILES= dhcp6c.conf.in rtadvd.conf
SCRIPT_FILES= dhcp6c_pd.sh linkdown.sh linkup.sh
SECRET_FILES= mpd.secret
@@ -43,19 +60,12 @@ SCRIPTS_ENV= WRKDIR="${WRKDIR}" \
SED="${SED}" \
WHICH="${WHICH}"
-PLIST_SUB= CONF_DIR="${CONF_DIR}" \
- MPD_NAME="${MPD_NAME}"
+PLIST_SUB= CONF_DIR=${CONF_DIR} \
+ MPD_NAME=${MPD_NAME} \
+ MPD4=${MPD4}
PKGMESSAGE= ${WRKDIR}/pkg-message
-.if defined(WITH_MPD5)
-MPD_NAME= mpd5
-.else
-MPD_NAME= mpd4
-.endif
-
-.include <bsd.port.pre.mk>
-
.if ${OSVERSION} < 602106 || (${OSVERSION} >= 700000 && ${OSVERSION} < 700031)
IGNORE= does not work with old ng_ksocket
.endif
@@ -76,6 +86,12 @@ do-install:
exit 1; \
fi
@${MKDIR} ${PREFIX}/${CONF_DIR}
+.if defined(WITH_MPD4)
+ @${INSTALL_DATA} ${WRKDIR}/mpd.conf ${PREFIX}/${CONF_DIR}/mpd.conf
+ @${INSTALL_DATA} ${WRKDIR}/mpd.links ${PREFIX}/${CONF_DIR}/mpd.links
+.else
+ @${INSTALL_DATA} ${WRKDIR}/mpd5.conf ${PREFIX}/${CONF_DIR}/mpd.conf
+.endif
.for f in ${CONF_FILES}
@${INSTALL_DATA} ${WRKDIR}/${f} ${PREFIX}/${CONF_DIR}/${f}
.endfor
diff --git a/net/mpd-l2tp-ipv6pd-client/pkg-plist b/net/mpd-l2tp-ipv6pd-client/pkg-plist
index 2ed5f606ecf3..e642226d1e6f 100644
--- a/net/mpd-l2tp-ipv6pd-client/pkg-plist
+++ b/net/mpd-l2tp-ipv6pd-client/pkg-plist
@@ -3,7 +3,7 @@
%%CONF_DIR%%/linkdown.sh
%%CONF_DIR%%/linkup.sh
%%CONF_DIR%%/mpd.conf
-%%CONF_DIR%%/mpd.links
+%%MPD4%%%%CONF_DIR%%/mpd.links
%%CONF_DIR%%/mpd.secret
%%CONF_DIR%%/%%MPD_NAME%%
%%CONF_DIR%%/rtadvd.conf
diff --git a/net/mpd-l2tp-ipv6pd-client/scripts/dhcp6c_pd.sh.in b/net/mpd-l2tp-ipv6pd-client/scripts/dhcp6c_pd.sh.in
index 6867337c6fcc..fb7b1c4f22b5 100644
--- a/net/mpd-l2tp-ipv6pd-client/scripts/dhcp6c_pd.sh.in
+++ b/net/mpd-l2tp-ipv6pd-client/scripts/dhcp6c_pd.sh.in
@@ -77,7 +77,7 @@ dhcp6c_pd_prestart()
# create dhcp6c.conf
${SED} -e "s/__INTERFACE__/${dhcp6c_pd_interface}/" \
-e "s/__PD_INTERFACE__/${dhcp6c_pd_rtadvd_interface}/" \
- < ${dhcp6c_pd_conf}.in > ${dhcp6c_pd_conf}.${dhcp6c_pd_interface}
+ < ${dhcp6c_pd_conf_in} > ${dhcp6c_pd_conf}.${dhcp6c_pd_interface}
# create dhcp6cctlkey
#if [ ! -f ${prefix}/etc/dhcp6cctlkey ]; then
@@ -115,16 +115,16 @@ dhcp6c_pd_stop()
}
load_rc_config ${name}
-dhcp6c_pd_conf=${dhcp6c_pd_conf:-"${prefix}/%%CONF_DIR%%/dhcp6c.conf"}
+dhcp6c_pd_conf_in=${dhcp6c_pd_conf_in:-"${prefix}/%%CONF_DIR%%/dhcp6c.conf.in"}
+dhcp6c_pd_conf=${dhcp6c_pd_conf:-"/var/run/dhcp6c.conf"}
dhcp6c_pd_interface=${2:-${dhcp6c_pd_interface}}
dhcp6c_pd_localaddr=${3:-${dhcp6c_pd_localaddr}}
dhcp6c_pd_rtadvd_enable=${dhcp6c_pd_rtadvd_enable:-"NO"}
dhcp6c_pd_rtadvd_interface=${dhcp6c_pd_rtadvd_interface:-"%%PD_INTERFACE%%"}
dhcp6c_pd_rtadvd_conf=${dhcp6c_pd_rtadvd_conf:-"${prefix}/%%CONF_DIR%%/rtadvd.conf"}
-required_files="${dhcp6c_pd_conf}.in"
+required_files="${dhcp6c_pd_conf_in}"
pidfile=/var/run/dhcp6c-${dhcp6c_pd_interface}.pid
-dhcp6c_pd_flags="-p ${pidfile} ${dhcp6c_pd_flags}"
-command_args="-c ${dhcp6c_pd_conf}.${dhcp6c_pd_interface} ${dhcp6c_pd_interface}"
+command_args="-p ${pidfile} -c ${dhcp6c_pd_conf}.${dhcp6c_pd_interface} ${dhcp6c_pd_interface}"
if [ -n "${dhcp6c_pd_localaddr}" ]; then
command_args="-A ${dhcp6c_pd_localaddr} ${command_args}"
fi
diff --git a/net/mpd-l2tp-ipv6pd-client/scripts/mpd.in b/net/mpd-l2tp-ipv6pd-client/scripts/mpd.in
index ddf3d81eb6a7..438b0e1b5d33 100644
--- a/net/mpd-l2tp-ipv6pd-client/scripts/mpd.in
+++ b/net/mpd-l2tp-ipv6pd-client/scripts/mpd.in
@@ -1,5 +1,5 @@
mpd_confdir="%%PREFIX%%/%%CONF_DIR%%"
-mpd_interfaces="%%INTERFACE%%"
+mpd_rundir="/var/run"
mpd_enable="YES"
mpd_flags="-b -d ${mpd_confdir}"
@@ -8,7 +8,11 @@ stop_precmd="mpd_prestop"
mpd_prestop()
{
- for iface in ${mpd_interfaces}; do
+ local ifaces
+
+ ifaces=$(find ${mpd_rundir} -name dhcp6c.conf.\* -print | \
+ sed -e "s|${mpd_rundir}/dhcp6c\.conf\.||")
+ for iface in ${ifaces}; do
${mpd_confdir}/dhcp6c_pd.sh stop ${iface}
done
sleep 2
diff --git a/net/mpd-l2tp-ipv6pd-client/scripts/setting b/net/mpd-l2tp-ipv6pd-client/scripts/setting
index 716081745561..7b825e1f0abe 100644
--- a/net/mpd-l2tp-ipv6pd-client/scripts/setting
+++ b/net/mpd-l2tp-ipv6pd-client/scripts/setting
@@ -63,27 +63,29 @@ case $retval in
esac
# Set PPP Interface
-tempfile=`${MKTEMP} -t ipv6pd`
-${DIALOG} --title "L2TP-IPv6PD Setup Helper" \
- --inputbox "Please Input PPP Interface (default: ng0):" -1 -1 \
- 2> ${tempfile}
-case $retval in
-0)
- interface=`${CAT} ${tempfile}`
- if [ -z "${interface}" ]; then
- interface="ng0"
- fi
- ${RM} ${tempfile}
- ;;
-1)
- ${RM} ${tempfile}
- exit
- ;;
-255)
- ${RM} ${tempfile}
- exit
- ;;
-esac
+if [ "${MPD_NAME}" = "mpd4" ]; then
+ tempfile=`${MKTEMP} -t ipv6pd`
+ ${DIALOG} --title "L2TP-IPv6PD Setup Helper" \
+ --inputbox "Please Input PPP Interface (default: ng0):" \
+ -1 -1 2> ${tempfile}
+ case $retval in
+ 0)
+ interface=`${CAT} ${tempfile}`
+ if [ -z "${interface}" ]; then
+ interface="ng0"
+ fi
+ ${RM} ${tempfile}
+ ;;
+ 1)
+ ${RM} ${tempfile}
+ exit
+ ;;
+ 255)
+ ${RM} ${tempfile}
+ exit
+ ;;
+ esac
+fi
# Set Prefix Delegation Interface
tempfile=`${MKTEMP} -t ipv6pd`