* WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
-/* $Id: query.c,v 1.162 2000/12/16 02:30:58 bwelling Exp $ */
+/* $Id: query.c,v 1.163 2000/12/27 23:01:25 marka Exp $ */
#include <config.h>
if (result != ISC_R_SUCCESS)
goto cleanup;
result = dns_rdataset_first(trdataset);
- if (result != ISC_R_SUCCESS)
+ if (result != ISC_R_SUCCESS) {
+ dns_message_puttempname(client->message, &tname);
goto cleanup;
+ }
dns_rdataset_current(trdataset, &rdata);
result = dns_rdata_tostruct(&rdata, &cname, NULL);
dns_rdata_reset(&rdata);
if (result != ISC_R_SUCCESS)
goto cleanup;
result = dns_rdataset_first(trdataset);
- if (result != ISC_R_SUCCESS)
+ if (result != ISC_R_SUCCESS) {
+ dns_message_puttempname(client->message, &tname);
goto cleanup;
+ }
dns_rdataset_current(trdataset, &rdata);
result = dns_rdata_tostruct(&rdata, &dname, NULL);
dns_rdata_reset(&rdata);
- if (result != ISC_R_SUCCESS)
+ if (result != ISC_R_SUCCESS) {
+ dns_message_puttempname(client->message, &tname);
goto cleanup;
+ }
dns_name_init(tname, NULL);
dns_name_clone(&dname.dname, tname);
dns_rdata_freestruct(&dname);
prefix = dns_fixedname_name(&fixed);
result = dns_name_split(client->query.qname, nlabels, nbits,
prefix, NULL);
- if (result != ISC_R_SUCCESS)
+ if (result != ISC_R_SUCCESS) {
+ dns_message_puttempname(client->message, &tname);
goto cleanup;
+ }
INSIST(fname == NULL);
dbuf = query_getnamebuf(client);
- if (dbuf == NULL)
+ if (dbuf == NULL) {
+ dns_message_puttempname(client->message, &tname);
goto cleanup;
+ }
fname = query_newname(client, dbuf, &b);
- if (fname == NULL)
+ if (fname == NULL) {
+ dns_message_puttempname(client->message, &tname);
goto cleanup;
+ }
result = dns_name_concatenate(prefix, tname, fname, NULL);
if (result != ISC_R_SUCCESS) {
dns_message_puttempname(client->message, &tname);