diff options
| -rw-r--r-- | source3/libads/ldap_printer.c | 19 | 
1 files changed, 13 insertions, 6 deletions
diff --git a/source3/libads/ldap_printer.c b/source3/libads/ldap_printer.c index 4a983b20e3..1edc933683 100644 --- a/source3/libads/ldap_printer.c +++ b/source3/libads/ldap_printer.c @@ -79,6 +79,7 @@ static BOOL map_sz(TALLOC_CTX *ctx, ADS_MODLIST *mods,  			    const REGISTRY_VALUE *value)  {  	char *str_value = NULL; +	ADS_STATUS status;  	if (value->type != REG_SZ)  		return False; @@ -86,8 +87,8 @@ static BOOL map_sz(TALLOC_CTX *ctx, ADS_MODLIST *mods,  	if (value->size && *((smb_ucs2_t *) value->data_p)) {  		pull_ucs2_talloc(ctx, (void **) &str_value,   				 (const smb_ucs2_t *) value->data_p); -		return ADS_ERR_OK(ads_mod_str(ctx, mods, value->valuename,  -					      str_value)); +		status = ads_mod_str(ctx, mods, value->valuename, str_value); +		return ADS_ERR_OK(status);  	}  	return True; @@ -100,11 +101,13 @@ static BOOL map_dword(TALLOC_CTX *ctx, ADS_MODLIST *mods,  		      const REGISTRY_VALUE *value)  {  	char *str_value = NULL; +	ADS_STATUS status;  	if (value->type != REG_DWORD)  		return False;  	str_value = talloc_asprintf(ctx, "%d", *((uint32 *) value->data_p)); -	return ADS_ERR_OK(ads_mod_str(ctx, mods, value->valuename, str_value)); +	status = ads_mod_str(ctx, mods, value->valuename, str_value); +	return ADS_ERR_OK(status);  }  /* @@ -114,12 +117,14 @@ static BOOL map_bool(TALLOC_CTX *ctx, ADS_MODLIST *mods,  		     const REGISTRY_VALUE *value)  {  	char *str_value; +	ADS_STATUS status;  	if ((value->type != REG_BINARY) || (value->size != 1))  		return False;  	str_value =  talloc_asprintf(ctx, "%s",   				     *(value->data_p) ? "TRUE" : "FALSE"); -	return ADS_ERR_OK(ads_mod_str(ctx, mods, value->valuename, str_value)); +	status = ads_mod_str(ctx, mods, value->valuename, str_value); +	return ADS_ERR_OK(status);  }  /* @@ -131,6 +136,7 @@ static BOOL map_multi_sz(TALLOC_CTX *ctx, ADS_MODLIST *mods,  	char **str_values = NULL;  	smb_ucs2_t *cur_str = (smb_ucs2_t *) value->data_p;          uint32 size = 0, num_vals = 0, i=0; +	ADS_STATUS status;  	if (value->type != REG_MULTI_SZ)  		return False; @@ -153,8 +159,9 @@ static BOOL map_multi_sz(TALLOC_CTX *ctx, ADS_MODLIST *mods,  						    (void **) &str_values[i],   						    cur_str); -		return ADS_ERR_OK(ads_mod_strlist(ctx, mods, value->valuename,  -						  (const char **) str_values)); +		status = ads_mod_strlist(ctx, mods, value->valuename,  +					 (const char **) str_values); +		return ADS_ERR_OK(status);  	}   	return True;  }  | 
