mirror of
https://github.com/pfsense/pfsense.git
synced 2025-10-26 11:38:35 +00:00
51 lines
1.6 KiB
Bash
Executable File
51 lines
1.6 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
FMBASEURL=$1
|
|
FMFILENAME=$2
|
|
|
|
# wait 5 seconds before beginning
|
|
sleep 5
|
|
|
|
logger -p daemon.info -i -t AutoUpgrade "Auto Upgrade started"
|
|
|
|
HTTP_AUTH=""
|
|
|
|
# if username and password is passed, let fetch utilize.
|
|
if [ $# -gt 3 ]; then
|
|
HTTP_AUTH="basic:*:$3:$4"
|
|
fi
|
|
|
|
echo "Downloading ${FMFILENAME} from ${FMBASEURL} ..." | logger -p daemon.info -i -t AutoUpgrade
|
|
/usr/bin/fetch -o /tmp/latest.tgz ${FMBASEURL}/${FMFILENAME} | logger -p daemon.info -i -t AutoUpgrade
|
|
echo "Downloading ${FMFILENAME}.md5 from ${FMBASEURL} ..." | logger -p daemon.info -i -t AutoUpgrade
|
|
/usr/bin/fetch -o /tmp/latest.tgz.md5 ${FMBASEURL}/${FMFILENAME}.md5 | logger -p daemon.info -i -t AutoUpgrade
|
|
|
|
PMD=`/bin/cat /tmp/latest.tgz.md5 | cut -d" " -f4 `;
|
|
MD=`/sbin/md5 /tmp/latest.tgz | cut -d" " -f4`;
|
|
|
|
echo " Package MD5: ${PMD}" | logger -p daemon.info -i -t AutoUpgrade
|
|
echo "Downloaded MD5: ${MD}" | logger -p daemon.info -i -t AutoUpgrade
|
|
|
|
if [ "$PMD" = "" ]; then
|
|
echo "Package MD5 is null md5. Require proxy auth?" | logger -p daemon.info -i -t AutoUpgrade
|
|
exit 1
|
|
fi
|
|
|
|
if [ "$MD" = "" ]; then
|
|
echo "Downloaded MD5 is null md5. Require proxy auth?" | logger -p daemon.info -i -t AutoUpgrade
|
|
exit 1
|
|
fi
|
|
|
|
if [ "$PMD" = "$MD" ]; then
|
|
echo "MD5's match." | logger -p daemon.info -i -t AutoUpgrade
|
|
if [ -r "/tmp/custom.tgz" ]; then
|
|
/etc/rc.firmware pfSenseupgrade /tmp/latest.tgz /tmp/custom.tgz
|
|
else
|
|
/etc/rc.firmware pfSenseupgrade /tmp/latest.tgz
|
|
fi
|
|
exit 0
|
|
fi
|
|
|
|
echo "MD5's do not match. Upgrade aborted." | logger -p daemon.info -i -t AutoUpgrade
|
|
exit 1
|