#!/bin/sh

DATE=`${WHICH} date`

# user id
tempfile=`${MKTEMP} -t ipv6pd`
${DIALOG} --title "L2TP-IPv6PD Setup Helper" --clear \
	  --inputbox "Please Input User ID:" -1 -1 2> ${tempfile}
retval=$?
case $retval in
0)
	ppp_id=`${CAT} ${tempfile}`
	${RM} ${tempfile}
	;;
1)
	${RM} ${tempfile}
	exit
	;;
255)
	${RM} ${tempfile}
	exit
	;;
esac

# passwd
tempfile=`${MKTEMP} -t ipv6pd`
${DIALOG} --title "L2TP-IPv6PD Setup Helper" \
	  --inputbox "Please Input Passwd:" -1 -1 \
	2> ${tempfile}
case $retval in
0)
	ppp_passwd=`${CAT} ${tempfile}`
	${RM} ${tempfile}
	;;
1)
	${RM} ${tempfile}
	exit
	;;
255)
	${RM} ${tempfile}
	exit
	;;
esac

# fixed server
tempfile=`${MKTEMP} -t ipv6pd`
${DIALOG} --title "L2TP-IPv6PD Setup Helper" \
	--inputbox "Please Input L2TP-IPv6PD Server\n(Fixed Prefix):" \
	-1 -1 2> ${tempfile}
case $retval in
0)
	fixed_server=`${CAT} ${tempfile}`
	${RM} ${tempfile}
	;;
1)
	${RM} ${tempfile}
	exit
	;;
255)
	${RM} ${tempfile}
	exit
	;;
esac

# Set PPP Interface
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`
${DIALOG} --title "L2TP-IPv6PD Setup Helper" \
	  --inputbox "Please Input Prefix Delegation Interface:" -1 -1 \
	2> ${tempfile}
case $retval in
0)
	pd_interface=`${CAT} ${tempfile}`
	${RM} ${tempfile}
	;;
1)
	${RM} ${tempfile}
	exit
	;;
255)
	${RM} ${tempfile}
	exit
	;;
esac

for infile in ${SCRIPTDIR}/*.in; do
	outfile=${WRKDIR}/`basename ${infile} .in`
	${SED} -e "s|%%PPP_ID%%|${ppp_id}|g" \
	       -e "s|%%PPP_PASSWD%%|${ppp_passwd}|g" \
	       -e "s|%%FIXED_SERVER%%|${fixed_server}|g" \
	       -e "s|%%INTERFACE%%|${interface}|g" \
	       -e "s|%%PD_INTERFACE%%|${pd_interface}|g" \
	       -e "s|%%PREFIX%%|${PREFIX}|g" \
	       -e "s|%%CONF_DIR%%|${CONF_DIR}|g" \
	       -e "s|%%MD5%%|${MD5}|g" \
	       -e "s|%%SED%%|${SED}|g" \
	       -e "s|%%DATE%%|${DATE}|g" \
		< ${infile} > ${outfile}
done

outfile="${WRKDIR}/pkg-message"
cat <<EOF > ${outfile}



Type following commands to complete setup:

  # mkdir /etc/rc.conf.d
  # cp ${PREFIX}/${CONF_DIR}/${MPD_NAME} /etc/rc.conf.d/${MPD_NAME}

If you are not using 6.3-RELEASE nor later, apply following patch and
rebuild your kernel:

  http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/netgraph/ng_ksocket.c.diff?r1=1.59&r2=1.60




EOF
