diff options
Diffstat (limited to 'abs/extra/ddclient')
-rw-r--r-- | abs/extra/ddclient/PKGBUILD | 30 | ||||
-rw-r--r-- | abs/extra/ddclient/ddclient-foreground.patch | 47 | ||||
-rw-r--r-- | abs/extra/ddclient/ddclient.conf.dynamic.dyndns.sample | 162 |
3 files changed, 223 insertions, 16 deletions
diff --git a/abs/extra/ddclient/PKGBUILD b/abs/extra/ddclient/PKGBUILD index 121d2c5..f283cb9 100644 --- a/abs/extra/ddclient/PKGBUILD +++ b/abs/extra/ddclient/PKGBUILD @@ -3,33 +3,31 @@ # Contributor: David Rosenstrauch <darose@darose.net> pkgname=ddclient -pkgver=3.7.3 -pkgrel=2 +pkgver=3.8.0 +pkgrel=1 pkgdesc="Update dynamic DNS entries for accounts on many dynamic DNS services." arch=('i686' 'x86_64') url="http://ddclient.sourceforge.net/" license=('GPL2') depends=('perl' 'perl-io-socket-ssl') -backup=('etc/ddclient/ddclient.conf' 'etc/conf.d/ddclient') -install=ddclient.install -source=(http://downloads.sourceforge.net/sourceforge/ddclient/ddclient-$pkgver.tar.bz2 ddclient.rc ddclient.conf.d) +backup=('etc/ddclient.conf') +source=(http://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.bz2 + ddclient.conf.dynamic.dyndns.sample + ddclient-foreground.patch) build() { - cd ${srcdir}/ddclient-${pkgver} + cd ${srcdir}/$pkgname-${pkgver} + patch < ${srcdir}/ddclient-foreground.patch # core files install -D -m755 ddclient ${pkgdir}/usr/sbin/ddclient - install -D -m755 ${srcdir}/ddclient.rc ${pkgdir}/etc/rc.d/ddclient - install -D -m600 sample-etc_ddclient.conf ${pkgdir}/etc/ddclient/ddclient.conf - install -D -m644 ${srcdir}/ddclient.conf.d ${pkgdir}/etc/conf.d/ddclient + install -D -m600 sample-etc_ddclient.conf ${pkgdir}/etc/ddclient/ddclient.conf.sample + install -D -m600 ${srcdir}/ddclient.conf.dynamic.dyndns.sample ${pkgdir}/etc/ddclient/ install -d ${pkgdir}/var/cache/ddclient # additional instructions, sample configs - install -D -m644 README ${pkgdir}/etc/ddclient/samples/README - install -D -m644 sample-etc_cron.d_ddclient ${pkgdir}/etc/ddclient/samples/sample-etc_cron.d_ddclient - install -D -m644 sample-etc_dhcpc_dhcpcd-eth0.exe ${pkgdir}/etc/ddclient/samples/sample-etc_dhcpc_dhcpcd-eth0.exe - install -D -m644 sample-etc_ppp_ip-up.local ${pkgdir}/etc/ddclient/samples/sample-etc_ppp_ip-up.local + install -D -m644 README ${pkgdir}/etc/ddclient/README } -md5sums=('f6a55bc68cf73ffe7e80d2fa5cd44f85' - '7035bf8132f3517a59167f61ee5e8b90' - 'b8f39c82827776da948b76ef83544d33') +md5sums=('6cac7a5eb1da781bfd4d98cef0b21f8e' + '4194825b9b4a7fcc1c57c2f5a4f6162b' + 'd8ffc95f98f9afcb4a06a1e192220e35') diff --git a/abs/extra/ddclient/ddclient-foreground.patch b/abs/extra/ddclient/ddclient-foreground.patch new file mode 100644 index 0000000..a814ede --- /dev/null +++ b/abs/extra/ddclient/ddclient-foreground.patch @@ -0,0 +1,47 @@ +--- ../ddclient-orig/ddclient 2009-10-19 22:45:15.000000000 +1030 ++++ ddclient 2009-10-19 22:50:11.000000000 +1030 +@@ -307,6 +307,7 @@ + my %variables = ( + 'global-defaults' => { + 'daemon' => setv(T_DELAY, 0, 0, 1, 0, interval('60s')), ++ 'foreground' => setv(T_BOOL, 0, 0, 1, 0, undef), + 'file' => setv(T_FILE, 0, 0, 1, "$etc$program.conf", undef), + 'cache' => setv(T_FILE, 0, 0, 1, "$cachedir$program.cache", undef), + 'pid' => setv(T_FILE, 0, 0, 1, "", undef), +@@ -535,6 +536,7 @@ + "usage: ${program} [options]", + "options are:", + [ "daemon", "=s", "-daemon delay : run as a daemon, specify delay as an interval." ], ++ [ "foreground", "!", "-foreground : do not fork" ], + [ "proxy", "=s", "-proxy host : use 'host' as the HTTP proxy" ], + [ "server", "=s", "-server host : update DNS information on 'host'" ], + [ "protocol", "=s", "-protocol type : update protocol used" ], +@@ -623,7 +625,10 @@ + $SIG{'HUP'} = sub { $caught_hup = 1; }; + $SIG{'TERM'} = sub { $caught_term = 1; }; + $SIG{'KILL'} = sub { $caught_kill = 1; }; +-if (opt('daemon') && !opt('force')) { ++# don't fork() if foreground or force is on ++if (opt('foreground') || opt('force')) { ++ ; ++} elsif (opt('daemon')) { + $SIG{'CHLD'} = 'IGNORE'; + my $pid = fork; + if ($pid < 0) { +@@ -633,12 +638,15 @@ + exit 0; + } + $SIG{'CHLD'} = 'DEFAULT'; +- $opt{'syslog'} = 1; + open(STDOUT, ">/dev/null"); + open(STDERR, ">/dev/null"); + open(STDIN, "</dev/null"); ++} + ++# write out the pid file if we're daemon'ized ++if(opt('daemon')) { + write_pid(); ++ $opt{'syslog'} = 1; + } + + umask 077; diff --git a/abs/extra/ddclient/ddclient.conf.dynamic.dyndns.sample b/abs/extra/ddclient/ddclient.conf.dynamic.dyndns.sample new file mode 100644 index 0000000..a492c8b --- /dev/null +++ b/abs/extra/ddclient/ddclient.conf.dynamic.dyndns.sample @@ -0,0 +1,162 @@ +###################################################################### +## +## $Id: sample-etc_ddclient.conf 102 2008-11-01 11:23:03Z wimpunk $ +## +## Define default global variables with lines like: +## var=value [, var=value]* +## These values will be used for each following host unless overridden +## with a local variable definition. +## +## Define local variables for one or more hosts with: +## var=value [, var=value]* host.and.domain[,host2.and.domain...] +## +## Lines can be continued on the following line by ending the line +## with a \ +## +## +## Warning: not all supported routers or dynamic DNS services +## are mentioned here. +## +###################################################################### +daemon=300 # check every 300 seconds +syslog=yes # log update msgs to syslog +mail=root # mail all msgs to root +mail-failure=root # mail failed update msgs to root +pid=/var/run/ddclient.pid # record PID in file. +ssl=yes # use ssl-support. Works with + # ssl-library +# postscript=script # run script after updating. The + # new IP is added as argument. +# +#use=watchguard-soho, fw=192.168.111.1:80 # via Watchguard's SOHO FW +#use=netopia-r910, fw=192.168.111.1:80 # via Netopia R910 FW +#use=smc-barricade, fw=192.168.123.254:80 # via SMC's Barricade FW +#use=netgear-rt3xx, fw=192.168.0.1:80 # via Netgear's internet FW +#use=linksys, fw=192.168.1.1:80 # via Linksys's internet FW +#use=maxgate-ugate3x00, fw=192.168.0.1:80 # via MaxGate's UGATE-3x00 FW +#use=elsa-lancom-dsl10, fw=10.0.0.254:80 # via ELSA LanCom DSL/10 DSL Router +#use=elsa-lancom-dsl10-ch01, fw=10.0.0.254:80 # via ELSA LanCom DSL/10 DSL Router +#use=elsa-lancom-dsl10-ch02, fw=10.0.0.254:80 # via ELSA LanCom DSL/10 DSL Router +#use=alcatel-stp, fw=10.0.0.138:80 # via Alcatel Speed Touch Pro +#use=xsense-aero, fw=192.168.1.1:80 # via Xsense Aero Router +#use=allnet-1298, fw=192.168.1.1:80 # via AllNet 1298 DSL Router +#use=3com-oc-remote812, fw=192.168.0.254:80 # via 3com OfficeConnect Remote 812 +#use=e-tech, fw=192.168.1.1:80 # via E-tech Router +#use=cayman-3220h, fw=192.168.0.1:1080 # via Cayman 3220-H DSL Router +# +#fw-login=admin, fw-password=XXXXXX # FW login and password +# +## To obtain an IP address from FW status page (using fw-login, fw-password) +#use=fw, fw=192.168.1.254/status.htm, fw-skip='IP Address' # found after IP Address +# +## To obtain an IP address from Web status page (using the proxy if defined) +#use=web, web=checkip.dyndns.org/, web-skip='IP Address' # found after IP Address +# +#use=ip, ip=127.0.0.1 # via static IP's +#use=if, if=eth0 # via interfaces +use=web # via web +# +#protocol=dyndns2 # default protocol +#proxy=fasthttp.sympatico.ca:80 # default proxy +#server=members.dyndns.org # default server +#server=members.dyndns.org:8245 # default server (bypassing proxies) + +login=your-dynamic-dyndns-login # default login +password=your-dynamic-dyndns-password # default password +#mx=mx.for.your.host # default MX +#backupmx=yes|no # host is primary MX? +#wildcard=yes|no # add wildcard CNAME? + +## +## dyndns.org dynamic addresses +## +## (supports variables: wildcard,mx,backupmx) +## +server=members.dyndns.org, \ +protocol=dyndns2 \ +your-dynamic-dyndns-host + +## +## dyndns.org static addresses +## +## (supports variables: wildcard,mx,backupmx) +## +# static=yes, \ +# server=members.dyndns.org, \ +# protocol=dyndns2 \ +# your-static-host.dyndns.org + +## +## +## dyndns.org custom addresses +## +## (supports variables: wildcard,mx,backupmx) +## +# custom=yes, \ +# server=members.dyndns.org, \ +# protocol=dyndns2 \ +# your-domain.top-level,your-other-domain.top-level + +## +## ZoneEdit (zoneedit.com) +## +# server=dynamic.zoneedit.com, \ +# protocol=zoneedit1, \ +# login=your-zoneedit-login, \ +# password=your-zoneedit-password \ +# your.any.domain,your-2nd.any.dom + +## +## EasyDNS (easydns.com) +## +# server=members.easydns.com, \ +# protocol=easydns, \ +# login=your-easydns-login, \ +# password=your-easydns-password \ +# your.any.domain,your-2nd.any.domain + +## +## Hammernode (hn.org) dynamic addresses +## +# server=dup.hn.org, \ +# protocol=hammernode1, \ +# login=your-hn-login, \ +# password=your-hn-password \ +# your-hn-host.hn.org,your-2nd-hn-host.hn.org + +## +## dslreports.com dynamic-host monitoring +## +# server=members.dslreports.com \ +# protocol=dslreports1, \ +# login=dslreports-login, \ +# password=dslreports-password \ +# dslreports-unique-id + +## +## OrgDNS.org account-configuration +## +# use=web, web=members.orgdns.org/nic/ip +# server=www.orgdns.org \ +# protocol=dyndns2 \ +# login=yourLoginName \ +# password=yourPassword \ +# yourSubdomain.orgdns.org + +## +## dnspark.com +## (supports variables: mx, mxpri) +## +# use=web, web=ipdetect.dnspark.com, web-skip='Current Address:' +# protocol=dnspark, \ +# server=www.dnspark.com, \ +# your-host.dnspark.com + +## +## NameCheap (namecheap.com) +## +# protocol=namecheap, \ +# server=dynamicdns.park-your-domain.com, \ +# login=my-namecheap.com-login, \ +# password=my-namecheap.com-password \ +# myhost.namecheap.com |