summaryrefslogtreecommitdiff
path: root/win32utils
diff options
context:
space:
mode:
authorInternet Software Consortium, Inc <@isc.org>2007-09-07 14:13:49 -0600
committerLaMont Jones <lamont@debian.org>2007-09-07 14:13:49 -0600
commit145708f190bab1a282c04698db8f36f614ae7ac0 (patch)
treec56976d39ff8a40fff16ad71cd4620eabfe807e4 /win32utils
parent34691e625b8862a666f95b0ee39c10156ae6b9c6 (diff)
downloadbind9-145708f190bab1a282c04698db8f36f614ae7ac0.tar.gz
9.2.0b2
Diffstat (limited to 'win32utils')
-rw-r--r--win32utils/BINDBuild.dsw356
-rw-r--r--win32utils/BuildAll.bat121
-rw-r--r--win32utils/BuildSetup.bat43
-rw-r--r--win32utils/dnsheadergen.bat26
-rw-r--r--win32utils/makedefs.pl149
-rw-r--r--win32utils/makeversion.pl123
-rw-r--r--win32utils/readme1st.txt80
-rw-r--r--win32utils/win32-build.txt103
8 files changed, 1001 insertions, 0 deletions
diff --git a/win32utils/BINDBuild.dsw b/win32utils/BINDBuild.dsw
new file mode 100644
index 00000000..0cc1e0b3
--- /dev/null
+++ b/win32utils/BINDBuild.dsw
@@ -0,0 +1,356 @@
+Microsoft Developer Studio Workspace File, Format Version 6.00
+# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
+
+###############################################################################
+
+Project: "BINDInstall"=..\bin\win32\BINDInstall\BINDInstall.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+}}}
+
+###############################################################################
+
+Project: "bindevt"=..\lib\win32\bindevt\bindevt.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+}}}
+
+###############################################################################
+
+Project: "dig"=..\bin\dig\win32\dig.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+ Begin Project Dependency
+ Project_Dep_Name libdns
+ End Project Dependency
+ Begin Project Dependency
+ Project_Dep_Name libisc
+ End Project Dependency
+}}}
+
+###############################################################################
+
+Project: "host"=..\bin\dig\win32\host.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+ Begin Project Dependency
+ Project_Dep_Name libdns
+ End Project Dependency
+ Begin Project Dependency
+ Project_Dep_Name libisc
+ End Project Dependency
+}}}
+
+###############################################################################
+
+Project: "keygen"=..\bin\dnssec\win32\keygen.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+ Begin Project Dependency
+ Project_Dep_Name libdns
+ End Project Dependency
+ Begin Project Dependency
+ Project_Dep_Name libisc
+ End Project Dependency
+}}}
+
+###############################################################################
+
+Project: "libdns"=..\lib\dns\win32\libdns.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+ Begin Project Dependency
+ Project_Dep_Name libisc
+ End Project Dependency
+}}}
+
+###############################################################################
+
+Project: "libisc"=..\lib\isc\win32\libisc.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+}}}
+
+###############################################################################
+
+Project: "libisccc"=..\lib\isccc\win32\libisccc.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+ Begin Project Dependency
+ Project_Dep_Name libisc
+ End Project Dependency
+}}}
+
+###############################################################################
+
+Project: "libisccfg"=..\lib\isccfg\win32\libisccfg.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+ Begin Project Dependency
+ Project_Dep_Name libisc
+ End Project Dependency
+}}}
+
+###############################################################################
+
+Project: "liblwres"=..\lib\lwres\win32\liblwres.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+}}}
+
+###############################################################################
+
+Project: "makekeyset"=..\bin\dnssec\win32\makekeyset.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+ Begin Project Dependency
+ Project_Dep_Name libdns
+ End Project Dependency
+ Begin Project Dependency
+ Project_Dep_Name libisc
+ End Project Dependency
+}}}
+
+###############################################################################
+
+Project: "named"=..\bin\named\win32\named.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+ Begin Project Dependency
+ Project_Dep_Name libdns
+ End Project Dependency
+ Begin Project Dependency
+ Project_Dep_Name libisc
+ End Project Dependency
+ Begin Project Dependency
+ Project_Dep_Name libisccc
+ End Project Dependency
+ Begin Project Dependency
+ Project_Dep_Name libisccfg
+ End Project Dependency
+ Begin Project Dependency
+ Project_Dep_Name liblwres
+ End Project Dependency
+}}}
+
+###############################################################################
+
+Project: "namedcheckconf"=..\bin\check\win32\namedcheckconf.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+ Begin Project Dependency
+ Project_Dep_Name libisc
+ End Project Dependency
+ Begin Project Dependency
+ Project_Dep_Name libisccfg
+ End Project Dependency
+}}}
+
+###############################################################################
+
+Project: "namedcheckzone"=..\bin\check\win32\namedcheckzone.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+ Begin Project Dependency
+ Project_Dep_Name libdns
+ End Project Dependency
+ Begin Project Dependency
+ Project_Dep_Name libisc
+ End Project Dependency
+}}}
+
+###############################################################################
+
+Project: "nslookup"=..\bin\dig\win32\nslookup.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+ Begin Project Dependency
+ Project_Dep_Name libdns
+ End Project Dependency
+ Begin Project Dependency
+ Project_Dep_Name libisc
+ End Project Dependency
+}}}
+
+###############################################################################
+
+Project: "nsupdate"=..\bin\nsupdate\win32\nsupdate.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+ Begin Project Dependency
+ Project_Dep_Name libdns
+ End Project Dependency
+ Begin Project Dependency
+ Project_Dep_Name libisc
+ End Project Dependency
+}}}
+
+###############################################################################
+
+Project: "rndc"=..\bin\rndc\win32\rndc.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+ Begin Project Dependency
+ Project_Dep_Name libdns
+ End Project Dependency
+ Begin Project Dependency
+ Project_Dep_Name libisc
+ End Project Dependency
+ Begin Project Dependency
+ Project_Dep_Name libisccc
+ End Project Dependency
+ Begin Project Dependency
+ Project_Dep_Name libisccfg
+ End Project Dependency
+ Begin Project Dependency
+ Project_Dep_Name liblwres
+ End Project Dependency
+}}}
+
+###############################################################################
+
+Project: "rndcconfgen"=..\bin\rndc\win32\confgen.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+}}}
+
+###############################################################################
+
+Project: "signkey"=..\bin\dnssec\win32\signkey.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+ Begin Project Dependency
+ Project_Dep_Name libdns
+ End Project Dependency
+ Begin Project Dependency
+ Project_Dep_Name libisc
+ End Project Dependency
+}}}
+
+###############################################################################
+
+Project: "signzone"=..\bin\dnssec\win32\signzone.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+ Begin Project Dependency
+ Project_Dep_Name libdns
+ End Project Dependency
+ Begin Project Dependency
+ Project_Dep_Name libisc
+ End Project Dependency
+}}}
+
+###############################################################################
+
+Global:
+
+Package=<5>
+{{{
+}}}
+
+Package=<3>
+{{{
+}}}
+
+###############################################################################
+
diff --git a/win32utils/BuildAll.bat b/win32utils/BuildAll.bat
new file mode 100644
index 00000000..d1aa372b
--- /dev/null
+++ b/win32utils/BuildAll.bat
@@ -0,0 +1,121 @@
+echo off
+rem
+rem Copyright (C) 2001 Internet Software Consortium.
+rem
+rem Permission to use, copy, modify, and distribute this software for any
+rem purpose with or without fee is hereby granted, provided that the above
+rem copyright notice and this permission notice appear in all copies.
+rem
+rem THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
+rem DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
+rem IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
+rem INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
+rem INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
+rem FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
+rem NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
+rem WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+rem BuildAll.bat
+rem This script sets up the files necessary ready to build BIND 9
+rem and then builds all of the binaries that make up the installation kit.
+rem This requires perl to be installed on the system.
+
+rem IMPORTANT NOTE:
+rem OpenSSL is a prerequisite for building and running this release of
+rem BIND 9. You must fetch the OpenSSL sources yourself from
+rem http://www.OpenSSL.org/ and compile it yourself. The code must reside
+rem at the same level as the bind 9.2.0 source tree and it's top-level
+rem directory be named openssl-0.9.6b. This restriction will be lifted in
+rem a future release of BIND 9 for Windows NT/2000/XP.
+
+echo Setting up the BIND files required for the build
+
+call BuildSetup.bat
+
+echo Build all of the Library files
+
+cd ..\lib
+
+cd isc\win32
+nmake /nologo -f libisc.mak CFG="libisc - Win32 Release"
+cd ..\..
+
+cd dns\win32
+nmake /nologo -f libdns.mak CFG="libdns - Win32 Release"
+cd ..\..
+
+cd isccfg\win32
+nmake /nologo -f libisccfg.mak CFG="libisccfg - Win32 Release"
+cd ..\..
+
+cd isccc\win32
+nmake /nologo -f libisccc.mak CFG="libisccc - Win32 Release"
+cd ..\..
+
+cd lwres\win32
+nmake /nologo -f liblwres.mak CFG="liblwres - Win32 Release"
+cd ..\..
+
+rem This is the DLL required for the event Viewer
+
+cd win32\bindevt
+nmake /nologo -f bindevt.mak CFG="bindevt - Win32 Release"
+cd ..\..
+
+cd ..
+
+echo Now build the apps
+
+cd bin
+
+cd named\win32
+nmake /nologo -f named.mak CFG="named - Win32 Release"
+cd ..\..
+
+cd rndc\win32
+nmake /nologo -f rndc.mak CFG="rndc - Win32 Release"
+nmake /nologo -f confgen.mak CFG="rndcconfgen - Win32 Release"
+cd ..\..
+
+cd dig\win32
+nmake /nologo -f dig.mak CFG="dig - Win32 Release"
+nmake /nologo /nologo -f host.mak CFG="host - Win32 Release"
+nmake /nologo -f nslookup.mak CFG="nslookup - Win32 Release"
+cd ..\..
+
+cd nsupdate\win32
+nmake /nologo -f nsupdate.mak CFG="nsupdate - Win32 Release"
+cd ..\..
+
+cd check\win32
+nmake /nologo -f namedcheckconf.mak CFG="namedcheckconf - Win32 Release"
+nmake /nologo -f namedcheckzone.mak CFG="namedcheckzone - Win32 Release"
+cd ..\..
+
+cd dnssec\win32
+nmake /nologo -f keygen.mak CFG="keygen - Win32 Release"
+nmake /nologo -f makekeyset.mak CFG="makekeyset - Win32 Release"
+nmake /nologo -f signkey.mak CFG="signkey - Win32 Release"
+nmake /nologo -f signzone.mak CFG="signzone - Win32 Release"
+cd ..\..
+
+rem This is the BIND 9 Installer
+
+cd win32\BINDInstall
+nmake /nologo -f BINDInstall.mak CFG="BINDInstall - Win32 Release"
+cd ..\..
+
+cd ..
+
+echo Copying the OpenSSL DLL and the Installation Notes.
+rem Copy the OpenSSL DLL to the Build Directory
+
+copy ..\openssl-0.9.6b\out32dll\libeay32.dll Build\Release\
+
+copy win32utils\readme1st.txt Build\Release\
+
+cd win32utils
+
+echo Done.
+
+rem exit here.
diff --git a/win32utils/BuildSetup.bat b/win32utils/BuildSetup.bat
new file mode 100644
index 00000000..d8a40837
--- /dev/null
+++ b/win32utils/BuildSetup.bat
@@ -0,0 +1,43 @@
+echo off
+rem
+rem Copyright (C) 2000, 2001 Internet Software Consortium.
+rem
+rem Permission to use, copy, modify, and distribute this software for any
+rem purpose with or without fee is hereby granted, provided that the above
+rem copyright notice and this permission notice appear in all copies.
+rem
+rem THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
+rem DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
+rem IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
+rem INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
+rem INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
+rem FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
+rem NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
+rem WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+rem BuildSetup.bat
+rem This script sets up the files necessary ready to build BIND 9.
+rem This requires perl to be installed on the system.
+
+rem Set up the configuration file
+cd ..
+copy config.h.win32 config.h
+cd win32utils
+
+rem Generate the version information
+perl makeversion.pl
+
+rem Generate header files for lib/dns
+
+call dnsheadergen.bat
+
+echo Ensure that the OpenSSL sources are at the same level in
+echo the directory tree and is named openssl-0.9.6b or libdns
+echo will not build.
+
+rem Make sure that the Build directories are there.
+
+if NOT Exist ..\Build mkdir ..\Build
+if NOT Exist ..\Build\Release mkdir ..\Build\Release
+
+rem Done
diff --git a/win32utils/dnsheadergen.bat b/win32utils/dnsheadergen.bat
new file mode 100644
index 00000000..25b18708
--- /dev/null
+++ b/win32utils/dnsheadergen.bat
@@ -0,0 +1,26 @@
+echo off
+rem
+rem Copyright (C) 2000, 2001 Internet Software Consortium.
+rem
+rem Permission to use, copy, modify, and distribute this software for any
+rem purpose with or without fee is hereby granted, provided that the above
+rem copyright notice and this permission notice appear in all copies.
+rem
+rem THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
+rem DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
+rem IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
+rem INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
+rem INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
+rem FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
+rem NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
+rem WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+cd ..\lib\dns
+cd win32
+nmake /nologo /f gen.mak CFG="gen - Win32 Release"
+cd ..
+gen -s . -t > include/dns/enumtype.h
+gen -s . -c > include/dns/enumclass.h
+gen -s . -i -P ./rdata/rdatastructpre.h -S ./rdata/rdatastructsuf.h > include/dns/rdatastruct.h
+gen -s . > code.h
+cd ..\..\win32utils
diff --git a/win32utils/makedefs.pl b/win32utils/makedefs.pl
new file mode 100644
index 00000000..723e8b90
--- /dev/null
+++ b/win32utils/makedefs.pl
@@ -0,0 +1,149 @@
+#!/usr/bin/perl
+#
+# Copyright (C) 2001 Internet Software Consortium.
+#
+# Permission to use, copy, modify, and distribute this software for any
+# purpose with or without fee is hereby granted, provided that the above
+# copyright notice and this permission notice appear in all copies.
+#
+# THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
+# DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
+# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
+# INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
+# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
+# FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
+# NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
+# WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+# $Id: makedefs.pl,v 1.5 2001/07/31 00:03:19 gson Exp $
+
+# makedefs.pl
+# This script goes through all of the lib header files and creates a .def file
+# for each DLL for Win32. It recurses as necessary through the subdirectories
+#
+# This program should only be run if it is necessary to regenerate
+# the .def files. Normally these files should be updated by hand, adding
+# new functions to the end and removing obsolete ones.
+# If you do renerate them you will also need to modify them by hand to
+# to pick up those routines not detected by this program (like openlog).
+#
+# Search String: ^(([_a-z0-9])*( ))*prefix_[_a-z0-9]+_[a-z0-9]+( )*\(
+# List of directories
+
+@prefixlist = ("isc", "isccfg","dns", "isccc", "libres");
+@prefixlist = ("isccc");
+@iscdirlist = ("isc/include/isc","isc/win32/include/isc");
+@iscprefixlist = ("isc", "isc", "cfg");
+
+@isccfgdirlist = ("isccfg/include/isccfg");
+@isccfgprefixlist = ("cfg");
+
+@iscccdirlist = ("isccc/include/isccc");
+@iscccprefixlist = ("isccc");
+
+@dnsdirlist = ("dns/include/dns","dns/sec/dst/include/dst");
+@dnsprefixlist = ("dns", "dst");
+
+@lwresdirlist = ("lwres/include/lwres");
+@lwresprefixlist = ("lwres");
+
+# Run the changes for each directory in the directory list
+
+$ind = 0;
+createoutfile($iscprefixlist[0]);
+foreach $dir (@iscdirlist) {
+ createdeffile($dir, $iscprefixlist[$ind]);
+ $ind++;
+}
+close OUTDEFFILE;
+
+$ind = 0;
+createoutfile($isccfgprefixlist[0]);
+foreach $dir (@isccfgdirlist) {
+ createdeffile($dir, $isccfgprefixlist[$ind]);
+ $ind++;
+}
+close OUTDEFFILE;
+
+$ind = 0;
+createoutfile($dnsprefixlist[0]);
+foreach $dir (@dnsdirlist) {
+ createdeffile($dir, $dnsprefixlist[$ind]);
+ $ind++;
+}
+close OUTDEFFILE;
+
+$ind = 0;
+createoutfile($iscccprefixlist[0]);
+foreach $dir (@iscccdirlist) {
+ createdeffile($dir, $iscccprefixlist[$ind]);
+ $ind++;
+}
+close OUTDEFFILE;
+
+$ind = 0;
+createoutfile($lwresprefixlist[0]);
+foreach $dir (@lwresdirlist) {
+ createdeffile($dir, $lwresprefixlist[$ind]);
+ $ind++;
+}
+close OUTDEFFILE;
+
+exit;
+
+#
+# Subroutines
+#
+sub createdeffile {
+ $xdir = $_[0];
+
+ #
+ # Get the List of files in the directory to be processed.
+ #
+ #^(([_a-z0-9])*( ))*prefix_[_a-z]+_[a-z]+( )*\(
+ $prefix = $_[1];
+ $pattern = "\^\(\(\[\_a\-z0\-9\]\)\*\( \)\)\*\(\\*\( \)\+\)\*$prefix";
+ $pattern = "$pattern\_\[\_a\-z0\-9\]\+_\[a\-z0\-9\]\+\( \)\*\\\(";
+
+ opendir(DIR,$xdir) || die "No Directory: $!";
+ @files = grep(/\.h$/i, readdir(DIR));
+ closedir(DIR);
+
+ foreach $filename (sort @files) {
+ #
+ # Open the file and locate the pattern.
+ #
+ open (HFILE, "$xdir/$filename") ||
+ die "Can't open file $filename : $!";
+
+ while (<HFILE>) {
+ if(/$pattern/) {
+ $func = $&;
+ chop($func);
+ $space = rindex($func, " ") + 1;
+ if($space >= 0) {
+ # strip out return values
+ $func = substr($func, $space, 100);
+ }
+ print OUTDEFFILE "$func\n";
+ }
+ }
+ # Set up the Patterns
+ close(HFILE);
+ }
+}
+
+# This is the routine that applies the changes
+
+# output the result to the platform specific directory.
+sub createoutfile {
+ $outfile = "lib$_[0].def";
+
+ open (OUTDEFFILE, ">$outfile")
+ || die "Can't open output file $outfile: $!";
+ print OUTDEFFILE "LIBRARY lib$_[0]\n";
+ print OUTDEFFILE "\n";
+ print OUTDEFFILE "; Exported Functions\n";
+ print OUTDEFFILE "EXPORTS\n";
+ print OUTDEFFILE "\n";
+}
diff --git a/win32utils/makeversion.pl b/win32utils/makeversion.pl
new file mode 100644
index 00000000..7be62a2b
--- /dev/null
+++ b/win32utils/makeversion.pl
@@ -0,0 +1,123 @@
+#!/usr/bin/perl
+#
+# Copyright (C) 2001 Internet Software Consortium.
+#
+# Permission to use, copy, modify, and distribute this software for any
+# purpose with or without fee is hereby granted, provided that the above
+# copyright notice and this permission notice appear in all copies.
+#
+# THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
+# DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
+# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
+# INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
+# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
+# FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
+# NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
+# WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+# $Id: makeversion.pl,v 1.4 2001/07/27 17:25:23 gson Exp $
+
+# This script takes the version information from the version file located
+# at the root of the source tree and the api files in each library directory
+# and writes the resulting information into a version.h file that the build
+# process uses to build the executable code.
+# This program was written by PDM. danny.mayer@nominum.com 1-Jul-2001.
+
+# List of directories with version files
+@dirlist = ("isc","dns","isccc","isccfg","lwres");
+$LibMacros{"isc"} = "LIBISC_EXPORTS";
+$LibMacros{"dns"} = "LIBDNS_EXPORTS";
+$LibMacros{"isccc"} = "LIBISCCC_EXPORTS";
+$LibMacros{"isccfg"} = "LIBISCCFG_EXPORTS";
+$LibMacros{"lwres"} = "LIBLWRES_EXPORTS";
+
+@VersionNames = ("LIBINTERFACE", "LIBREVISION", "LIBAGE");
+$versionfile = "versions.h";
+$versionpath = "../$versionfile";
+
+#
+# First get the version information
+#
+open (VERSIONFILE, "../version");
+while (<VERSIONFILE>) {
+ chomp;
+ ($data) = split(/\#/);
+ if($data) {
+ ($name, $value) = split(/=/,$data);
+ ($name) = split(/\s+/, $name);
+ ($value) = split(/\s+/, $value);
+ $Versions{$name} = $value;
+ }
+}
+close(VERSIONFILE);
+
+# Now set up the output version file
+
+$ThisDate = scalar localtime();
+open (OUTVERSIONFILE, ">$versionpath") ||
+ die "Can't open output file $versionpath: $!";
+
+#Standard Header
+
+print OUTVERSIONFILE '/*
+ * Copyright (C) 2001 Internet Software Consortium.
+ *
+ * Permission to use, copy, modify, and distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
+ * DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
+ * INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
+ * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
+ * FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
+ * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
+ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+';
+
+print OUTVERSIONFILE "/*\n";
+print OUTVERSIONFILE " * $versionfile.";
+print OUTVERSIONFILE " Generated automatically by makeversion.pl.\n";
+print OUTVERSIONFILE " * Date generated: $ThisDate\n";
+print OUTVERSIONFILE " */\n\n";
+
+print OUTVERSIONFILE '
+#ifndef VERSIONS_H
+#define VERSIONS_H 1
+
+';
+
+$Version = "$Versions{'MAJORVER'}.$Versions{'MINORVER'}.$Versions{'PATCHVER'}";
+$Version = "$Version$Versions{'RELEASETYPE'}$Versions{'RELEASEVER'}";
+print "BIND Version: $Version\n";
+
+print OUTVERSIONFILE "#define VERSION \"$Version\"\n\n";
+
+foreach $dir (@dirlist) {
+ $apifile = "../lib/$dir/api";
+ open (APIVERSION, $apifile);
+ while (<APIVERSION>) {
+ chomp;
+ ($data) = split(/\#/);
+ if ($data) {
+ ($name, $value) = split(/=/, $data);
+ $name =~ s/\s+//;
+ $value =~ s/\s+//;
+ $ApiVersions{$name} = $value;
+ }
+ }
+
+ print OUTVERSIONFILE "\n#ifdef $LibMacros{$dir}\n";
+ foreach $name (@VersionNames) {
+ print OUTVERSIONFILE "#define $name\t$ApiVersions{$name}\n";
+ }
+ print OUTVERSIONFILE "#endif\n\n";
+}
+
+print OUTVERSIONFILE "#endif /* VERSIONS_H */\n";
+close OUTVERSIONFILE;
+
+
diff --git a/win32utils/readme1st.txt b/win32utils/readme1st.txt
new file mode 100644
index 00000000..3f0129b1
--- /dev/null
+++ b/win32utils/readme1st.txt
@@ -0,0 +1,80 @@
+Copyright (C) 2001 Internet Software Consortium.
+See COPYRIGHT in the source root or http://isc.org/copyright.html for terms.
+
+$Id: readme1st.txt,v 1.5 2001/07/31 00:03:20 gson Exp $
+
+ Beta Release of BIND 9.2.0 for Window NT/2000
+
+Date: 20-Jul-2001.
+
+ This is a Beta Release of BIND 9.2.0 for Windows NT/2000. As such
+it should not be installed on a production system or anywhere that is
+considered critical for Internet access. The release has not been
+thoroughly tested. While IPv6 addresses should work, there is no
+support yet for a BIND server using an IPv6 stack. Only IPv4 stacks are
+supported on the box running this version of BIND. IPv6 stacks will
+be supported in a future release.
+
+ Kit Installation Information
+
+If you have previously installed BIND 8 or BIND 4 on the system that
+you wish to install this kit, you MUST use the BIND 8 or BIND 4 installer
+to uninstall the previous kit. For BIND 8.2.x, you can use the
+BINDInstall that comes with the BIND 8 kit to uninstall it. The BIND 9
+installer will NOT uninstall the BIND 8 binaries. That will be fixed
+in a future release.
+
+Unpack the kit into any convenient directory and run the BINDInstall
+program. This will install the named and associated programs
+into the correct directories and set up the required registry
+keys.
+
+ Controlling BIND
+
+Windows NT/2000 uses the same rndc program as is used on Unix
+systems. The rndc.conf file must be configured for your system in
+order to work. You will need to generate a key for this. To do this
+use the rndc-confgen program. The program will be installed in the
+same directory as named: dns/bin/. Use the command this way:
+
+rndc-confgen > rndc.conf
+
+An rndc.conf will be generated in the current directory but not copied to
+the dns/etc directory where it needs to reside.
+
+In addition the named.conf file will need to be modified in order
+to allow rndc to control named. The additions look like the following:
+
+key rndckey { algorithm hmac-md5; secret "xxxxxxxxx=="; };
+
+controls {
+ inet 127.0.0.1 allow { localhost; } keys { rndckey; };
+};
+
+Note that the value of the secret must come from the key generated
+above for rndc and must be the same key value for both. If you
+have rndc on a Unix box you can use it to control BIND on the NT/W2K
+box as well as using the Windows version of rndc to control a BIND 9
+daemon on a Unix box.
+
+In addition BIND is installed as a win32 system service, can be
+started and stopped in the same way as any other service and
+automatically starts at whenever the system is booted.
+
+ DNS Tools
+
+I have built versions of the following tools for Windows NT: dig,
+nslookup, host, nsupdate, named-checkconf, named-checkzone, dnssec-keygen,
+dnssec-makekeyset, dnssec-signkey, dnssec-signzone. The tools will NOT run
+on Win9x, only WinNT and Win2000. The latter tools are for use with DNSSEC.
+All tools are installed in the dns/bin directory.
+
+ Problems
+
+Please report all problems to bind9-bugs@isc.org and not to me. All
+other questions should go to the bind-users@isc.org mailing list and
+news group.
+
+ Danny Mayer
+ danny.mayer@nominum.com
+
diff --git a/win32utils/win32-build.txt b/win32utils/win32-build.txt
new file mode 100644
index 00000000..62426019
--- /dev/null
+++ b/win32utils/win32-build.txt
@@ -0,0 +1,103 @@
+ BIND 9.2.0 Beta for Win32 Source Build Instructions. 12-Jul-2001
+
+Building BIND 9.2 on Windows NT/2000 has two prerequisites:
+1) You need to install Perl for Windows NT/2000. ActiveState
+(http://www.activestate.com/) is the one most people install and use;
+2) OpenSSL (http://www.openssl.org) needs to be downloaded and built
+on the system on which you are building BIND.
+
+The instructions assume a Visual C++ 6.0 compiler with Visual Studio and
+Visual Studio Service Pack 3 or later. It may build and work with earlier
+versions but it has not been tested. The binaries may be built and run on
+any of the following platforms: NT 4.0 Workstation (SP3 or later), NT 4.0
+Server (SP3 or later), Windows 2000 Professional (SP1 or later),
+Windows 2000 Server or any kind (SP1 or later). It should run on the
+to-be-released Windows XP platforms of various flavors. It will NOT build
+or run on Windows 95, Windows 98, etc. platforms.
+
+Step 1: Download and Build OpenSSL
+
+Download and untar the OpenSSL sources from http://www.openssl.org/.
+if you have place the BIND sources in /BIND9 you should place the
+OpenSSL sources in /OpenSSL-0.9.6b. If you place the sources anywhere
+else you will have to edit the libdns.dsp or libdns.mak files to point
+the include directories and the link library location to the correct
+places as well as move the DLL to the BUILD/Release subdirectory.
+
+Note: Building OpenSSL also requires that you install Perl as it uses
+it during its build process. Follow the instructions for NT given
+in the INSTALL.W32 file to build the kit. This will produce libeay32.lib
+and libeay32.dll in the out32dll subdirectory.
+
+
+Step 2 Building BIND
+
+From the command prompt cd to the win32utils under the BIND root.
+Execute the BuildAll.bat file. This will do the following:
+1) copy config.h.win32 to config.h in the root.
+2) create the versions.h file in the root.
+3) Build the gen application in the lib/dns directory.
+4) Run the gen application and build the required lib/dns header
+ files.
+5) Create the Build/Release subdirectory under the root of the BIND
+ source tree which will hold the binaries being built.
+6) Build the libraries, named, application tools like dig, rndc
+ dnssec tools, installer, checkconf and checkzones programs,
+ BIND 9 Installer.
+7) Copies the release notes and the OpenSSL DLL to the BUILD/Release
+ directory.
+
+If you wish to use Visual Studio for building, you can just run the
+BuildSetup.bat file which will create all the necessary files and you
+can then use the BINDBuild.dsw to open the workspace for all of the
+libraries and applications. These files reside in the same win32utils
+directory as this file.
+
+The following files are built:
+
+lib/isc
+lib/dns
+lib/isccc
+lib/isccfg
+lib/lwres
+bin/named
+lib/win32/bindevt
+bin/win32/BINDInstall
+
+bin/rndc
+bin/dig (dig.dsw)
+bin/dig (host.dsw)
+bin/dig (nslookup.dsw)
+bin/nsupdate
+
+bin/check/named-checkconf
+bin/check/named-checkzone
+
+bin/dnssec (keygen.dsw)
+bin/dnssec (makekeyset.dsw)
+bin/dnssec (signkey.dsw)
+bin/dnssec (signzone.dsw)
+
+You should end up with 20 binaries in the bind9/Build/Release
+directory. Copy the Install instructions Readme1st.txt from win32utils
+and libeay32.dll from the openssl/out32dll/ directory.
+
+The set of files in the directory bind9/Build/Release form the
+installation kit which can then be zipped and distributed to any
+suitable Windows NT 4.0 or Windows 2000 platform.
+
+Installation is accomplished by running the BINDInstall program. All DLL's
+are copied to the system32 area and all applications (including BINDInstall
+which may be necessary for uninstalling BIND 9) to the dns/bin directory.
+If BIND 8 has previously been installed on the system it must be uninstalled
+first by running it's own BINDInstall program. The BIND 9 installer does
+not yet do this.
+
+All bugs found, whether in the process of building the application or
+running BIND or the tools should be reported to the bind9 bugs email
+account at bind9-bugs@isc.org.
+
+ Danny Mayer
+ danny.mayer@nominum.com
+
+