Now can anyone see whats wrong with this picture, because *I* for one
certainly can. So I am supposed to link a 1.3M library against my MTA,
___JUST___ to validate senders? Can someone please explain this to me?
I would ask why XML is even being considered but I'm not out looking to
start a flame, I simply would like to illustrate to everyone here that
there are some very deeply wrong things with XML, completely outside the
realm of publishing XML within DNS.
May I suggest a much more appropriate tool for the job? Expat, the XML
parser from James Clark, is a far smaller and simpler library. libxml is
a good general tool for dealing with large, complex XML related tasks.
For a simple record parser, expat is a much more natural interface.
A visual aid:
-rwxr-xr-x 1 root root 125K Jan 19 10:23 /usr/lib/libexpat.so.0.5.0
-rwxr-xr-x 1 root root 475K Mar 11 03:28 /usr/lib/libxml.so.1.8.17
-rwxr-xr-x 1 root root 957K Apr 19 04:41 /usr/lib/libxml2.so.2.6.9
So if your libraries are a bit larger than mine (debugging symbols,
likely), you're talking more like 200K. I think that's reasonable. If
not, in the tradition of qmail, a little patch doing just the neccesary
parsing and nothing more is likely to be quite a bit tighter. I think
the 20K tossed around earlier is quite likely to be accurate to well
less than an order of magnitude. You won't get the ease of
extensibility, but I think that's a fair compromise.