From c56cf72fdec2b657a28d8ec4d672127b3dbcfb84 Mon Sep 17 00:00:00 2001 From: wittinobi Date: Sun, 20 Apr 2014 14:11:41 +0200 Subject: [PATCH] add no-ip update script, enable crond in busybox, enable ssl in curl --- archive-patches/busybox-1.22.1-hd1.config | 6 +-- make/libraries.mk | 2 +- skel-root/bin/no-ip.sh | 65 +++++++++++++++++++++++ skel-root/etc/cron/crontabs/cronjobs | 1 + skel-root/etc/init.d/rcS.local | 10 ++++ skel-root/mnt/mnt0/.gitignore | 0 skel-root/mnt/mnt1/.gitignore | 0 skel-root/mnt/mnt2/.gitignore | 0 skel-root/mnt/mnt3/.gitignore | 0 9 files changed, 80 insertions(+), 4 deletions(-) create mode 100755 skel-root/bin/no-ip.sh create mode 100755 skel-root/etc/cron/crontabs/cronjobs create mode 100644 skel-root/mnt/mnt0/.gitignore create mode 100644 skel-root/mnt/mnt1/.gitignore create mode 100644 skel-root/mnt/mnt2/.gitignore create mode 100644 skel-root/mnt/mnt3/.gitignore diff --git a/archive-patches/busybox-1.22.1-hd1.config b/archive-patches/busybox-1.22.1-hd1.config index 7592a7d..de8d3e9 100644 --- a/archive-patches/busybox-1.22.1-hd1.config +++ b/archive-patches/busybox-1.22.1-hd1.config @@ -675,11 +675,11 @@ CONFIG_FEATURE_BEEP_LENGTH_MS=0 # CONFIG_FEATURE_CHAT_VAR_ABORT_LEN is not set # CONFIG_FEATURE_CHAT_CLR_ABORT is not set # CONFIG_CHRT is not set -# CONFIG_CROND is not set +CONFIG_CROND=y # CONFIG_FEATURE_CROND_D is not set # CONFIG_FEATURE_CROND_CALL_SENDMAIL is not set -CONFIG_FEATURE_CROND_DIR="" -# CONFIG_CRONTAB is not set +CONFIG_FEATURE_CROND_DIR="/etc/cron" +CONFIG_CRONTAB=y # CONFIG_DC is not set # CONFIG_FEATURE_DC_LIBM is not set # CONFIG_DEVFSD is not set diff --git a/make/libraries.mk b/make/libraries.mk index fe90f81..48f74b2 100755 --- a/make/libraries.mk +++ b/make/libraries.mk @@ -126,7 +126,7 @@ $(D)/libcurl: $(ARCHIVE)/curl-7.35.0.tar.bz2 | $(TARGETPREFIX) pushd $(BUILD_TMP)/curl-7.35.0 && \ $(CONFIGURE) --prefix= --build=$(BUILD) --host=$(TARGET) \ --disable-manual --disable-file --disable-rtsp --disable-dict \ - --disable-imap --disable-pop3 --disable-smtp --without-ssl \ + --disable-imap --disable-pop3 --disable-smtp --with-ssl \ --with-random --mandir=/.remove && \ $(MAKE) all && \ mkdir -p $(HOSTPREFIX)/bin && \ diff --git a/skel-root/bin/no-ip.sh b/skel-root/bin/no-ip.sh new file mode 100755 index 0000000..1912864 --- /dev/null +++ b/skel-root/bin/no-ip.sh @@ -0,0 +1,65 @@ +#!/bin/sh + +USERAGENT="Simple No-IP Update Script" +USERNAME=username%40web.de +PASSWORD=password +HOST=yourhost.no-ip.org +LOGFILE=/tmp/no-ip.log +SAVEDIP=/tmp/no-ip.savedip +TIMENOW=/tmp/no-ip.timenow +TIMESTART=/tmp/no-ip.timestart +TIMER=/tmp/no-ip.timer +FORCEDUPDATE=25 +FAKEIP=1.2.3.4 +ACTUALIP=$(curl -s -k "https://www.wittinobi.de/meine-ip.php") + +echo "$(date +"%d")" > $TIMENOW + +if [ ! -e $SAVEDIP ]; then + touch $SAVEDIP +fi + +if [ ! -e $TIMESTART ]; then + echo "$(date +"%d")" > $TIMESTART +fi + +if [ ! -e $TIMER ]; then + echo "0" > $TIMER +fi + +if [ "$(cat $TIMESTART)" != "$(cat $TIMENOW)" ]; then + echo "$(expr $(cat $TIMER) + 1)" > $TIMER + echo "$(date +"%d")" > $TIMESTART +fi + +if [ "$(cat $TIMER)" == "$FORCEDUPDATE" ]; then + echo "[$(date +"%Y-%m-%d %H:%M:%S")] No IP change 25 days !!!" >> $LOGFILE + echo "[$(date +"%Y-%m-%d %H:%M:%S")] Send FAKEIP" >> $LOGFILE + IPSTATUS=$(curl -s -k "https://$USERNAME:$PASSWORD@dynupdate.no-ip.com/nic/update?hostname=$HOST&myip=$FAKEIP") + echo "[$(date +"%Y-%m-%d %H:%M:%S")] $IPSTATUS" >> $LOGFILE + echo "[$(date +"%Y-%m-%d %H:%M:%S")] Send NEWIP" >> $LOGFILE + IPSTATUS=$(curl -s -k "https://$USERNAME:$PASSWORD@dynupdate.no-ip.com/nic/update?hostname=$HOST&myip=$ACTUALIP") + echo "[$(date +"%Y-%m-%d %H:%M:%S")] $IPSTATUS" >> $LOGFILE + echo $ACTUALIP > $SAVEDIP + echo "0" > $TIMER + echo "$(date +"%d")" > $TIMESTART + echo "--------------------------------------------------------" >> $LOGFILE + echo "" >> $LOGFILE +else + if [ "$ACTUALIP" != "$(cat $SAVEDIP)" ]; then + echo "[$(date +"%Y-%m-%d %H:%M:%S")] IP change !!!" >> $LOGFILE + echo "[$(date +"%Y-%m-%d %H:%M:%S")] Send NEWIP" >> $LOGFILE + IPSTATUS=$(curl -s -k "https://$USERNAME:$PASSWORD@dynupdate.no-ip.com/nic/update?hostname=$HOST&myip=$ACTUALIP") + echo "[$(date +"%Y-%m-%d %H:%M:%S")] $IPSTATUS" >> $LOGFILE + echo $ACTUALIP > $SAVEDIP + echo "--------------------------------------------------------" >> $LOGFILE + echo "" >> $LOGFILE + else + echo "[$(date +"%Y-%m-%d %H:%M:%S")] No IP change !!!" >> $LOGFILE + echo $ACTUALIP > $SAVEDIP + echo "--------------------------------------------------------" >> $LOGFILE + echo "" >> $LOGFILE + fi +fi + +exit 0 diff --git a/skel-root/etc/cron/crontabs/cronjobs b/skel-root/etc/cron/crontabs/cronjobs new file mode 100755 index 0000000..1bab7e5 --- /dev/null +++ b/skel-root/etc/cron/crontabs/cronjobs @@ -0,0 +1 @@ +*/5 * * * * /bin/no-ip.sh diff --git a/skel-root/etc/init.d/rcS.local b/skel-root/etc/init.d/rcS.local index 4c165cf..cad2188 100755 --- a/skel-root/etc/init.d/rcS.local +++ b/skel-root/etc/init.d/rcS.local @@ -1,6 +1,11 @@ #!/bin/sh export PATH=/sbin:/bin:/usr/bin:/usr/sbin +#crond starten +if [ -e /var/etc/.crond ]; then + /bin/busybox crond & +fi + #tuxcal starten if [ -e /bin/tuxcald ]; then /bin/tuxcald & @@ -11,6 +16,11 @@ if [ -e /bin/tuxmaild ]; then /bin/tuxmaild & fi +#no-ip starten +if [ -e /var/etc/.no-ip ]; then + /bin/no-ip.sh & +fi + #inadyn starten if [ -e /var/etc/.inadyn ]; then /bin/inadyn & diff --git a/skel-root/mnt/mnt0/.gitignore b/skel-root/mnt/mnt0/.gitignore new file mode 100644 index 0000000..e69de29 diff --git a/skel-root/mnt/mnt1/.gitignore b/skel-root/mnt/mnt1/.gitignore new file mode 100644 index 0000000..e69de29 diff --git a/skel-root/mnt/mnt2/.gitignore b/skel-root/mnt/mnt2/.gitignore new file mode 100644 index 0000000..e69de29 diff --git a/skel-root/mnt/mnt3/.gitignore b/skel-root/mnt/mnt3/.gitignore new file mode 100644 index 0000000..e69de29 -- 2.39.5