Commit Diff
Diff:
a5d84aedb721dfce0ace537f9bc61505f88f2112
57ffa3f9cec4fa211ee5f87fa59927b5a74d0003
Commit:
57ffa3f9cec4fa211ee5f87fa59927b5a74d0003
Tree:
fe402982672aaac74d8c734e04230151ea5d0ca4
Author:
pbug <pbug@delphinusdns.org>
Committer:
pbug <pbug@delphinusdns.org>
Date:
Tue Apr 15 11:15:04 2008 UTC
Message:
* tags, rcscmd's, more README stuff, licensing updates
blob - 9135f78e6e555be1810bbc6e0cfb59d23bf9ecae
blob + 69657d4f4eade1255b8e9c58008bdc70d868e6e9
--- README
+++ README
@@ -1,7 +1,76 @@
-README
+$Id: README,v 1.3 2008/04/15 11:15:04 pbug Exp $
-FIRSTOFF
+1. README
+2. WHY WILDCARDNS?
+3. INSTALL HINTS
+4. COMPATIBILITY
+5. EXAMPLES
+1. README
+---------
+
+Wildcarddns is a small nameserver that can be installed on a bastion host or
+firewall. It does not recurse nor search. Where functionality is missing
+there was probably a reason for that. It was intended to work with pf
+firewalling software so that users have to authenticate to the firewall first
+and then their dns gets redirected to a recursing and searching nameserver
+that sees the Internet. With the Linux port it needs to use netfilter
+instead of pf. This program is written to a BSD Style License and borrows
+code from OpenBSD. Sleepycat's BerkeleyDB is also used for the main database.
+
+2. WHY WILDCARDDNS?
+-------------------
+
+First off a comparison in the sources:
+
+Bind 9.3.4:
+-----------
+$ pwd
+/usr/src/usr.sbin/bind/bin/named
+$ wc -l *.c| tail -2
+ 748 zoneconf.c
+ 24551 total
+
+# libisc as well..
+$ pwd
+/usr/src/usr.sbin/bind/lib/isc
+$ wc -l *.c|tail -2
+ 26 version.c
+ 15496 total
+
+$ ls *.c | wc -l
+ 29
+
+$ ls -l /usr/sbin/named
+-r-xr-xr-x 1 root bin 1361348 Apr 2 18:19 /usr/sbin/named
+
+
+Wildcarddnsd
+------------
+
+$ wc -l *.c | tail -2
+ 1069 reply.c
+ 3519 total
+
+$ ls *.c | wc -l
+ 4
+
+$ ls -l /usr/local/sbin/wildcarddnsd
+-r-xr-xr-x 1 root bin 46628 Apr 9 19:45 /usr/local/sbin/wildcarddnsd
+
+
+
+So wildcarddnsd is 10 times smaller in lines in the overall source code,
+and ~30 times slimmer in the binary file. It cuts functionality where
+functionality isn't needed, this is explained above, as well. This should
+make auditing quicker and there is less code to scan for easter eggs or
+other non-mentioned features. Also the binary is smaller. Also for me, I
+can say I programmed this with no malicous intent if that is worth any.
+
+
+3. INSTALL HINTS
+----------------
+
To install type make, followed by make install.
(In linux type make -f Makefile.linux, make a user named "named" for the
chroot to work).
@@ -14,15 +83,28 @@ wildcarddnsd.
A sample config file exists with the sources, the comments should be pretty
straight forward.
-Enjoy using Wildcard DNS.
--peter
+4. COMPATIBILITY
+----------------
-COMPATIBILITY
+------------------+--------------------+---------------------+
+Operating System: | makes and compiles | responds to queries |
+------------------+--------------------+---------------------+
+Linux Redhat EL 5 | yes with db4 | yes |
+------------------+--------------------+---------------------+
+FreeBSD 7.0 | yes | yes |
+------------------+--------------------+---------------------+
+NetBSD 4.0 | yes | yes |
+------------------+--------------------+---------------------+
+OpenBSD 4.2 | yes | yes |
+------------------+--------------------+---------------------+
+Mac OS X 10.3 | yes | unknown |
+------------------+--------------------+---------------------+
+DragonFlyBSD 1.10 | yes | yes |
+------------------+--------------------+---------------------+
-------------------+----------+------------+-----------+----------+-----------+
-Operating System: |NetBSD 4.0| OpenBSD 4.2|FreeBSD 7.0| DragonFly|Redhat WS5 |
-------------------+----------+------------+-----------+----------+-----------+
-compiles & makes | yes | yes | yes | yes | yes |
-responds queries | yes | yes | yes | yes | yes |
-------------------+----------+------------+-----------+----------+-----------+
+
+5. EXAMPLES
+-----------
+
+in the directory "examples" are a few examples from working configs.
blob - f0fe836dd6401c155d6090d6098de619bb946203
blob + 6dc7319910256fe74ac1f7779ebcdb8ab7b1f481
--- additional.c
+++ additional.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005 Peter Philipp
+ * Copyright (c) 2005-2008 Peter J. Philipp
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -35,6 +35,8 @@ int additional_mx(char *, int, struct domain *, char *
int additional_ptr(char *, int, struct domain *, char *, int, int, int *);
extern int compress_label(char *, int, int);
+
+static char rcsid[] = "$Id: additional.c,v 1.2 2008/04/15 11:15:05 pbug Exp $";
/*
blob - 6a955796282f21a7ceb7e1d01ffb91b65643ba1a
blob + cd857506fc9c7487b731d38c1f3b1f6c5510bb4b
--- db.h
+++ db.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005 Peter Philipp
+ * Copyright (c) 2005-2008 Peter J. Philipp
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
blob - e7479be304c00c61c5ad48562ff3b6014499ca55
blob + 608f139fafa33ad8763abb8d646af6acbbdffe7a
--- dns.h
+++ dns.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2002, 2003, 2005 Peter Philipp
+ * Copyright (c) 2002-2008 Peter J. Philipp
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
blob - 83d025556082e5507f50663406f3bdc958d6296d
blob + 89a401a926ef5fe85491731ac214dbba66731bbd
--- include.h
+++ include.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005 Peter Philipp
+ * Copyright (c) 2005-2008 Peter J. Philipp
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
blob - 1b766d80dc5aece8e2c2d6ef2a481250f8e22a9b
blob + 5260265e000d206a3b9ebaeab0b6868f07d6d9e7
--- main.c
+++ main.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2002, 2005 Peter Philipp
+ * Copyright (c) 2002-2008 Peter J. Philipp
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -57,6 +57,8 @@ int memcasecmp(char *, char *, int);
#define DEFAULT_SOCKET 64
extern char *__progname;
+
+static char rcsid[] = "$Id: main.c,v 1.4 2008/04/15 11:15:06 pbug Exp $";
/*
* MAIN - set up arguments, set up database, set up sockets, call mainloop
blob - 111c22e797138c9fbbfb676011953c29e57e0ad2
blob + 9ca91bd0e631a0a617459b83ec4113b8aef5f5ec
--- parse.c
+++ parse.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005 Peter Philipp
+ * Copyright (c) 2005-2008 Peter J. Philipp
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -44,6 +44,8 @@ struct myrr_lookup {
{ "ns", DNS_TYPE_NS },
{ NULL, 0 },
};
+
+static char rcsid[] = "$Id: parse.c,v 1.3 2008/04/15 11:15:07 pbug Exp $";
/*
* PARSE_FILE - parse the configfile XXX rewrite me in yacc :(
blob - 33fbcd2a68f23d439c50d1bc896875d47a31cbf0
blob + 8ea5f20f34755e3f95ab04275cea74558a40a575
--- reply.c
+++ reply.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005 Peter Philipp
+ * Copyright (c) 2005-2008 Peter J. Philipp
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -46,6 +46,7 @@ extern int additional_aaaa(char *, int, struct domain
extern int additional_mx(char *, int, struct domain *, char *, int, int, int *);
extern int additional_ptr(char *, int, struct domain *, char *, int, int, int *);
+static char rcsid[] = "$Id: reply.c,v 1.3 2008/04/15 11:15:08 pbug Exp $";
/*
* REPLY_A() - replies a DNS question (*q) on socket (so)
repomaster@centroid.eu