Zone parser in source code?

Michael Kjorling michael at
Fri Feb 8 00:54:30 UTC 2002

Hash: SHA1

Well, I am not a BIND developer, but I have a question - if your
knowledge of C is this poor (no offense, people know different things)
then you might be much better off reading the relevant RFCs and
working your way from there.

As for record continuation beyond newlines, I _think_ it goes like

(1) If a left parenthesis '(' is found surrounded by whitespace, turn
off newline checking (interpret newlines as spaces) and otherwise
ignore it,
(2) If a right parenthesis ')' is found surrounded by whitespace and
newline checking is off, turn it back on and otherwise ignore it -
otherwise (not surrounded by whitespace) treat it in the same way any
other data would at that position (subject to RRname completion et all)
(3) If parenthesises are found but not surrounded by whitespace, treat
them as any other data at that position (see (2))

But again, the RFCs is the authorative source.

Michael Kjörling

On Feb 7 2002 19:29 -0500, Justin Scott wrote:

> Hey all..  perhaps one of the developers can help me out here..
> I am in the process of writing a zone parser in ColdFusion for a web
> application I am building.  I have a fairly working parser in place, but it
> is unable to handle some of the features that can be contained in zone files
> (such as records spanning multiple lines, etc).  What I'd like to do is
> examine the portion of the BIND source code that actually open a zone file
> and reads its contents into memory to help me understand how the process is
> actually executed.
> I have downloaded the BIND 9.2.0 source code, but I'm having trouble
> locating the exact location of the "parser."  Since I don't know C (that's
> what it's written in, right?) it makes this even more difficult.  I'm
> thinking it has something to do with the "dns_master_loadfile" function, but
> when I traced that, it just called a bunch of other functions that I am
> unable to locate.
> Any assistance in locating the portion of the source code I'm looking for
> would be appreciated.
> -Justin Scott, Lead Developer
>  Sceiron Internet Services, Inc.

- -- 
Michael Kjörling  --  Programmer/Network administrator  ^..^
Internet: michael at -- FidoNet: 2:204/254.4   \/
PGP: 95f1 074d 336d f8f0 f297 6a5b 2aa3 7bfd 8a70 e33e

``And indeed people sometimes speak of man's "bestial" cruelty, but
this is very unfair and insulting to the beasts: a beast can never be
so cruel as a man, so ingeniously, so artistically cruel.''
(Ivan Karamazov, in Dostoyevsky's 'The Brothers Karamazov')

*** Thinking about sending me spam? Take a close look at
*** before doing so.
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: Public key is at


More information about the bind-users mailing list