|  | @@ -417,7 +417,7 @@ static const char * dns_name ( struct dns_name *name ) {
 | 
		
	
		
			
			| 417 | 417 |  	static char buf[256];
 | 
		
	
		
			
			| 418 | 418 |  	int len;
 | 
		
	
		
			
			| 419 | 419 |  
 | 
		
	
		
			
			| 420 |  | -	len = dns_decode ( name, buf, sizeof ( buf ) );
 | 
		
	
		
			
			|  | 420 | +	len = dns_decode ( name, buf, ( sizeof ( buf ) - 1 /* NUL */ ) );
 | 
		
	
		
			
			| 421 | 421 |  	return ( ( len < 0 ) ? "<INVALID>" : buf );
 | 
		
	
		
			
			| 422 | 422 |  }
 | 
		
	
		
			
			| 423 | 423 |  
 | 
		
	
	
		
			
			|  | @@ -877,10 +877,16 @@ static void dns_xfer_close ( struct dns_request *dns, int rc ) {
 | 
		
	
		
			
			| 877 | 877 |   */
 | 
		
	
		
			
			| 878 | 878 |  static int dns_progress ( struct dns_request *dns,
 | 
		
	
		
			
			| 879 | 879 |  			  struct job_progress *progress ) {
 | 
		
	
		
			
			|  | 880 | +	int len;
 | 
		
	
		
			
			| 880 | 881 |  
 | 
		
	
		
			
			| 881 | 882 |  	/* Show current question as progress message */
 | 
		
	
		
			
			| 882 |  | -	dns_decode ( &dns->name, progress->message,
 | 
		
	
		
			
			| 883 |  | -		     sizeof ( progress->message ) );
 | 
		
	
		
			
			|  | 883 | +	len = dns_decode ( &dns->name, progress->message,
 | 
		
	
		
			
			|  | 884 | +			   ( sizeof ( progress->message ) - 1 /* NUL */ ) );
 | 
		
	
		
			
			|  | 885 | +	if ( len < 0 ) {
 | 
		
	
		
			
			|  | 886 | +		/* Ignore undecodable names */
 | 
		
	
		
			
			|  | 887 | +		progress->message[0] = '\0';
 | 
		
	
		
			
			|  | 888 | +	}
 | 
		
	
		
			
			|  | 889 | +
 | 
		
	
		
			
			| 884 | 890 |  	return 0;
 | 
		
	
		
			
			| 885 | 891 |  }
 | 
		
	
		
			
			| 886 | 892 |  
 |