From 528fe13784a9f18520c3f615c7ece15af5ca3bbe Mon Sep 17 00:00:00 2001 From: Jean Delvare Date: Tue, 3 Jan 2006 15:28:03 +0000 Subject: Scan for VPD records on 4-byte boundaries instead of 16-byte boundaries. This is needed for some eServer xSeries 206. Still emit a warning if a VPD record is found not on a 16-byte boundary. --- vpddecode.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'vpddecode.c') diff --git a/vpddecode.c b/vpddecode.c index aeadf25..437acb3 100644 --- a/vpddecode.c +++ b/vpddecode.c @@ -338,13 +338,16 @@ int main(int argc, char * const argv[]) if((buf=mem_chunk(0xF0000, 0x10000, opt.devmem))==NULL) exit(1); - for(fp=0; fp<=0xFFF0; fp+=16) + for(fp=0; fp<=0xFFF0; fp+=4) { u8 *p=buf+fp; if(memcmp((char *)p, "\252\125VPD", 5)==0 && fp+p[5]-1<=0xFFFF) { + if(fp%16 && !(opt.flags & FLAG_QUIET)) + printf("Unaligned address (%#lx)! Please report.\n", + 0xf0000+fp); if(opt.flags & FLAG_DUMP) { dump(p, p[5]); -- cgit v1.2.1