[asterisk-commits] mmichelson: branch group/dns_naptr r433197 - /team/group/dns_naptr/main/
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Thu Mar 19 17:42:01 CDT 2015
Author: mmichelson
Date: Thu Mar 19 17:41:52 2015
New Revision: 433197
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=433197
Log:
Switch some if checks to assertions.
The NAPTR record we've been given derives from the DNS
answer, so it has to be there.
Modified:
team/group/dns_naptr/main/dns_core.c
Modified: team/group/dns_naptr/main/dns_core.c
URL: http://svnview.digium.com/svn/asterisk/team/group/dns_naptr/main/dns_core.c?view=diff&rev=433197&r1=433196&r2=433197
==============================================================================
--- team/group/dns_naptr/main/dns_core.c (original)
+++ team/group/dns_naptr/main/dns_core.c Thu Mar 19 17:41:52 2015
@@ -466,14 +466,14 @@
ast_log(LOG_NOTICE, "Failed to find NAPTR record within answer\n");
return NULL;
}
- /* Found first byte of NAPTR record, but not enough space left in
- * the answer for this to be us
+
+ /* Since the NAPTR record we have been given came from the DNS answer,
+ * we should never run into a situation where we can't find ourself
+ * in the answer
*/
- if ((naptr_search_base + remaining_size) - naptr_offset < size) {
- /* This really shouldn't happen */
- ast_log(LOG_ERROR, "Ran out of room searching for NAPTR record in answer\n");
- return NULL;
- }
+ ast_assert(naptr_offset != NULL);
+ ast_assert(naptr_search_base + remaining_size - naptr_offset >= size);
+
if (!memcmp(naptr_offset, data, size)) {
/* BAM! FOUND IT! */
ptr = naptr_offset;
@@ -484,10 +484,7 @@
naptr_search_base = naptr_offset + 1;
}
- if (!ptr) {
- /* WHAT? */
- return NULL;
- }
+ ast_assert(ptr != NULL);
/* ORDER */
order = (ptr[1] << 0) | (ptr[0] << 8);
@@ -526,7 +523,6 @@
return NULL;
}
- naptr->generic.data_ptr = naptr->data;
naptr->order = order;
naptr->preference = preference;
@@ -550,6 +546,8 @@
strcpy(ptr, replacement);
naptr->replacement = ptr;
+
+ naptr->generic.data_ptr = naptr->data;
return (struct ast_dns_record *)naptr;
}
More information about the asterisk-commits
mailing list