[Freeipa-devel] [PATCH 0064] Improve log message about improperly formated Resource Records

Adam Tkac atkac at redhat.com
Mon Sep 24 13:15:17 UTC 2012


On Mon, Sep 17, 2012 at 05:07:44PM +0200, Petr Spacek wrote:
> Hello,
> 
> this patch adds DN to log message about improperly formated Resource Records.

Hi,

please check my comment below, otherwise ack.

Regards, Adam

> From d36ae54c593c33a45ef9936720357ff7de30c8b5 Mon Sep 17 00:00:00 2001
> From: Petr Spacek <pspacek at redhat.com>
> Date: Mon, 17 Sep 2012 17:01:41 +0200
> Subject: [PATCH] Improve log message about improperly formated Resource
>  Records.
> 
> Signed-off-by: Petr Spacek <pspacek at redhat.com>
> ---
>  src/ldap_helper.c | 17 ++++++++++-------
>  1 file changed, 10 insertions(+), 7 deletions(-)
> 
> diff --git a/src/ldap_helper.c b/src/ldap_helper.c
> index d22e8714df57edaad4cf45e6cc26ec0dbbd59108..2245cb982f26eab165a327b4ad72046f9eb4024e 100644
> --- a/src/ldap_helper.c
> +++ b/src/ldap_helper.c
> @@ -1473,6 +1473,8 @@ ldap_parse_rrentry(isc_mem_t *mctx, ldap_entry_t *entry,
>  	dns_rdata_t *rdata = NULL;
>  	dns_rdatalist_t *rdlist = NULL;
>  	ldap_attribute_t *attr;
> +	const char *dn = "<NULL entry>";
> +	const char *data = "<NULL data>";
>  
>  	result = add_soa_record(mctx, qresult, origin, entry,
>  				rdatalist, fake_mname);
> @@ -1501,6 +1503,11 @@ ldap_parse_rrentry(isc_mem_t *mctx, ldap_entry_t *entry,
>  	return ISC_R_SUCCESS;
>  
>  cleanup:
> +	if (entry != NULL)
> +		dn = entry->dn;
> +	if (buf != NULL && str_buf(buf) != NULL)
> +		data = str_buf(buf);
> +	log_error_r("failed to parse RR entry: dn '%s': data '%s'", dn, data);
>  	return result;
>  }
>  
> @@ -1539,7 +1546,6 @@ ldapdb_nodelist_get(isc_mem_t *mctx, ldap_instance_t *ldap_inst, dns_name_t *nam
>  		dns_name_init(&node_name, NULL);
>  		if (dn_to_dnsname(mctx, entry->dn,  &node_name, NULL)
>  		    != ISC_R_SUCCESS) {
> -			log_error("Failed to parse dn %s", entry->dn);

I prefer to keep this error in place. Otherwise "bad" DNs will be silently
skipped.

>  			continue;
>  		}
>  
> @@ -1551,7 +1557,6 @@ ldapdb_nodelist_get(isc_mem_t *mctx, ldap_instance_t *ldap_inst, dns_name_t *nam
>  		                       string, &node->rdatalist);
>  		}
>  		if (result != ISC_R_SUCCESS) {
> -			log_error("Failed to parse RR entry (%s)", str_buf(string));
>  			/* node cleaning */	
>  			dns_name_reset(&node->owner);
>  			ldapdb_rdatalist_destroy(mctx, &node->rdatalist);
> @@ -1609,11 +1614,9 @@ ldapdb_rdatalist_get(isc_mem_t *mctx, ldap_instance_t *ldap_inst, dns_name_t *na
>  	for (entry = HEAD(ldap_qresult->ldap_entries);
>  		entry != NULL;
>  		entry = NEXT(entry, link)) {
> -		if (ldap_parse_rrentry(mctx, entry, ldap_qresult,
> -		                       origin, ldap_inst->fake_mname,
> -		                       string, rdatalist) != ISC_R_SUCCESS ) {
> -			log_error("Failed to parse RR entry (%s)", str_buf(string));
> -		}
> +		CHECK(ldap_parse_rrentry(mctx, entry, ldap_qresult,
> +				   origin, ldap_inst->fake_mname,
> +				   string, rdatalist));
>  	}
>  
>  	if (!EMPTY(*rdatalist)) {
> -- 
> 1.7.11.4
> 


-- 
Adam Tkac, Red Hat, Inc.




More information about the Freeipa-devel mailing list