From: Andrew H. <aa...@vo...> - 2003-10-21 01:53:00
|
Folks -- Here at VolunteerMatch we use dnsjava (1.3.3) to do some basic semantic verification of user email addresses before they're added to our system. Users enter an email address for most important site actions, and we do logical RFC 2822 checks followed by a simple test along the lines of 'does this domain have an MX record? if not, does it have an A record?'. On Sunday, after restarting our servlet engine (Jetty 4.2.12 running on RH Linux 7.3, Sun JDK 1.4.0), every record lookup was returning null. This has happened once before on a brand new machine, and we chalked it up to setup problems (we had some problems in our resolv.conf that needed fixing). This time around, though, there weren't any changes in the system to cause the problem. For the record, using dig to lookup records from a shell worked fine for the same domains that dnsjava was failing on. My first guess was that dnsjava simply had some problems reading or parsing resolv.conf, and thus the initialization step was booched, but that doesn't make much sense to me given that on any normal day it doesn't have this problem. I'm about to dive into the code to try and figure out what's going on, but can anyone offhand give any ideas? Has anyone seen this problem? And, most importantly, is there a way to force dnsjava to initialize and return some sort if a status code? I'm not certain what a status code would mean in this case, but ideally I'm looking for some way of finding what dnsjava is using as name servers, how it decided on them, and whether the initialization process had any problems. Thanks for any help, - a. p.s. Yes, the versions of dnsjava and the JDK are old. They're both being upgraded soon, but the question still holds. |