aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid W. Chapman Jr. <dwcjr@FreeBSD.org>2001-11-24 18:52:33 +0000
committerDavid W. Chapman Jr. <dwcjr@FreeBSD.org>2001-11-24 18:52:33 +0000
commit784a571455da42f399bc21ebd5a9539b67381469 (patch)
tree2cbc88a6a8eaa7d2e628efb75da836822045494e
parent1ae17e5d0ef56f3d525104e99008ddb89b1095f0 (diff)
downloadports-784a571455da42f399bc21ebd5a9539b67381469.tar.gz
ports-784a571455da42f399bc21ebd5a9539b67381469.zip
Notes
-rw-r--r--dns/dhisd/Makefile80
-rw-r--r--dns/dhisd/distinfo2
-rw-r--r--dns/dhisd/files/INSTALL.bsd59
-rw-r--r--dns/dhisd/files/dhis.db13
-rw-r--r--dns/dhisd/files/dhisd.sh7
-rw-r--r--dns/dhisd/files/patch-INSTALL97
-rw-r--r--dns/dhisd/files/patch-MODULES63
-rw-r--r--dns/dhisd/files/patch-Makefile33
-rw-r--r--dns/dhisd/files/patch-README67
-rw-r--r--dns/dhisd/files/patch-dhisd.h16
-rw-r--r--dns/dhisd/files/patch-nsupdate.c31
-rw-r--r--dns/dhisd/pkg-plist2
-rw-r--r--net/dhisd/Makefile80
-rw-r--r--net/dhisd/distinfo2
-rw-r--r--net/dhisd/files/INSTALL.bsd59
-rw-r--r--net/dhisd/files/dhis.db13
-rw-r--r--net/dhisd/files/dhisd.sh7
-rw-r--r--net/dhisd/files/patch-INSTALL97
-rw-r--r--net/dhisd/files/patch-MODULES63
-rw-r--r--net/dhisd/files/patch-Makefile33
-rw-r--r--net/dhisd/files/patch-README67
-rw-r--r--net/dhisd/files/patch-dhisd.h16
-rw-r--r--net/dhisd/files/patch-nsupdate.c31
-rw-r--r--net/dhisd/pkg-plist2
24 files changed, 540 insertions, 400 deletions
diff --git a/dns/dhisd/Makefile b/dns/dhisd/Makefile
index 694b8b4427db..f41aa96458df 100644
--- a/dns/dhisd/Makefile
+++ b/dns/dhisd/Makefile
@@ -5,66 +5,64 @@
# $FreeBSD$
#
-PORTNAME= dhisd
-PORTVERSION= 4.0.3
-CATEGORIES= net
-MASTER_SITES= http://bsltwr.dhis.org/ftp/pub/dhis/ \
- ftp://ftp.dhis.org/pub/dhis/
+PORTNAME= dhisd
+PORTVERSION= 5.1
+CATEGORIES= net
+MASTER_SITES= http://bsltwr.dhis.org/ftp/pub/dhis/ \
+ ftp://ftp.dhis.org/pub/dhis/
-MAINTAINER= baskruit@bsltwr.dhis.org
+MAINTAINER= baskruit@bsltwr.dhis.org
-DHISBASE= ${PREFIX}/dhis
-DIRS= dhis dhis/bin dhis/pid dhis/db dhis/log dhis/script
-RDIRS= dhis/bin dhis/pid dhis/db dhis/log dhis/script dhis
+DOCFILES= CONTRIBUTORS COPYRIGHT INSTALL MODULES README
post-patch:
- @${ECHO} "===> Patching Makefile"
- ${PERL} -i -p -e "s^__PREFIX__^${DHISBASE}^g" ${WRKSRC}/Makefile
- @${ECHO} "===> Patching documentation..."
- ${PERL} -i -p -e "s^__PREFIX__^${DHISBASE}^g" ${WRKSRC}/INSTALL
- ${PERL} -i -p -e "s^__PREFIX__^${DHISBASE}^g" ${WRKSRC}/README
- @${ECHO} "===> Patching dhisd.h"
- ${PERL} -i -p -e "s^__PREFIX__^${DHISBASE}^g" ${WRKSRC}/dhisd.h
- @${ECHO} "===> Patching dhisd.sh"
- @${CP} ${FILESDIR}/dhisd.sh ${WRKSRC}
- ${PERL} -i -p -e "s^__PREFIX__^${PREFIX}^g" ${WRKSRC}/dhisd.sh
+ cd ${WRKSRC} && ${PERL} -i -p -e "s^__PREFIX__^${PREFIX}^g" \
+ Makefile dhisd.h ${DOCFILES}
do-install:
post-install:
-.for dir in ${DIRS}
- @${MKDIR} ${PREFIX}/${dir}
- @${CHMOD} 700 ${PREFIX}/${dir}
-.endfor
- ${INSTALL_PROGRAM} ${WRKSRC}/dhisd ${DHISBASE}/bin
- @${INSTALL_DATA} ${FILESDIR}/dhis.db ${DHISBASE}/db/dhis.db.sample
- @${ECHO} "dhis/bin/dhisd" >> ${TMPPLIST}
- @${ECHO} "dhis/db/dhis.db.sample" >> ${TMPPLIST}
- @${CHMOD} 600 ${PREFIX}/dhis/db/*
+ ${ECHO} "===> Installing ${PREFIX}/bin/dhisd."
+ ${INSTALL_PROGRAM} ${WRKSRC}/dhisd ${PREFIX}/bin
+ @${ECHO} "bin/dhisd" >> ${TMPPLIST}
+ ${ECHO} "===> Installing ${PREFIX}/bin/genkeys."
+ ${INSTALL_PROGRAM} ${WRKSRC}/genkeys ${PREFIX}/bin
+ @${ECHO} "bin/genkeys" >> ${TMPPLIST}
+ ${ECHO} "===> Creating ${PREFIX}/etc/dhis and installing sample db files."
+ @${MKDIR} ${PREFIX}/etc/dhis
+ @${CHMOD} 700 ${PREFIX}/etc/dhis
+ @${INSTALL_DATA} ${WRKSRC}/dhis.db.sample ${PREFIX}/etc/dhis/dhis.db.sample
+ @${ECHO} "etc/dhis/dhis.db.sample" >> ${TMPPLIST}
+ @${INSTALL_DATA} ${WRKSRC}/services.db.sample ${PREFIX}/etc/dhis/services.db.sample
+ @${ECHO} "etc/dhis/services.db.sample" >> ${TMPPLIST}
+ @${CHMOD} 600 ${PREFIX}/etc/dhis/*
+ @${ECHO} "@dirrm etc/dhis" >> ${TMPPLIST}
.if !exists(${PREFIX}/etc/rc.d/dhisd.sh)
${ECHO} "===> Installing ${PREFIX}/etc/rc.d/dhid.sh startup file."
- ${INSTALL_SCRIPT} -m 751 ${WRKSRC}/dhisd.sh ${PREFIX}/etc/rc.d/dhisd.sh
+ ${INSTALL_SCRIPT} -m 751 ${FILESDIR}/dhisd.sh ${PREFIX}/etc/rc.d/dhisd.sh
@${ECHO} "etc/rc.d/dhisd.sh" >> ${TMPPLIST}
.endif
.if !defined(NOPORTDOCS)
- @${MKDIR} ${DHISBASE}/doc
- @${INSTALL_DATA} ${WRKSRC}/README ${DHISBASE}/doc
- @${INSTALL_DATA} ${WRKSRC}/INSTALL ${DHISBASE}/doc
- @${CHMOD} 755 ${DHISBASE}/doc
- @${ECHO} "dhis/doc/README" >> ${TMPPLIST}
- @${ECHO} "dhis/doc/INSTALL" >> ${TMPPLIST}
- @${ECHO} "@dirrm dhis/doc" >> ${TMPPLIST}
-.endif
-.for dir in ${RDIRS}
- @${ECHO} "@dirrm ${dir}" >> ${TMPPLIST}
+ ${ECHO} "===> Installing documentation in ${DOCSDIR}"
+ @${MKDIR} ${DOCSDIR}
+ @${CHMOD} 755 ${DOCSDIR}
+.for DOCFILE in ${DOCFILES}
+ @${INSTALL_DATA} ${WRKSRC}/${DOCFILE} ${DOCSDIR}
+ @${ECHO} "share/doc/${PORTNAME}/${DOCFILE}" >> ${TMPPLIST}
.endfor
+ ${INSTALL_DATA} ${FILESDIR}/INSTALL.bsd ${DOCSDIR}
+ @${ECHO} "share/doc/${PORTNAME}/INSTALL.bsd" >> ${TMPPLIST}
+ @${ECHO} "@dirrm share/doc/${PORTNAME}" >> ${TMPPLIST}
+.endif
@${ECHO} "--------------------------------------------------------------------------"
@${ECHO} "Before dhisd can run, you will need configure BIND."
@${ECHO} ""
@${ECHO} "For more information, see the following site:"
- @${ECHO} "http://www.dhis.org/dhis/r4/server.html"
+ @${ECHO} "http://www.dhis.org/dhis/r5/"
.if !defined(NOPORTDOCS)
- @${ECHO} "or ${DHISBASE}/doc/"
+ @${ECHO} ""
+ @${ECHO} "or the files in ${DOCSDIR}"
+ @${ECHO} "Read INSTALL and INSTALL.bsd at least for the setup information of dhisd."
.endif
@${ECHO} ""
@${ECHO} "For information on this port, check the following site:"
diff --git a/dns/dhisd/distinfo b/dns/dhisd/distinfo
index 336a33f639b2..6e46dd780c70 100644
--- a/dns/dhisd/distinfo
+++ b/dns/dhisd/distinfo
@@ -1 +1 @@
-MD5 (dhisd-4.0.3.tar.gz) = 1882f5296856c439dd5115f1b9170bbc
+MD5 (dhisd-5.1.tar.gz) = 7cbae9ef404570d72a491d59c596abe7
diff --git a/dns/dhisd/files/INSTALL.bsd b/dns/dhisd/files/INSTALL.bsd
new file mode 100644
index 000000000000..71cc9bf75320
--- /dev/null
+++ b/dns/dhisd/files/INSTALL.bsd
@@ -0,0 +1,59 @@
+
+Install instructions for DHIS server rel5.1 for FreeBSD
+=======================================================
+
+dhisd is the DHIS server, meant to permit updating external
+databases with dynamically assiged IP addresses to clients.
+
+In order to build the dhisd server the following requirements must
+be met:
+
+ The machine must be permanently connected to the internet
+ with a static IP address.
+
+ The machine which will act as a server should be running
+ a distribution of UNIX or similar system.
+
+
+For full information, read the INSTALL file in /usr/local/share/doc/dhisd
+
+Setting up the server
+
+ Create the database file which will hold information for
+ current dynamic hosts:
+
+ Change directory to /usr/local/etc/dhis
+
+ Create a text file named dhis.db with a text editor.
+ You can copy the dhis.db.sample to dhis.db as a starting point.
+
+ Change the permissions as you wish. In particular dhis.db
+ should not be readable by anyone. Suggested example:
+
+ chmod 700 /usr/local/etc/dhis /usr/local/etc/dhis/*
+ chmod 600 /usr/local/etc/dhis/dhis.db
+
+ Now create /usr/local/etc/dhis/services.db
+
+ As before, you can copy the included services.db.sample as a
+ starting point.
+
+ Insert one line per module implemented. See MODULES for a
+ detailed description of the modular architecture and
+ services.db format.
+
+ See the README file for more information on the server
+ and MODULES for information on the new modular structure
+ of the server.
+
+ For starting the server, you can use the following script:
+
+ /usr/local/etc/rc.d/dhis.sh
+
+ It has the following options:
+ start start the server
+ restart restart the server (after changing the db)
+ stop stop the server
+
+ And that's it. The DHIS server is installed.
+
diff --git a/dns/dhisd/files/dhis.db b/dns/dhisd/files/dhis.db
deleted file mode 100644
index c0e821458337..000000000000
--- a/dns/dhisd/files/dhis.db
+++ /dev/null
@@ -1,13 +0,0 @@
-1001 {
- hostname dyn1.example.com
- hostpass password
- }
-
-1002 {
- hostname dyn2.example.com
- authn 32934593845689467748967498674789585769453
- authn 56456894768497649867849769487659847684977
- authn 22389472897348957348957389457894375849573
- authn 23459435734957398753489573495743985743985
- }
-
diff --git a/dns/dhisd/files/dhisd.sh b/dns/dhisd/files/dhisd.sh
index 7847c5c6e9e0..0bbedca45dce 100644
--- a/dns/dhisd/files/dhisd.sh
+++ b/dns/dhisd/files/dhisd.sh
@@ -2,13 +2,16 @@
case "$1" in
start)
- [ -x "__PREFIX__/dhis/bin/dhisd" ] && __PREFIX__/dhis/bin/dhisd > /dev/null && echo -n ' dhisd'
+ [ -x "__PREFIX__/bin/dhisd" ] && __PREFIX__/bin/dhisd > /dev/null && echo -n ' dhisd'
+ ;;
+restart)
+ killall -HUP dhisd && echo -n 'dhisd restarted'
;;
stop)
killall dhisd && echo -n ' dhisd'
;;
*)
- echo "Usage: `basename $0` {start|stop}" >&2
+ echo "Usage: `basename $0` {start|restart|stop}" >&2
;;
esac
diff --git a/dns/dhisd/files/patch-INSTALL b/dns/dhisd/files/patch-INSTALL
index 495cbe513b52..e4ad1c84c15b 100644
--- a/dns/dhisd/files/patch-INSTALL
+++ b/dns/dhisd/files/patch-INSTALL
@@ -1,6 +1,17 @@
---- INSTALL.orig Sun May 7 19:35:19 2000
-+++ INSTALL Mon Feb 26 01:00:37 2001
-@@ -87,17 +87,17 @@
+--- INSTALL.orig Sun Nov 4 21:47:45 2001
++++ INSTALL Sun Nov 4 22:09:55 2001
+@@ -50,28 +50,25 @@
+ 2. Install stage
+ ----------------
+
+- In this installation we will use /etc/dhis as the default
+- base directory for the server. Another directory may be
+- used in which case file location command line options must
+- be given to dhisd when executing.
++ In this installation we will use __PREFIX__/etc/dhis
++ as the default base directory for the server. Another
++ directory may be used in which case file location command
++ line options must be given to dhisd when executing.
Create the directories:
@@ -9,83 +20,55 @@
- /etc/dhis/pid
- /etc/dhis/db
- /etc/dhis/log
-- /etc/dhis/script
-+ __PREFIX__
-+ __PREFIX__/bin
-+ __PREFIX__/pid
-+ __PREFIX__/db
-+ __PREFIX__/log
-+ __PREFIX__/script
++ __PREFIX__/etc/dhis
-- You may wish to create /etc/dhis/src and put dhisd-4.0 under
-+ You may wish to create __PREFIX__/src and put dhisd-4.0 under
- this directory.
+- You may wish to create /etc/dhis/src and put dhisd-5.1 under
+- this directory.
++ You may wish to create __PREFIX__/etc/dhis/src and put
++ dhisd-5.1 under this directory.
- Copy dhisd to /etc/dhis/bin . This is the server binary.
-+ Copy dhisd to __PREFIX__/bin . This is the server binary.
++ Copy dhisd to __PREFIX__/bin.
++ This is the server binary.
Create the database file which will hold information for
- current dynamic hosts. For this installation let us assume
-@@ -105,7 +105,7 @@
- example.com, and that we wish to create 3 dynamic hosts
- named dyn1.example.com, dyn2.example.com and dyn3.example.com
+ current dynamic hosts:
- Change directory to /etc/dhis/db
-+ Change directory to __PREFIX__/db
++ Change directory to __PREFIX__/etc/dhis
Create a text file named dhis.db with a text editor.
- The file should have three lines, one for each dynamic host.
-@@ -179,20 +179,20 @@
+
+@@ -162,19 +159,19 @@
Change the permissions as you wish. In particular dhis.db
should not be readable by anyone. Suggested example:
- chmod 700 /etc/dhis /etc/dhis/*
- chmod 600 /etc/dhis/db/dhis.db
-+ chmod 700 __PREFIX__ __PREFIX__/*
-+ chmod 600 __PREFIX__/db/dhis.db
++ chmod 700 __PREFIX__/etc/dhis __PREFIX__/etc/dhis/*
++ chmod 600 __PREFIX__/etc/dhis/dhis.db
Add dhisd to your system's startup script
(rc.local for BSD systems, SXXdhis under /etc/rc2.d
for System V). A simple line such as
- /etc/dhis/bin/dhisd
-+ __PREFIX__/bin/dhisd
-
- will do. However, if your service will provide mail
- relaying as well you must specify the relay's IP address,
- in which case the line should look like:
-
-- /etc/dhis/bin/dhisd -m y.y.y.y
-+ __PREFIX__/bin/dhisd -m y.y.y.y
-
- where y.y.y.y is the IP address of the mail relay (may be
- the same host). Check the relay-4.0.tar.gz distribution
-@@ -209,7 +209,7 @@
- present, the relay machine is identified by relay.example.com.
- Again, these may point to the same machine.
-
-- Edit /etc/named.conf and add a section such as:
-+ Edit /etc/named/named.conf and add a section such as:
++ /usr/local/bin/dhisd
- zone "example.com" in {
+ will do.
-@@ -277,8 +277,8 @@
- DNS is now running and accepting dynamic updates.
-
-- You may also run /etc/dhis/bin/dhisd or
-- /etc/dhis/bin/dhisd -m y.y.y.y manually by now if
-+ You may also run __PREFIX__/bin/dhisd or
-+ __PREFIX__/bin/dhisd -m y.y.y.y manually by now if
- you wish to run DHIS at once.
-
- 4. Adding Records
-@@ -301,7 +301,7 @@
-
- run
+- Now create /etc/dhis/db/services.db
++ Now create __PREFIX__/etc/dhis/services.db
+
+ Insert one line per module implemented. See MODULES
+ for a detailed description of the modular architecture
+@@ -187,7 +184,7 @@
+ and MODULES for information on the new modular structure
+ of the server.
-- kill -HUP `cat /etc/dhis/pid/dhisd.pid`
-+ kill -HUP `cat __PREFIX__/pid/dhisd.pid`
+- You may also run /etc/dhis/bin/dhisd now if you wish to
++ You may also run __PREFIX__/bin/dhisd now if you wish to
+ run DHIS at once.
- to reload the DHIS database.
diff --git a/dns/dhisd/files/patch-MODULES b/dns/dhisd/files/patch-MODULES
new file mode 100644
index 000000000000..ea15d2d08a75
--- /dev/null
+++ b/dns/dhisd/files/patch-MODULES
@@ -0,0 +1,63 @@
+--- MODULES.orig Sun Nov 4 21:51:27 2001
++++ MODULES Sun Nov 4 21:51:19 2001
+@@ -14,8 +14,9 @@
+ to update DNS, to update a tunneling service, to update a firewall, etc ...
+ based on a dynamically changing IP address from its clients.
+
+-The new server has an additional database (by default /etc/dhis/db/services.db)
+-containing the list of support services (modules).
++The new server has an additional database (by default
++__PREFIX__/etc/dhis/services.db) containing the list of
++support services (modules).
+
+ In order to run dhisd >= 5 you will need to create and configure this
+ file first.
+@@ -24,13 +25,14 @@
+ ---------------------------------------
+
+ When executed the DHIS server reads its client's database (by default from
+-/etc/dhis/db/dhis.db) into memory and proceeds to listening mode on a UDP
+-port (by default 58800). When messages arrive the server responds accordingly,
+-authenticates the clients (based on the keys and information loaded from the
+-database) and marks them online. Furthermore the server keeps sending periodic
+-checks to each and every client in order to verify that these are still
+-connected. If a particular client fails to reply the server will consider it
+-offline and mark it accordingly.
++__PREFIX__/etc/dhis/db/dhis.db) into memory and proceeds to listening
++mode on a UDP port (by default 58800). When messages arrive the server
++responds accordingly, authenticates the clients (based on the keys and
++information loaded from the database) and marks them online. Furthermore
++the server keeps sending periodic checks to each and every client in
++order to verify that these are still connected. If a particular client
++fails to reply the server will consider it offline and mark it
++accordingly.
+
+ Each client is identified to a server by a single ID number called the HostID.
+ The new modular structure implements a means to mark these hosts online and
+@@ -61,11 +63,10 @@
+ command - the module engine process command to be executed
+
+
+-Example of /etc/dhis/db/services.db
+------------------------------------
+-
+-Before executing dhisd ensure to have created a valid /etc/dhis/db/services.db
+-file.
++Example of __PREFIX__/etc/dhis/db/services.db
++-------------------------------------------------------------------------------
++Before executing dhisd ensure to have created a valid
++__PREFIX__/etc/dhis/services.db file.
+
+ The syntax for the file is as follows:
+
+@@ -76,8 +77,8 @@
+
+ ;------------------------------------------------------------------------------
+ ; This is a comment line
+-dns 4 /etc/dhis/bin/dhis-dns-engine
+-fw 2 /etc/dhis/bin/dhis-fw-engine
++dns 4 __PREFIX__/etc/dhis/dhis-dns-engine
++fw 2 __PREFIX__/etc/dhis/dhis-fw-engine
+ ;------------------------------------------------------------------------------
+
+ Inter-process communication for modules:
diff --git a/dns/dhisd/files/patch-Makefile b/dns/dhisd/files/patch-Makefile
index 5c6758a9c8f5..0ed1c068d789 100644
--- a/dns/dhisd/files/patch-Makefile
+++ b/dns/dhisd/files/patch-Makefile
@@ -1,24 +1,11 @@
---- Makefile.orig Wed Mar 7 11:53:58 2001
-+++ Makefile Mon Mar 19 17:43:57 2001
-@@ -26,16 +26,16 @@
- # DHIS(c) Dynamic Host Information System Release 4.0
+--- Makefile.orig Sun Nov 4 20:48:12 2001
++++ Makefile Sun Nov 4 20:49:08 2001
+@@ -30,7 +30,7 @@
+ LFLAGS=-L/usr/local/lib
+ CP=cp
- CC=gcc
--CFLAGS=-I/usr/local/include -I/usr/bind/include \
-- -I/usr/local/bind/include # -DBIND821
--LFLAGS=-L/usr/local/lib -L/usr/bind/lib -L/usr/local/bind/lib
--LIBS=-lnsl -lsocket -lbind -lgmp
-+CFLAGS=-I/usr/local/include -DHAVE_SYS_PARAM_H
-+LFLAGS=-L/usr/local/lib
-+LIBS=-lgmp
- OBJS=log.o network.o misc.o db.o online.o nsupdate.o main.o
- RM=rm -f
-
-+all: dhisd
-+
- dhisd: $(OBJS)
- $(CC) $(LFLAGS) -o dhisd $(OBJS) $(LIBS)
-- strip dhisd
-
- clean:
- $(RM) *.core core dhisd *.o
+-INSTALLDIR=/etc/dhis/bin
++INSTALLDIR=__PREFIX__/sbin
+ MODE=700
+ OWNER=root
+ MKDIR=mkdir -p
diff --git a/dns/dhisd/files/patch-README b/dns/dhisd/files/patch-README
index 2a7fed26476c..2910e3e04ab2 100644
--- a/dns/dhisd/files/patch-README
+++ b/dns/dhisd/files/patch-README
@@ -1,30 +1,49 @@
---- README.orig Sun Apr 30 18:51:47 2000
-+++ README Mon Feb 26 00:55:38 2001
-@@ -29,7 +29,8 @@
- would result in non-existent host. Thus, the presence of
- an IP address, even while offline, is essencial.
-
-- The DHIS server dhisd runs a database file (/etc/dhis/db/dhis.db)
-+ The DHIS server dhisd runs a database file
-+ (__PREFIX__/db/dhis.db)
- and loads the current list of dynamic hosts into memory.
- Furthermore it expects datagram packets to be received on
- port 58800 from the connecting clients running dhid.
-@@ -91,7 +92,7 @@
+--- README.orig Sun Nov 4 21:47:55 2001
++++ README Sun Nov 4 22:15:04 2001
+@@ -146,7 +146,7 @@
dhisd accepts HUP and TERM signals. A kill -HUP will
make it reload the hosts database and kill -TERM
- will terminate it. Its pid number is recorded on the
-- text file /etc/dhis/pid/dhisd.pid.
-+ text file __PREFIX__/pid/dhisd.pid.
+ will terminate it. Its pid number is recorded a the
+- text file (default: /etc/dhis/pid/dhisd.pid)
++ text file (default: /var/pid/dhisd.pid)
- The current DHIS server is expected to perform well
- on a 100Mhz machine with up to 5000 dynamic hosts.
-@@ -99,7 +100,7 @@
- users.
+ Before terminating with SIGTERM dhisd will attempt to bring all
+ online clients offline.
+@@ -155,7 +155,7 @@
+ ========
- dhisd logs online and offline transitions at
-- /etc/dhis/log/dhisd.log
-+ __PREFIX__/log/dhisd.log
+ dhisd logs online and offline transitions on a text file
+- (default: /etc/dhis/log/dhisd.log)
++ (default: /var/log/dhisd.log)
+ Command Line Options:
+ =====================
+@@ -175,12 +175,12 @@
+
+ -d <dbase_file> allows specifying a path for the database file
- Firewall considerations:
+- e.g. dhisd -d /usr/local/etc/dhis.db
++ e.g. dhisd -d /usr/local/etc/dhis/dhis.db
+
+ -s <service_file> allows specifying a path for the services
+ file.
+
+- e.g. dhisd -s /usr/local/etc/services.db
++ e.g. dhisd -s /usr/local/etc/dhis/services.db
+
+ All options may be used in conjunction.
+
+@@ -327,11 +327,11 @@
+
+ 1000 {
+ hostpass something
+- oncmd /etc/oncmd
++ oncmd /usr/local/etc/dhis/oncmd
+ }
+
+
+- # /etc/oncmd
++ # /usr/local/etc/dhis/oncmd
+ #!/bin/sh
+ #
+ echo I am $1 online now at $2
diff --git a/dns/dhisd/files/patch-dhisd.h b/dns/dhisd/files/patch-dhisd.h
index 6280c561a479..0adddde3844a 100644
--- a/dns/dhisd/files/patch-dhisd.h
+++ b/dns/dhisd/files/patch-dhisd.h
@@ -1,15 +1,17 @@
---- dhisd.h.orig Mon Mar 13 18:08:04 2000
-+++ dhisd.h Mon Feb 26 01:03:00 2001
-@@ -62,9 +62,9 @@
+--- dhisd.h.orig Sun Nov 4 20:50:14 2001
++++ dhisd.h Sun Nov 4 20:51:05 2001
+@@ -64,10 +64,10 @@
+ #define CHECK_FAILS 3 /* maximum check fails */
- #define MX_PORT 58801
#define DHISD_PORT 58800
-#define DHISD_PID "/etc/dhis/pid/dhisd.pid"
-#define DHISD_DB "/etc/dhis/db/dhis.db"
-#define DHISD_LOG "/etc/dhis/log/dhisd.log"
-+#define DHISD_PID "__PREFIX__/pid/dhisd.pid"
-+#define DHISD_DB "__PREFIX__/db/dhis.db"
-+#define DHISD_LOG "__PREFIX__/log/dhisd.log"
+-#define DHISD_SERVICES "/etc/dhis/db/services.db"
++#define DHISD_PID "/var/run/dhisd.pid"
++#define DHISD_DB "__PREFIX__/etc/dhis/dhis.db"
++#define DHISD_LOG "/var/log/dhisd.log"
++#define DHISD_SERVICES "__PREFIX__/etc/dhis/services.db"
#define MAX_HOSTNAME 64
#define MAX_PASS 16
diff --git a/dns/dhisd/files/patch-nsupdate.c b/dns/dhisd/files/patch-nsupdate.c
deleted file mode 100644
index 53e73f5ca19a..000000000000
--- a/dns/dhisd/files/patch-nsupdate.c
+++ /dev/null
@@ -1,31 +0,0 @@
---- nsupdate.c.orig Mon Mar 19 22:23:40 2001
-+++ nsupdate.c Mon Mar 19 22:55:46 2001
-@@ -28,8 +28,17 @@
-
-
- #include"dhisd.h"
--#ifndef BIND821
--#include <res_update.h>
-+
-+#ifdef HAVE_SYS_PARAM_H
-+#include <sys/param.h>
-+#endif
-+
-+#if (defined(BSD) && (BSD >= 199306))
-+# include <arpa/nameser.h>
-+#else
-+# if !defined BIND821
-+# include <res_update.h>
-+# endif
- #endif
-
- int dns_update(unsigned char *r_dname,int r_opcode,short int r_type,
-@@ -53,7 +62,7 @@
- rrecp->r_size=r_size;
- if(r_size>0) strcpy(rrecp->r_data,r_data);
-
--#ifndef BIND821
-+#if !defined(BIND821) && !defined(BSD)
- rrecp->r_link.prev=NULL;
- rrecp->r_link.next=NULL;
- #else
diff --git a/dns/dhisd/pkg-plist b/dns/dhisd/pkg-plist
index 8b137891791f..b449049a5cdf 100644
--- a/dns/dhisd/pkg-plist
+++ b/dns/dhisd/pkg-plist
@@ -1 +1 @@
-
+@comment Left empty, filled during post-install by Makefile
diff --git a/net/dhisd/Makefile b/net/dhisd/Makefile
index 694b8b4427db..f41aa96458df 100644
--- a/net/dhisd/Makefile
+++ b/net/dhisd/Makefile
@@ -5,66 +5,64 @@
# $FreeBSD$
#
-PORTNAME= dhisd
-PORTVERSION= 4.0.3
-CATEGORIES= net
-MASTER_SITES= http://bsltwr.dhis.org/ftp/pub/dhis/ \
- ftp://ftp.dhis.org/pub/dhis/
+PORTNAME= dhisd
+PORTVERSION= 5.1
+CATEGORIES= net
+MASTER_SITES= http://bsltwr.dhis.org/ftp/pub/dhis/ \
+ ftp://ftp.dhis.org/pub/dhis/
-MAINTAINER= baskruit@bsltwr.dhis.org
+MAINTAINER= baskruit@bsltwr.dhis.org
-DHISBASE= ${PREFIX}/dhis
-DIRS= dhis dhis/bin dhis/pid dhis/db dhis/log dhis/script
-RDIRS= dhis/bin dhis/pid dhis/db dhis/log dhis/script dhis
+DOCFILES= CONTRIBUTORS COPYRIGHT INSTALL MODULES README
post-patch:
- @${ECHO} "===> Patching Makefile"
- ${PERL} -i -p -e "s^__PREFIX__^${DHISBASE}^g" ${WRKSRC}/Makefile
- @${ECHO} "===> Patching documentation..."
- ${PERL} -i -p -e "s^__PREFIX__^${DHISBASE}^g" ${WRKSRC}/INSTALL
- ${PERL} -i -p -e "s^__PREFIX__^${DHISBASE}^g" ${WRKSRC}/README
- @${ECHO} "===> Patching dhisd.h"
- ${PERL} -i -p -e "s^__PREFIX__^${DHISBASE}^g" ${WRKSRC}/dhisd.h
- @${ECHO} "===> Patching dhisd.sh"
- @${CP} ${FILESDIR}/dhisd.sh ${WRKSRC}
- ${PERL} -i -p -e "s^__PREFIX__^${PREFIX}^g" ${WRKSRC}/dhisd.sh
+ cd ${WRKSRC} && ${PERL} -i -p -e "s^__PREFIX__^${PREFIX}^g" \
+ Makefile dhisd.h ${DOCFILES}
do-install:
post-install:
-.for dir in ${DIRS}
- @${MKDIR} ${PREFIX}/${dir}
- @${CHMOD} 700 ${PREFIX}/${dir}
-.endfor
- ${INSTALL_PROGRAM} ${WRKSRC}/dhisd ${DHISBASE}/bin
- @${INSTALL_DATA} ${FILESDIR}/dhis.db ${DHISBASE}/db/dhis.db.sample
- @${ECHO} "dhis/bin/dhisd" >> ${TMPPLIST}
- @${ECHO} "dhis/db/dhis.db.sample" >> ${TMPPLIST}
- @${CHMOD} 600 ${PREFIX}/dhis/db/*
+ ${ECHO} "===> Installing ${PREFIX}/bin/dhisd."
+ ${INSTALL_PROGRAM} ${WRKSRC}/dhisd ${PREFIX}/bin
+ @${ECHO} "bin/dhisd" >> ${TMPPLIST}
+ ${ECHO} "===> Installing ${PREFIX}/bin/genkeys."
+ ${INSTALL_PROGRAM} ${WRKSRC}/genkeys ${PREFIX}/bin
+ @${ECHO} "bin/genkeys" >> ${TMPPLIST}
+ ${ECHO} "===> Creating ${PREFIX}/etc/dhis and installing sample db files."
+ @${MKDIR} ${PREFIX}/etc/dhis
+ @${CHMOD} 700 ${PREFIX}/etc/dhis
+ @${INSTALL_DATA} ${WRKSRC}/dhis.db.sample ${PREFIX}/etc/dhis/dhis.db.sample
+ @${ECHO} "etc/dhis/dhis.db.sample" >> ${TMPPLIST}
+ @${INSTALL_DATA} ${WRKSRC}/services.db.sample ${PREFIX}/etc/dhis/services.db.sample
+ @${ECHO} "etc/dhis/services.db.sample" >> ${TMPPLIST}
+ @${CHMOD} 600 ${PREFIX}/etc/dhis/*
+ @${ECHO} "@dirrm etc/dhis" >> ${TMPPLIST}
.if !exists(${PREFIX}/etc/rc.d/dhisd.sh)
${ECHO} "===> Installing ${PREFIX}/etc/rc.d/dhid.sh startup file."
- ${INSTALL_SCRIPT} -m 751 ${WRKSRC}/dhisd.sh ${PREFIX}/etc/rc.d/dhisd.sh
+ ${INSTALL_SCRIPT} -m 751 ${FILESDIR}/dhisd.sh ${PREFIX}/etc/rc.d/dhisd.sh
@${ECHO} "etc/rc.d/dhisd.sh" >> ${TMPPLIST}
.endif
.if !defined(NOPORTDOCS)
- @${MKDIR} ${DHISBASE}/doc
- @${INSTALL_DATA} ${WRKSRC}/README ${DHISBASE}/doc
- @${INSTALL_DATA} ${WRKSRC}/INSTALL ${DHISBASE}/doc
- @${CHMOD} 755 ${DHISBASE}/doc
- @${ECHO} "dhis/doc/README" >> ${TMPPLIST}
- @${ECHO} "dhis/doc/INSTALL" >> ${TMPPLIST}
- @${ECHO} "@dirrm dhis/doc" >> ${TMPPLIST}
-.endif
-.for dir in ${RDIRS}
- @${ECHO} "@dirrm ${dir}" >> ${TMPPLIST}
+ ${ECHO} "===> Installing documentation in ${DOCSDIR}"
+ @${MKDIR} ${DOCSDIR}
+ @${CHMOD} 755 ${DOCSDIR}
+.for DOCFILE in ${DOCFILES}
+ @${INSTALL_DATA} ${WRKSRC}/${DOCFILE} ${DOCSDIR}
+ @${ECHO} "share/doc/${PORTNAME}/${DOCFILE}" >> ${TMPPLIST}
.endfor
+ ${INSTALL_DATA} ${FILESDIR}/INSTALL.bsd ${DOCSDIR}
+ @${ECHO} "share/doc/${PORTNAME}/INSTALL.bsd" >> ${TMPPLIST}
+ @${ECHO} "@dirrm share/doc/${PORTNAME}" >> ${TMPPLIST}
+.endif
@${ECHO} "--------------------------------------------------------------------------"
@${ECHO} "Before dhisd can run, you will need configure BIND."
@${ECHO} ""
@${ECHO} "For more information, see the following site:"
- @${ECHO} "http://www.dhis.org/dhis/r4/server.html"
+ @${ECHO} "http://www.dhis.org/dhis/r5/"
.if !defined(NOPORTDOCS)
- @${ECHO} "or ${DHISBASE}/doc/"
+ @${ECHO} ""
+ @${ECHO} "or the files in ${DOCSDIR}"
+ @${ECHO} "Read INSTALL and INSTALL.bsd at least for the setup information of dhisd."
.endif
@${ECHO} ""
@${ECHO} "For information on this port, check the following site:"
diff --git a/net/dhisd/distinfo b/net/dhisd/distinfo
index 336a33f639b2..6e46dd780c70 100644
--- a/net/dhisd/distinfo
+++ b/net/dhisd/distinfo
@@ -1 +1 @@
-MD5 (dhisd-4.0.3.tar.gz) = 1882f5296856c439dd5115f1b9170bbc
+MD5 (dhisd-5.1.tar.gz) = 7cbae9ef404570d72a491d59c596abe7
diff --git a/net/dhisd/files/INSTALL.bsd b/net/dhisd/files/INSTALL.bsd
new file mode 100644
index 000000000000..71cc9bf75320
--- /dev/null
+++ b/net/dhisd/files/INSTALL.bsd
@@ -0,0 +1,59 @@
+
+Install instructions for DHIS server rel5.1 for FreeBSD
+=======================================================
+
+dhisd is the DHIS server, meant to permit updating external
+databases with dynamically assiged IP addresses to clients.
+
+In order to build the dhisd server the following requirements must
+be met:
+
+ The machine must be permanently connected to the internet
+ with a static IP address.
+
+ The machine which will act as a server should be running
+ a distribution of UNIX or similar system.
+
+
+For full information, read the INSTALL file in /usr/local/share/doc/dhisd
+
+Setting up the server
+
+ Create the database file which will hold information for
+ current dynamic hosts:
+
+ Change directory to /usr/local/etc/dhis
+
+ Create a text file named dhis.db with a text editor.
+ You can copy the dhis.db.sample to dhis.db as a starting point.
+
+ Change the permissions as you wish. In particular dhis.db
+ should not be readable by anyone. Suggested example:
+
+ chmod 700 /usr/local/etc/dhis /usr/local/etc/dhis/*
+ chmod 600 /usr/local/etc/dhis/dhis.db
+
+ Now create /usr/local/etc/dhis/services.db
+
+ As before, you can copy the included services.db.sample as a
+ starting point.
+
+ Insert one line per module implemented. See MODULES for a
+ detailed description of the modular architecture and
+ services.db format.
+
+ See the README file for more information on the server
+ and MODULES for information on the new modular structure
+ of the server.
+
+ For starting the server, you can use the following script:
+
+ /usr/local/etc/rc.d/dhis.sh
+
+ It has the following options:
+ start start the server
+ restart restart the server (after changing the db)
+ stop stop the server
+
+ And that's it. The DHIS server is installed.
+
diff --git a/net/dhisd/files/dhis.db b/net/dhisd/files/dhis.db
deleted file mode 100644
index c0e821458337..000000000000
--- a/net/dhisd/files/dhis.db
+++ /dev/null
@@ -1,13 +0,0 @@
-1001 {
- hostname dyn1.example.com
- hostpass password
- }
-
-1002 {
- hostname dyn2.example.com
- authn 32934593845689467748967498674789585769453
- authn 56456894768497649867849769487659847684977
- authn 22389472897348957348957389457894375849573
- authn 23459435734957398753489573495743985743985
- }
-
diff --git a/net/dhisd/files/dhisd.sh b/net/dhisd/files/dhisd.sh
index 7847c5c6e9e0..0bbedca45dce 100644
--- a/net/dhisd/files/dhisd.sh
+++ b/net/dhisd/files/dhisd.sh
@@ -2,13 +2,16 @@
case "$1" in
start)
- [ -x "__PREFIX__/dhis/bin/dhisd" ] && __PREFIX__/dhis/bin/dhisd > /dev/null && echo -n ' dhisd'
+ [ -x "__PREFIX__/bin/dhisd" ] && __PREFIX__/bin/dhisd > /dev/null && echo -n ' dhisd'
+ ;;
+restart)
+ killall -HUP dhisd && echo -n 'dhisd restarted'
;;
stop)
killall dhisd && echo -n ' dhisd'
;;
*)
- echo "Usage: `basename $0` {start|stop}" >&2
+ echo "Usage: `basename $0` {start|restart|stop}" >&2
;;
esac
diff --git a/net/dhisd/files/patch-INSTALL b/net/dhisd/files/patch-INSTALL
index 495cbe513b52..e4ad1c84c15b 100644
--- a/net/dhisd/files/patch-INSTALL
+++ b/net/dhisd/files/patch-INSTALL
@@ -1,6 +1,17 @@
---- INSTALL.orig Sun May 7 19:35:19 2000
-+++ INSTALL Mon Feb 26 01:00:37 2001
-@@ -87,17 +87,17 @@
+--- INSTALL.orig Sun Nov 4 21:47:45 2001
++++ INSTALL Sun Nov 4 22:09:55 2001
+@@ -50,28 +50,25 @@
+ 2. Install stage
+ ----------------
+
+- In this installation we will use /etc/dhis as the default
+- base directory for the server. Another directory may be
+- used in which case file location command line options must
+- be given to dhisd when executing.
++ In this installation we will use __PREFIX__/etc/dhis
++ as the default base directory for the server. Another
++ directory may be used in which case file location command
++ line options must be given to dhisd when executing.
Create the directories:
@@ -9,83 +20,55 @@
- /etc/dhis/pid
- /etc/dhis/db
- /etc/dhis/log
-- /etc/dhis/script
-+ __PREFIX__
-+ __PREFIX__/bin
-+ __PREFIX__/pid
-+ __PREFIX__/db
-+ __PREFIX__/log
-+ __PREFIX__/script
++ __PREFIX__/etc/dhis
-- You may wish to create /etc/dhis/src and put dhisd-4.0 under
-+ You may wish to create __PREFIX__/src and put dhisd-4.0 under
- this directory.
+- You may wish to create /etc/dhis/src and put dhisd-5.1 under
+- this directory.
++ You may wish to create __PREFIX__/etc/dhis/src and put
++ dhisd-5.1 under this directory.
- Copy dhisd to /etc/dhis/bin . This is the server binary.
-+ Copy dhisd to __PREFIX__/bin . This is the server binary.
++ Copy dhisd to __PREFIX__/bin.
++ This is the server binary.
Create the database file which will hold information for
- current dynamic hosts. For this installation let us assume
-@@ -105,7 +105,7 @@
- example.com, and that we wish to create 3 dynamic hosts
- named dyn1.example.com, dyn2.example.com and dyn3.example.com
+ current dynamic hosts:
- Change directory to /etc/dhis/db
-+ Change directory to __PREFIX__/db
++ Change directory to __PREFIX__/etc/dhis
Create a text file named dhis.db with a text editor.
- The file should have three lines, one for each dynamic host.
-@@ -179,20 +179,20 @@
+
+@@ -162,19 +159,19 @@
Change the permissions as you wish. In particular dhis.db
should not be readable by anyone. Suggested example:
- chmod 700 /etc/dhis /etc/dhis/*
- chmod 600 /etc/dhis/db/dhis.db
-+ chmod 700 __PREFIX__ __PREFIX__/*
-+ chmod 600 __PREFIX__/db/dhis.db
++ chmod 700 __PREFIX__/etc/dhis __PREFIX__/etc/dhis/*
++ chmod 600 __PREFIX__/etc/dhis/dhis.db
Add dhisd to your system's startup script
(rc.local for BSD systems, SXXdhis under /etc/rc2.d
for System V). A simple line such as
- /etc/dhis/bin/dhisd
-+ __PREFIX__/bin/dhisd
-
- will do. However, if your service will provide mail
- relaying as well you must specify the relay's IP address,
- in which case the line should look like:
-
-- /etc/dhis/bin/dhisd -m y.y.y.y
-+ __PREFIX__/bin/dhisd -m y.y.y.y
-
- where y.y.y.y is the IP address of the mail relay (may be
- the same host). Check the relay-4.0.tar.gz distribution
-@@ -209,7 +209,7 @@
- present, the relay machine is identified by relay.example.com.
- Again, these may point to the same machine.
-
-- Edit /etc/named.conf and add a section such as:
-+ Edit /etc/named/named.conf and add a section such as:
++ /usr/local/bin/dhisd
- zone "example.com" in {
+ will do.
-@@ -277,8 +277,8 @@
- DNS is now running and accepting dynamic updates.
-
-- You may also run /etc/dhis/bin/dhisd or
-- /etc/dhis/bin/dhisd -m y.y.y.y manually by now if
-+ You may also run __PREFIX__/bin/dhisd or
-+ __PREFIX__/bin/dhisd -m y.y.y.y manually by now if
- you wish to run DHIS at once.
-
- 4. Adding Records
-@@ -301,7 +301,7 @@
-
- run
+- Now create /etc/dhis/db/services.db
++ Now create __PREFIX__/etc/dhis/services.db
+
+ Insert one line per module implemented. See MODULES
+ for a detailed description of the modular architecture
+@@ -187,7 +184,7 @@
+ and MODULES for information on the new modular structure
+ of the server.
-- kill -HUP `cat /etc/dhis/pid/dhisd.pid`
-+ kill -HUP `cat __PREFIX__/pid/dhisd.pid`
+- You may also run /etc/dhis/bin/dhisd now if you wish to
++ You may also run __PREFIX__/bin/dhisd now if you wish to
+ run DHIS at once.
- to reload the DHIS database.
diff --git a/net/dhisd/files/patch-MODULES b/net/dhisd/files/patch-MODULES
new file mode 100644
index 000000000000..ea15d2d08a75
--- /dev/null
+++ b/net/dhisd/files/patch-MODULES
@@ -0,0 +1,63 @@
+--- MODULES.orig Sun Nov 4 21:51:27 2001
++++ MODULES Sun Nov 4 21:51:19 2001
+@@ -14,8 +14,9 @@
+ to update DNS, to update a tunneling service, to update a firewall, etc ...
+ based on a dynamically changing IP address from its clients.
+
+-The new server has an additional database (by default /etc/dhis/db/services.db)
+-containing the list of support services (modules).
++The new server has an additional database (by default
++__PREFIX__/etc/dhis/services.db) containing the list of
++support services (modules).
+
+ In order to run dhisd >= 5 you will need to create and configure this
+ file first.
+@@ -24,13 +25,14 @@
+ ---------------------------------------
+
+ When executed the DHIS server reads its client's database (by default from
+-/etc/dhis/db/dhis.db) into memory and proceeds to listening mode on a UDP
+-port (by default 58800). When messages arrive the server responds accordingly,
+-authenticates the clients (based on the keys and information loaded from the
+-database) and marks them online. Furthermore the server keeps sending periodic
+-checks to each and every client in order to verify that these are still
+-connected. If a particular client fails to reply the server will consider it
+-offline and mark it accordingly.
++__PREFIX__/etc/dhis/db/dhis.db) into memory and proceeds to listening
++mode on a UDP port (by default 58800). When messages arrive the server
++responds accordingly, authenticates the clients (based on the keys and
++information loaded from the database) and marks them online. Furthermore
++the server keeps sending periodic checks to each and every client in
++order to verify that these are still connected. If a particular client
++fails to reply the server will consider it offline and mark it
++accordingly.
+
+ Each client is identified to a server by a single ID number called the HostID.
+ The new modular structure implements a means to mark these hosts online and
+@@ -61,11 +63,10 @@
+ command - the module engine process command to be executed
+
+
+-Example of /etc/dhis/db/services.db
+------------------------------------
+-
+-Before executing dhisd ensure to have created a valid /etc/dhis/db/services.db
+-file.
++Example of __PREFIX__/etc/dhis/db/services.db
++-------------------------------------------------------------------------------
++Before executing dhisd ensure to have created a valid
++__PREFIX__/etc/dhis/services.db file.
+
+ The syntax for the file is as follows:
+
+@@ -76,8 +77,8 @@
+
+ ;------------------------------------------------------------------------------
+ ; This is a comment line
+-dns 4 /etc/dhis/bin/dhis-dns-engine
+-fw 2 /etc/dhis/bin/dhis-fw-engine
++dns 4 __PREFIX__/etc/dhis/dhis-dns-engine
++fw 2 __PREFIX__/etc/dhis/dhis-fw-engine
+ ;------------------------------------------------------------------------------
+
+ Inter-process communication for modules:
diff --git a/net/dhisd/files/patch-Makefile b/net/dhisd/files/patch-Makefile
index 5c6758a9c8f5..0ed1c068d789 100644
--- a/net/dhisd/files/patch-Makefile
+++ b/net/dhisd/files/patch-Makefile
@@ -1,24 +1,11 @@
---- Makefile.orig Wed Mar 7 11:53:58 2001
-+++ Makefile Mon Mar 19 17:43:57 2001
-@@ -26,16 +26,16 @@
- # DHIS(c) Dynamic Host Information System Release 4.0
+--- Makefile.orig Sun Nov 4 20:48:12 2001
++++ Makefile Sun Nov 4 20:49:08 2001
+@@ -30,7 +30,7 @@
+ LFLAGS=-L/usr/local/lib
+ CP=cp
- CC=gcc
--CFLAGS=-I/usr/local/include -I/usr/bind/include \
-- -I/usr/local/bind/include # -DBIND821
--LFLAGS=-L/usr/local/lib -L/usr/bind/lib -L/usr/local/bind/lib
--LIBS=-lnsl -lsocket -lbind -lgmp
-+CFLAGS=-I/usr/local/include -DHAVE_SYS_PARAM_H
-+LFLAGS=-L/usr/local/lib
-+LIBS=-lgmp
- OBJS=log.o network.o misc.o db.o online.o nsupdate.o main.o
- RM=rm -f
-
-+all: dhisd
-+
- dhisd: $(OBJS)
- $(CC) $(LFLAGS) -o dhisd $(OBJS) $(LIBS)
-- strip dhisd
-
- clean:
- $(RM) *.core core dhisd *.o
+-INSTALLDIR=/etc/dhis/bin
++INSTALLDIR=__PREFIX__/sbin
+ MODE=700
+ OWNER=root
+ MKDIR=mkdir -p
diff --git a/net/dhisd/files/patch-README b/net/dhisd/files/patch-README
index 2a7fed26476c..2910e3e04ab2 100644
--- a/net/dhisd/files/patch-README
+++ b/net/dhisd/files/patch-README
@@ -1,30 +1,49 @@
---- README.orig Sun Apr 30 18:51:47 2000
-+++ README Mon Feb 26 00:55:38 2001
-@@ -29,7 +29,8 @@
- would result in non-existent host. Thus, the presence of
- an IP address, even while offline, is essencial.
-
-- The DHIS server dhisd runs a database file (/etc/dhis/db/dhis.db)
-+ The DHIS server dhisd runs a database file
-+ (__PREFIX__/db/dhis.db)
- and loads the current list of dynamic hosts into memory.
- Furthermore it expects datagram packets to be received on
- port 58800 from the connecting clients running dhid.
-@@ -91,7 +92,7 @@
+--- README.orig Sun Nov 4 21:47:55 2001
++++ README Sun Nov 4 22:15:04 2001
+@@ -146,7 +146,7 @@
dhisd accepts HUP and TERM signals. A kill -HUP will
make it reload the hosts database and kill -TERM
- will terminate it. Its pid number is recorded on the
-- text file /etc/dhis/pid/dhisd.pid.
-+ text file __PREFIX__/pid/dhisd.pid.
+ will terminate it. Its pid number is recorded a the
+- text file (default: /etc/dhis/pid/dhisd.pid)
++ text file (default: /var/pid/dhisd.pid)
- The current DHIS server is expected to perform well
- on a 100Mhz machine with up to 5000 dynamic hosts.
-@@ -99,7 +100,7 @@
- users.
+ Before terminating with SIGTERM dhisd will attempt to bring all
+ online clients offline.
+@@ -155,7 +155,7 @@
+ ========
- dhisd logs online and offline transitions at
-- /etc/dhis/log/dhisd.log
-+ __PREFIX__/log/dhisd.log
+ dhisd logs online and offline transitions on a text file
+- (default: /etc/dhis/log/dhisd.log)
++ (default: /var/log/dhisd.log)
+ Command Line Options:
+ =====================
+@@ -175,12 +175,12 @@
+
+ -d <dbase_file> allows specifying a path for the database file
- Firewall considerations:
+- e.g. dhisd -d /usr/local/etc/dhis.db
++ e.g. dhisd -d /usr/local/etc/dhis/dhis.db
+
+ -s <service_file> allows specifying a path for the services
+ file.
+
+- e.g. dhisd -s /usr/local/etc/services.db
++ e.g. dhisd -s /usr/local/etc/dhis/services.db
+
+ All options may be used in conjunction.
+
+@@ -327,11 +327,11 @@
+
+ 1000 {
+ hostpass something
+- oncmd /etc/oncmd
++ oncmd /usr/local/etc/dhis/oncmd
+ }
+
+
+- # /etc/oncmd
++ # /usr/local/etc/dhis/oncmd
+ #!/bin/sh
+ #
+ echo I am $1 online now at $2
diff --git a/net/dhisd/files/patch-dhisd.h b/net/dhisd/files/patch-dhisd.h
index 6280c561a479..0adddde3844a 100644
--- a/net/dhisd/files/patch-dhisd.h
+++ b/net/dhisd/files/patch-dhisd.h
@@ -1,15 +1,17 @@
---- dhisd.h.orig Mon Mar 13 18:08:04 2000
-+++ dhisd.h Mon Feb 26 01:03:00 2001
-@@ -62,9 +62,9 @@
+--- dhisd.h.orig Sun Nov 4 20:50:14 2001
++++ dhisd.h Sun Nov 4 20:51:05 2001
+@@ -64,10 +64,10 @@
+ #define CHECK_FAILS 3 /* maximum check fails */
- #define MX_PORT 58801
#define DHISD_PORT 58800
-#define DHISD_PID "/etc/dhis/pid/dhisd.pid"
-#define DHISD_DB "/etc/dhis/db/dhis.db"
-#define DHISD_LOG "/etc/dhis/log/dhisd.log"
-+#define DHISD_PID "__PREFIX__/pid/dhisd.pid"
-+#define DHISD_DB "__PREFIX__/db/dhis.db"
-+#define DHISD_LOG "__PREFIX__/log/dhisd.log"
+-#define DHISD_SERVICES "/etc/dhis/db/services.db"
++#define DHISD_PID "/var/run/dhisd.pid"
++#define DHISD_DB "__PREFIX__/etc/dhis/dhis.db"
++#define DHISD_LOG "/var/log/dhisd.log"
++#define DHISD_SERVICES "__PREFIX__/etc/dhis/services.db"
#define MAX_HOSTNAME 64
#define MAX_PASS 16
diff --git a/net/dhisd/files/patch-nsupdate.c b/net/dhisd/files/patch-nsupdate.c
deleted file mode 100644
index 53e73f5ca19a..000000000000
--- a/net/dhisd/files/patch-nsupdate.c
+++ /dev/null
@@ -1,31 +0,0 @@
---- nsupdate.c.orig Mon Mar 19 22:23:40 2001
-+++ nsupdate.c Mon Mar 19 22:55:46 2001
-@@ -28,8 +28,17 @@
-
-
- #include"dhisd.h"
--#ifndef BIND821
--#include <res_update.h>
-+
-+#ifdef HAVE_SYS_PARAM_H
-+#include <sys/param.h>
-+#endif
-+
-+#if (defined(BSD) && (BSD >= 199306))
-+# include <arpa/nameser.h>
-+#else
-+# if !defined BIND821
-+# include <res_update.h>
-+# endif
- #endif
-
- int dns_update(unsigned char *r_dname,int r_opcode,short int r_type,
-@@ -53,7 +62,7 @@
- rrecp->r_size=r_size;
- if(r_size>0) strcpy(rrecp->r_data,r_data);
-
--#ifndef BIND821
-+#if !defined(BIND821) && !defined(BSD)
- rrecp->r_link.prev=NULL;
- rrecp->r_link.next=NULL;
- #else
diff --git a/net/dhisd/pkg-plist b/net/dhisd/pkg-plist
index 8b137891791f..b449049a5cdf 100644
--- a/net/dhisd/pkg-plist
+++ b/net/dhisd/pkg-plist
@@ -1 +1 @@
-
+@comment Left empty, filled during post-install by Makefile