Your message dated Fri, 4 Jan 2008 14:18:20 +0100
with message-id <[EMAIL PROTECTED]>
has caused the Debian Bug report #458862,
regarding dhis-server: Having commented out client records seems to cause dhisd
to become confused
to be marked as having been forwarded to the upstream software
author(s) Joao Cabral <[EMAIL PROTECTED]>.
(NB: If you are a system administrator and have no idea what I am
talking about this indicates a serious mail system misconfiguration
somewhere. Please contact me immediately.)
Debian bug tracking system administrator
(administrator, Debian Bugs database)
--- Begin Message ---
Hello Joao,
A user of the Debian package of the DHIS server had a problem with the
parsing of his dhis.db file (see attached email). The sample dhis.db
file included in the tarball uses the ; character to indicate comments.
However, looking through db.c, I do not see any code that explicitly
looks for the ; character. Instead, it just ignores everything until it
finds a line where the second word is {. It then blindly uses atoi() on
the first word to get the id, and then tries to parse the rest of the
lines as if they are part of a record, and again ignores everything out
of the ordinary. An example of a dhis.db file that does not generate any
errors from dhisd but is interpreted completely wrong:
;1000 {
; hostpass 12345
;}
1001 {
hsotpass 54321
}
The above is, with the current parser, equivalent to:
0 {
}
Perhaps it is better to explicitly check for ; at the start of a line,
and only then ignore the rest, and on other lines complain if something
out of the ordinary is encountered.
--
Met vriendelijke groet / with kind regards,
Guus Sliepen <[EMAIL PROTECTED]>
--- Begin Message ---
Package: dhis-server
Version: 5.2-2
Severity: normal
I've been suffering with wierd behaviour of dhis for some time, the
main symptom being that some clients seem unable to cause DNS updates,
despite being shown as up coming up in the dhisd.log.
Today I turned on verbose logging in dhisengine.pl (from Dan Mahoney
dated 9/25/2002) and it reveals that it's doing DNS updates for a host
that is comented out, and not bothering with the record that matches
the active client.
Here's the (slightly doctored) config file:
=-=-=-=-=-=-
;
; DHIS R5 Server Clients Database
;
; A sample DHIS database file for a DHIS server
; can be found in /usr/share/doc/dhis-server/examples.
;1000 {
; hostname testrig.dyn.hands.com
; AuthN 12345678901234567890123456789012345678901234567890
; AuthN 12345678901234567890123456789012345678901234567890
; AuthN 12345678901234567890123456789012345678901234567890
; AuthN 12345678901234567890123456789012345678901234567890
; contact Philip Hands
; email [EMAIL PROTECTED]
; service dns
;}
;1001 {
; hostname sf.dyn.hands.com
; AuthN 12345678901234567890123456789012345678901234567890
; AuthN 12345678901234567890123456789012345678901234567890
; AuthN 12345678901234567890123456789012345678901234567890
; AuthN 12345678901234567890123456789012345678901234567890
; contact Phil Hands
; email [EMAIL PROTECTED]
; service dns
;}
1002 {
hostname donlex.dyn.hands.com
AuthN 12345678901234567890123456789012345678901234567890
AuthN 12345678901234567890123456789012345678901234567890
AuthN 12345678901234567890123456789012345678901234567890
AuthN 12345678901234567890123456789012345678901234567890
contact Don
email [EMAIL PROTECTED]
service dns
}
1003 {
hostname red.dyn.hands.com
AuthN 12345678901234567890123456789012345678901234567890
AuthN 12345678901234567890123456789012345678901234567890
AuthN 12345678901234567890123456789012345678901234567890
AuthN 12345678901234567890123456789012345678901234567890
contact Philip Hands
email [EMAIL PROTECTED]
service dns
service relay
}
;1004 {
; hostname slc.dyn.hands.com
; AuthN 12345678901234567890123456789012345678901234567890
; AuthN 12345678901234567890123456789012345678901234567890
; AuthN 12345678901234567890123456789012345678901234567890
; AuthN 12345678901234567890123456789012345678901234567890
; contact Philip Hands
; email [EMAIL PROTECTED]
; service dns
;}
;1005 {
; hostname pmhq.dyn.hands.com
; AuthN 12345678901234567890123456789012345678901234567890
; AuthN 12345678901234567890123456789012345678901234567890
; AuthN 12345678901234567890123456789012345678901234567890
; AuthN 12345678901234567890123456789012345678901234567890
; contact Philip Hands
; email [EMAIL PROTECTED]
; service dns
;}
;1006 {
; hostname mw.dyn.hands.com
; AuthN 12345678901234567890123456789012345678901234567890
; AuthN 12345678901234567890123456789012345678901234567890
; AuthN 12345678901234567890123456789012345678901234567890
; AuthN 12345678901234567890123456789012345678901234567890
; contact Philip Hands
; email [EMAIL PROTECTED]
; service dns
;}
;1007 {
; hostname pmpod.dyn.hands.com
; contact Philip Hands
; AuthN 12345678901234567890123456789012345678901234567890
; AuthN 12345678901234567890123456789012345678901234567890
; AuthN 12345678901234567890123456789012345678901234567890
; AuthN 12345678901234567890123456789012345678901234567890
; email [EMAIL PROTECTED]
; service dns
;}
;1008 {
; hostname djh.dyn.hands.com
; contact Philip Hands
; AuthN 12345678901234567890123456789012345678901234567890
; AuthN 12345678901234567890123456789012345678901234567890
; AuthN 12345678901234567890123456789012345678901234567890
; AuthN 12345678901234567890123456789012345678901234567890
; email [EMAIL PROTECTED]
; service dns
;}
1009 {
hostname simon.dyn.hands.com
contact Philip Hands
AuthN 12345678901234567890123456789012345678901234567890
AuthN 12345678901234567890123456789012345678901234567890
AuthN 12345678901234567890123456789012345678901234567890
AuthN 12345678901234567890123456789012345678901234567890
email [EMAIL PROTECTED]
service dns
service relay
}
;1010 {
; hostname isd.dyn.hands.com
; contact Philip Hands
; AuthN 12345678901234567890123456789012345678901234567890
; AuthN 12345678901234567890123456789012345678901234567890
; AuthN 12345678901234567890123456789012345678901234567890
; AuthN 12345678901234567890123456789012345678901234567890
; email [EMAIL PROTECTED]
; service dns
;}
;1011 {
; hostname luke.dyn.hands.com
; contact Luke Kenneth Casson Leighton
; AuthN 12345678901234567890123456789012345678901234567890
; AuthN 12345678901234567890123456789012345678901234567890
; AuthN 12345678901234567890123456789012345678901234567890
; AuthN 12345678901234567890123456789012345678901234567890
; email [EMAIL PROTECTED]
; service dns
;}
1012 {
hostname britcrop.dyn.hands.com
contact Philip Hands
authn 12345678901234567890123456789012345678901234567890
authn 12345678901234567890123456789012345678901234567890
authn 12345678901234567890123456789012345678901234567890
authn 12345678901234567890123456789012345678901234567890
email [EMAIL PROTECTED]
service dns
service relay
}
=-=-=-=-=-=-
The client that was really logging on was 1003, but the DNS record that
was being updated with its address was djh.dyn.hands.com so at first
glance it would seem to be reading the commented lines for hostnames,
and using the last one it sees before the next uncommented section.
BTW before I doctored the file, the keys for 1003 and 1008 were different
(as were all the others from one another).
Having deleted all the comented sections, it's now working perfectly
again.
-- System Information:
Debian Release: 4.0
APT prefers stable
APT policy: (500, 'stable')
Architecture: i386 (i686)
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.17-free
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
Versions of packages dhis-server depends on:
ii libc6 2.3.6.ds1-13etch4 GNU C Library: Shared libraries
ii libgmp3c2 2:4.2.1+dfsg-4 Multiprecision arithmetic library
Versions of packages dhis-server recommends:
ii dhis-dns-engine 5.1-1 Dynamic Host Information System -
ii dhis-tools-dns 5.0-5 Dynamic Host Information System -
-- no debconf information
--- End Message ---
signature.asc
Description: Digital signature
--- End Message ---