summaryrefslogtreecommitdiffstats
path: root/dns/updatedd
diff options
context:
space:
mode:
Diffstat (limited to 'dns/updatedd')
-rw-r--r--dns/updatedd/Makefile38
-rw-r--r--dns/updatedd/distinfo6
-rw-r--r--dns/updatedd/files/extrapatch-disable-portdocs11
-rw-r--r--dns/updatedd/files/patch-include-dprintf.h18
-rw-r--r--dns/updatedd/files/patch-updatedd-wrapper-Makefile.in12
-rw-r--r--dns/updatedd/files/patch-updatedd.c15
-rw-r--r--dns/updatedd/pkg-descr32
-rw-r--r--dns/updatedd/pkg-plist69
8 files changed, 135 insertions, 66 deletions
diff --git a/dns/updatedd/Makefile b/dns/updatedd/Makefile
index b2b1ff2..ff53f1e 100644
--- a/dns/updatedd/Makefile
+++ b/dns/updatedd/Makefile
@@ -6,39 +6,33 @@
#
PORTNAME= updatedd
-PORTVERSION= 1.8
-PORTREVISION= 1
+PORTVERSION= 2.6
CATEGORIES= dns
-MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
+MASTER_SITES= ${MASTER_SITE_SAVANNAH}
MASTER_SITE_SUBDIR= ${PORTNAME}
-DISTNAME= ${PORTNAME}_${PORTVERSION}-1
+DISTNAME= ${PORTNAME}_${PORTVERSION}
MAINTAINER= geniusj@ods.org
COMMENT= Dynamic DNS Update Client supporting multiple services
+USE_PERL5= yes
USE_GMAKE= yes
GNU_CONFIGURE= yes
CONFIGURE_TARGET= --build=${MACHINE_ARCH}-portbld-freebsd${OSREL}
+CONFIGURE_ARGS+= --mandir=${PREFIX}/man
WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}
-LIBDIR= ${PREFIX}/lib/${PORTNAME}
-
-MAN1= updatedd.1
-DOCS= Documentation/README.* Documentation/rc_updatedd_*
-
-# Default Service Plugin
-# Valid services: dyndns, hn, noip, ods, ovh
-DEFAULTPLUGIN?= ods
-
-do-install:
- ${INSTALL_PROGRAM} ${WRKSRC}/src/updatedd ${PREFIX}/bin
- ${INSTALL_MAN} ${WRKSRC}/Documentation/*.1 ${MAN1PREFIX}/man/man1
- @${MKDIR} ${LIBDIR}
- ${INSTALL_DATA} ${WRKSRC}/src/plugins/*.so ${LIBDIR}
- ${LN} -sf ${LIBDIR}/${DEFAULTPLUGIN}.so ${LIBDIR}/default.so
-.if !defined(NOPORTDOCS)
- @${MKDIR} ${DOCSDIR}
- cd ${WRKSRC} && ${INSTALL_DATA} ${DOCS} ${DOCSDIR}
+
+MAN1= updatedd.1 updatedd-wrapper.1
+MAN5= updatedd-wrapper.conf.5
+
+.if defined(NOPORTDOCS)
+EXTRA_PATCHES+= ${PATCHDIR}/extrapatch-disable-portdocs
.endif
+post-install:
+ @if [ ! -f ${PREFIX}/etc/updatedd-wrapper.conf ]; then \
+ ${CP} -p ${PREFIX}/etc/updatedd-wrapper.conf.sample ${PREFIX}/etc/updatedd-wrapper.conf ; \
+ fi
+
.include <bsd.port.mk>
diff --git a/dns/updatedd/distinfo b/dns/updatedd/distinfo
index bf161cd..39e675d 100644
--- a/dns/updatedd/distinfo
+++ b/dns/updatedd/distinfo
@@ -1,3 +1,3 @@
-MD5 (updatedd_1.8-1.tar.gz) = 15d59db0fd708d66f241f1ffa818b5be
-SHA256 (updatedd_1.8-1.tar.gz) = 9e6b43077913ce05e3a63bac8dd6ecaeae762fe7b03cc08b1991d1485b2763f7
-SIZE (updatedd_1.8-1.tar.gz) = 62340
+MD5 (updatedd_2.6.tar.gz) = 95655596eb6e0e381d60a458f6a45fee
+SHA256 (updatedd_2.6.tar.gz) = 9d240c7e9fcc3f6cb1d32410ca2dee10d359c53f1a5a30d8f3ec49b18b73f1d0
+SIZE (updatedd_2.6.tar.gz) = 667104
diff --git a/dns/updatedd/files/extrapatch-disable-portdocs b/dns/updatedd/files/extrapatch-disable-portdocs
new file mode 100644
index 0000000..622869b2
--- /dev/null
+++ b/dns/updatedd/files/extrapatch-disable-portdocs
@@ -0,0 +1,11 @@
+--- Makefile.in.orig Fri Sep 15 10:19:08 2006
++++ Makefile.in Sun Feb 18 15:06:01 2007
+@@ -189,7 +189,7 @@
+ target_os = @target_os@
+ target_vendor = @target_vendor@
+ @COND_PERL_TRUE@MAYBE_PERL = updatedd-wrapper scripts
+-SUBDIRS = libupdatedd-exception src src/plugins include $(MAYBE_PERL) Documentation
++SUBDIRS = libupdatedd-exception src src/plugins include $(MAYBE_PERL)
+
+ #distdir = ../$(PACKAGE)-$(VERSION)
+ EXTRA_DIST = debian/compat debian/control debian/copyright debian/postinst debian/rules \
diff --git a/dns/updatedd/files/patch-include-dprintf.h b/dns/updatedd/files/patch-include-dprintf.h
new file mode 100644
index 0000000..83ad7a0
--- /dev/null
+++ b/dns/updatedd/files/patch-include-dprintf.h
@@ -0,0 +1,18 @@
+--- include/dprintf.h.orig Fri Sep 8 06:03:14 2006
++++ include/dprintf.h Mon Feb 19 16:00:43 2007
+@@ -40,13 +40,9 @@
+ va_list va;
+
+ va_start(va, fmt);
+- n = vsprintf(NULL, fmt, va);
+- if(n > MAXLEN)
++ n = vasprintf(&buffer, fmt, va);
++ if(-1 == n)
+ std_err(NONE, "dprintf() failed: string is too long");
+- if((buffer = (char *)malloc((n+1) * sizeof(char))) == NULL)
+- std_err(PERR, "malloc() failed");
+- (void)vsnprintf(buffer, n+1, fmt, va);
+- *(buffer+n) = '\0';
+ va_end(va);
+
+ if(write(s, buffer, n) == -1)
diff --git a/dns/updatedd/files/patch-updatedd-wrapper-Makefile.in b/dns/updatedd/files/patch-updatedd-wrapper-Makefile.in
new file mode 100644
index 0000000..5963b3e
--- /dev/null
+++ b/dns/updatedd/files/patch-updatedd-wrapper-Makefile.in
@@ -0,0 +1,12 @@
+--- updatedd-wrapper/Makefile.in.orig Fri Sep 15 10:19:07 2006
++++ updatedd-wrapper/Makefile.in Sun Feb 18 15:19:45 2007
+@@ -466,8 +466,8 @@
+ install-data-local:
+ if test ! -e $(DESTDIR)$(sysconfdir)/$(conf); then \
+ $(INSTALL) -d $(DESTDIR)$(sysconfdir); \
+- $(INSTALL) -m 600 updatedd-wrapper.conf $(DESTDIR)$(sysconfdir); \
+ fi
++ $(INSTALL) -m 600 updatedd-wrapper.conf $(DESTDIR)$(sysconfdir)/updatedd-wrapper.conf.sample
+
+ uninstall-local:
+ $(RM) $(DESTDIR)$(sysconfdir)/updatedd-wrapper.conf
diff --git a/dns/updatedd/files/patch-updatedd.c b/dns/updatedd/files/patch-updatedd.c
deleted file mode 100644
index 0bfe9b3..0000000
--- a/dns/updatedd/files/patch-updatedd.c
+++ /dev/null
@@ -1,15 +0,0 @@
---- src.bak/updatedd.c Tue Dec 2 15:50:39 2003
-+++ src/updatedd.c Tue Dec 2 15:50:58 2003
-@@ -33,11 +33,7 @@
- #define MAXLIBS 10
- #define MAXDATA 256
-
--#ifndef __linux__
--# define LIB_FUNC "_dyndns"
--#else
--# define LIB_FUNC "dyndns"
--#endif
-+#define LIB_FUNC "dyndns"
-
- typedef void (*fptr)(int, char**);
-
diff --git a/dns/updatedd/pkg-descr b/dns/updatedd/pkg-descr
index 60b3a60..f8aea5f 100644
--- a/dns/updatedd/pkg-descr
+++ b/dns/updatedd/pkg-descr
@@ -1,15 +1,23 @@
-Updatedd is a client to update dynamic dns settings.
-With the use of the pppd ip-up script it can update
-these settings automatically for you.
-Updatedd does not run as a daemon.
-
-It is divided into one main program and one plugin for each
-supported service. The plugins are dynamic libraries which
-are loaded by the main program. So it is possible to remove
-support for services you don't need.
-
-Supported Services:
-ods.org, dyndns.org, ovh.net, no-ip.org, hn.org
+Updatedd is a program for Unix like operating systems to
+update dynamic DNS records. It supports multiple services,
+including:
+
+ changeip.com
+ dyndns.org
+ eurodyndns.org
+ ovh.com,
+ no-ip.org
+ ods.org
+ hn.org
+ regfish.com
+ tzo.com
+
+Each service is represented by a plugin, therefore it is
+very simple to add support for additional services.
+
+Furthermore the package includes a wrapper for updatedd
+called `updatedd-wrapper'. It provides support for
+configuration files and IP adddress caching.
Author: Philipp Benner <philipp_benner (at) gmx (dot) de>
WWW: http://updatedd.philipp-benner.de
diff --git a/dns/updatedd/pkg-plist b/dns/updatedd/pkg-plist
index 75706ed..b3876eb 100644
--- a/dns/updatedd/pkg-plist
+++ b/dns/updatedd/pkg-plist
@@ -1,17 +1,58 @@
-@comment $FreeBSD$
bin/updatedd
-lib/updatedd/default.so
-lib/updatedd/dyndns.so
-lib/updatedd/hn.so
-lib/updatedd/noip.so
-lib/updatedd/ods.so
-lib/updatedd/ovh.so
+bin/updatedd-wrapper
+@unexec if cmp -s %D/etc/updatedd-wrapper.conf.sample %D/etc/updatedd-wrapper.conf; then rm -f %D/etc/updatedd-wrapper.conf; fi
+etc/updatedd-wrapper.conf.sample
+@exec if [ ! -f %D/etc/updatedd-wrapper.conf ] ; then cp -p %D/%F %B/updatedd-wrapper.conf; fi
+lib/updatedd/libchangeip.a
+lib/updatedd/libchangeip.la
+lib/updatedd/libchangeip.so
+lib/updatedd/libchangeip.so.0
+lib/updatedd/libdyndns.a
+lib/updatedd/libdyndns.la
+lib/updatedd/libdyndns.so
+lib/updatedd/libdyndns.so.0
+lib/updatedd/libeurodyndns.a
+lib/updatedd/libeurodyndns.la
+lib/updatedd/libeurodyndns.so
+lib/updatedd/libeurodyndns.so.0
+lib/updatedd/libhn.a
+lib/updatedd/libhn.la
+lib/updatedd/libhn.so
+lib/updatedd/libhn.so.0
+lib/updatedd/libnoip.a
+lib/updatedd/libnoip.la
+lib/updatedd/libnoip.so
+lib/updatedd/libnoip.so.0
+lib/updatedd/libods.a
+lib/updatedd/libods.la
+lib/updatedd/libods.so
+lib/updatedd/libods.so.0
+lib/updatedd/libovh.a
+lib/updatedd/libovh.la
+lib/updatedd/libovh.so
+lib/updatedd/libovh.so.0
+lib/updatedd/libregfish.a
+lib/updatedd/libregfish.la
+lib/updatedd/libregfish.so
+lib/updatedd/libregfish.so.0
+lib/updatedd/libtzo.a
+lib/updatedd/libtzo.la
+lib/updatedd/libtzo.so
+lib/updatedd/libtzo.so.0
@dirrm lib/updatedd
-%%PORTDOCS%%%%DOCSDIR%%/README.english
-%%PORTDOCS%%%%DOCSDIR%%/README.german
-%%PORTDOCS%%%%DOCSDIR%%/rc_updatedd_dyndns
-%%PORTDOCS%%%%DOCSDIR%%/rc_updatedd_hn
-%%PORTDOCS%%%%DOCSDIR%%/rc_updatedd_noip
-%%PORTDOCS%%%%DOCSDIR%%/rc_updatedd_ods
-%%PORTDOCS%%%%DOCSDIR%%/rc_updatedd_ovh
+include/libchangeip.h
+include/libdyndns.h
+include/libeurodyndns.h
+include/libhn.h
+include/libnoip.h
+include/libods.h
+include/libovh.h
+include/libregfish.h
+include/libtzo.h
+%%DATADIR%%/interface.pl
+%%DATADIR%%/ipserv.pl
+@dirrm %%DATADIR%%
+%%PORTDOCS%%%%DOCSDIR%%/updatedd-2.4-english.pdf
+%%PORTDOCS%%%%DOCSDIR%%/updatedd-2.4-german.pdf
+%%PORTDOCS%%%%DOCSDIR%%/updatedd-pppd-rc
%%PORTDOCS%%@dirrm %%DOCSDIR%%
OpenPOWER on IntegriCloud