We are starting to accumulate customer calls that turn out to be a lack of DNS resolution. However, as shown in the function below, we are hitting the "Some Unknown Error" case, and no number is printed out. Of course this is something that we are not able to reproduce here, so I'm looking for ideas on what sorts of things can cause this.
//local dns function for nslookup via the telnet client.
static void fnDNSListner(unsigned char ucEvent, unsigned char *ptrIP){
CHAR cBuf[21];
switch (ucEvent) {
case DNS_EVENT_SUCCESS:
uStrcpy(cBuf, "DNS answer: ");
fnDebugMsg(cBuf);
//fnDebugMsg("DNS answer: ");
fnIPStr(ptrIP, cBuf);
break;
default:// DNS error message
uStrcpy(cBuf, "DNS Error: ");
fnDebugMsg(cBuf);
if (ucEvent == DNS_ERROR_NO_ARP_RES) {
uStrcpy(cBuf, "DNS_ERROR_NO_ARP_RES");
}else if (ucEvent == DNS_ERROR_TIMEOUT) {
uStrcpy(cBuf, "DNS_ERROR_TIMEOUT");
}else if (ucEvent == DNS_ERROR_GENERAL) {
uStrcpy(cBuf, "DNS_ERROR_GENERAL");
}else if (ucEvent == DNS_OPCODE_ERROR) {
uStrcpy(cBuf, "DNS_OPCODE_ERROR");
} else {
uStrcpy(cBuf, "Some Unknown Error:");
fnDebugMsg(cBuf);
fnDebugDec(ucEvent, 0,cBuf);
}
break;
}
fnDebugMsg(cBuf);
fnDebugMsg("\r\n");
}
Thanks,
Aaron