mirror of
				https://xff.cz/git/u-boot/
				synced 2025-10-31 10:26:10 +01:00 
			
		
		
		
	fdt_support: Fix buffer overflow in fdt_fixup_memory_banks
When fdt_fixup_memory_banks is called with 2-cell address and size fields in the device-tree (IE: 64-bit address and size), then it will overflow its on-stack "tmp" buffer. This fixes the buffer size and adds a comment explaining how many bytes need to be allocated per record. Signed-off-by: Kyle Moffett <Kyle.D.Moffett@boeing.com> Cc: Jerry Van Baren <vanbaren@cideas.com> Acked-by: Gerald Van Baren <vanbaren@cideas.com>
This commit is contained in:
		
				
					committed by
					
						 Gerald Van Baren
						Gerald Van Baren
					
				
			
			
				
	
			
			
			
						parent
						
							73e5476e1e
						
					
				
				
					commit
					d13ffa66af
				
			| @@ -394,7 +394,7 @@ int fdt_fixup_memory_banks(void *blob, u64 start[], u64 size[], int banks) | ||||
| { | ||||
| 	int err, nodeoffset; | ||||
| 	int addr_cell_len, size_cell_len, len; | ||||
| 	u8 tmp[banks * 8]; | ||||
| 	u8 tmp[banks * 16]; /* Up to 64-bit address + 64-bit size */ | ||||
| 	int bank; | ||||
|  | ||||
| 	err = fdt_check_header(blob); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user