|  | @@ -1275,6 +1275,19 @@ dirserv_get_networkstatus_v2(const char **directory, const char *key,
 | 
	
		
			
				|  |  |  void
 | 
	
		
			
				|  |  |  dirserv_get_routerdescs(smartlist_t *descs_out, const char *key)
 | 
	
		
			
				|  |  |  {
 | 
	
		
			
				|  |  | +  smartlist_t *complete_list;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  /* This is annoying. Can we unify these? */
 | 
	
		
			
				|  |  | +  if (descriptor_list)
 | 
	
		
			
				|  |  | +    complete_list = descriptor_list;
 | 
	
		
			
				|  |  | +  else {
 | 
	
		
			
				|  |  | +    routerlist_t *rlst;
 | 
	
		
			
				|  |  | +    router_get_routerlist(&rlst);
 | 
	
		
			
				|  |  | +    complete_list = rlst->routers;
 | 
	
		
			
				|  |  | +  }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  if (!complete_list)
 | 
	
		
			
				|  |  | +    return;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |    if (!strcmp(key, "/tor/server/all")) {
 | 
	
		
			
				|  |  |      smartlist_add_all(descs_out, descriptor_list);
 |