util/id: fully allocate names table
Trivial: this array should be allocated to have ID_MAX entries always. Otherwise if someone were to forget to expand this table, the assertion in the id generator won't actually trigger; it will read junk data. Signed-off-by: John Snow <jsnow@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> Reviewed-by: Jeff Cody <jcody@redhat.com> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
This commit is contained in:
		
							parent
							
								
									4c65fed8bd
								
							
						
					
					
						commit
						624533e5a5
					
				| 
						 | 
				
			
			@ -29,7 +29,7 @@ bool id_wellformed(const char *id)
 | 
			
		|||
 | 
			
		||||
#define ID_SPECIAL_CHAR '#'
 | 
			
		||||
 | 
			
		||||
static const char *const id_subsys_str[] = {
 | 
			
		||||
static const char *const id_subsys_str[ID_MAX] = {
 | 
			
		||||
    [ID_QDEV]  = "qdev",
 | 
			
		||||
    [ID_BLOCK] = "block",
 | 
			
		||||
};
 | 
			
		||||
| 
						 | 
				
			
			@ -53,7 +53,7 @@ char *id_generate(IdSubSystems id)
 | 
			
		|||
    static uint64_t id_counters[ID_MAX];
 | 
			
		||||
    uint32_t rnd;
 | 
			
		||||
 | 
			
		||||
    assert(id < ID_MAX);
 | 
			
		||||
    assert(id < ARRAY_SIZE(id_subsys_str));
 | 
			
		||||
    assert(id_subsys_str[id]);
 | 
			
		||||
 | 
			
		||||
    rnd = g_random_int_range(0, 100);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue