[LinuxBIOS] ROM image integrity

Stefan Reinauer stepan at openbios.org
Sat Nov 12 21:18:27 CET 2005


Hi,

Some suggestions:

1) We could put a checksum in the LinuxBIOS rom image so it can be 
   checked for integrity during boot time. Usually safety relevant 
   embedded devices require such a checksum and use CRC16 or CRC32 
   for that.

2) Is there any distinct way of finding out whether a flash image 
   is a LinuxBIOS image? One thing that can be read from an image 
   is the mainboard vendor and id, but the code looks somewhat ugly:
      
      void show_id(unsigned char *bios, int size)
      {
              unsigned char *manuf, *id;
      
              id=bios+size-0x1d;
              while (*id==0) id--; 
              while (*id)    id--;
      
              manuf=id-1; id++;
              while (*manuf && *manuf!=0xff) manuf--;
              manuf++;
      
              printf("MANUFACTURER: %s\n", manuf);
              printf("MAINBOARD ID: %s\n", id);
      }
      
3) There should be a flash description map in the rom file that allows 
   a program accessing the flash to automatically exclude certain 
   flashing areas such as the onboard option rom space or the fallback 
   image.

Stefan




More information about the coreboot mailing list