before(function(done){ elf.load('test/data/sifteo-cubes/membrane.elf', function(err, file) { if (err) return done(err); elfFile = file; return done(); }); });
it('should parse correctly', function(done) { elf.load('test/data/lua-5.2.1_SunOS510_bin/lua52', function(err, file) { expect(err).to.be.null; /* console.log('type: ' + file.type); console.log('machine: ' + file.machine); console.log('version: ' + file.version); console.log('entry: ' + file.entry); console.log('phoff: ' + file.phoff); console.log('shoff: ' + file.shoff); console.log('flags: ' + file.flags); console.log('ehsize: ' + file.ehsize); console.log('phentsize: ' + file.phentsize); console.log('phnum: ' + file.phnum); console.log('shentsize: ' + file.shentsize); console.log('shnum: ' + file.shnum); console.log('shstrndx: ' + file.shstrndx); */ expect(file.enc).to.equal(elf.Encoding.MSB); expect(file.type).to.equal(elf.Type.EXECUTABLE); expect(file.machine).to.equal(elf.Machine.SPARC); expect(file.version).to.equal(elf.Version.CURRENT); expect(file.entry).to.equal(81864); // ??? expect(file.phoff).to.equal(52); expect(file.shoff).to.equal(180668); expect(file.flags).to.equal(0); expect(file.ehsize).to.equal(52); expect(file.phentsize).to.equal(32); expect(file.phnum).to.equal(5); expect(file.shentsize).to.equal(40); expect(file.shnum).to.equal(34); expect(file.shstrndx).to.equal(33); expect(file.pheaders).to.have.length(5); expect(file.sheaders).to.have.length(34); expect(file.sheaders[33].namendx).to.equal(279); expect(file.sheaders[33].name).to.equal('.shstrtab'); expect(file.sheaders[33].type).to.equal(3); expect(file.sheaders[33].flags).to.equal(32); expect(file.sheaders[33].addr).to.equal(0); expect(file.sheaders[33].offset).to.equal(180379); expect(file.sheaders[33].size).to.equal(289); expect(file.sheaders[33].link).to.equal(0); expect(file.sheaders[33].info).to.equal(0); expect(file.sheaders[33].addralign).to.equal(1); expect(file.sheaders[33].entsize).to.equal(0); done(); }); });
it('should parse correctly', function(done) { elf.load('test/data/lua-5.2.1_Linux26_bin/lua52', function(err, file) { expect(err).to.be.null; /* console.log('type: ' + file.type); console.log('machine: ' + file.machine); console.log('version: ' + file.version); console.log('entry: ' + file.entry); console.log('phoff: ' + file.phoff); console.log('shoff: ' + file.shoff); console.log('flags: ' + file.flags); console.log('ehsize: ' + file.ehsize); console.log('phentsize: ' + file.phentsize); console.log('phnum: ' + file.phnum); console.log('shentsize: ' + file.shentsize); console.log('shnum: ' + file.shnum); console.log('shstrndx: ' + file.shstrndx); */ expect(file.enc).to.equal(elf.Encoding.LSB); expect(file.type).to.equal(elf.Type.EXECUTABLE); expect(file.machine).to.equal(elf.Machine.I386); expect(file.version).to.equal(elf.Version.CURRENT); expect(file.entry).to.equal(134524860); // ??? expect(file.phoff).to.equal(52); expect(file.shoff).to.equal(134068); expect(file.flags).to.equal(0); expect(file.ehsize).to.equal(52); expect(file.phentsize).to.equal(32); expect(file.phnum).to.equal(7); expect(file.shentsize).to.equal(40); expect(file.shnum).to.equal(28); expect(file.shstrndx).to.equal(25); expect(file.pheaders).to.have.length(7); expect(file.sheaders).to.have.length(28); expect(file.sheaders[25].namendx).to.equal(17); expect(file.sheaders[25].name).to.equal('.shstrtab'); expect(file.sheaders[25].type).to.equal(3); expect(file.sheaders[25].flags).to.equal(0); expect(file.sheaders[25].addr).to.equal(0); expect(file.sheaders[25].offset).to.equal(133851); expect(file.sheaders[25].size).to.equal(215); expect(file.sheaders[25].link).to.equal(0); expect(file.sheaders[25].info).to.equal(0); expect(file.sheaders[25].addralign).to.equal(1); expect(file.sheaders[25].entsize).to.equal(0); done(); }); });
it('should parse correctly', function(done) { elf.load('test/data/lua-5.2.1_Linux26_64_bin/lua52', function(err, file) { expect(err).to.be.null; /* console.log('type: ' + file.type); console.log('machine: ' + file.machine); console.log('version: ' + file.version); console.log('entry: ' + file.entry); console.log('phoff: ' + file.phoff); console.log('shoff: ' + file.shoff); console.log('flags: ' + file.flags); console.log('ehsize: ' + file.ehsize); console.log('phentsize: ' + file.phentsize); console.log('phnum: ' + file.phnum); console.log('shentsize: ' + file.shentsize); console.log('shnum: ' + file.shnum); console.log('shstrndx: ' + file.shstrndx); */ expect(file.enc).to.equal(elf.Encoding.LSB); expect(file.type).to.equal(elf.Type.EXECUTABLE); expect(file.machine).to.equal(elf.Machine.X86_64); expect(file.version).to.equal(elf.Version.CURRENT); expect(file.entry).to.equal(4210496); // ??? expect(file.phoff).to.equal(64); expect(file.shoff).to.equal(181128); expect(file.flags).to.equal(0); expect(file.ehsize).to.equal(64); expect(file.phentsize).to.equal(56); expect(file.phnum).to.equal(8); expect(file.shentsize).to.equal(64); expect(file.shnum).to.equal(30); expect(file.shstrndx).to.equal(27); done(); }); });
it('should parse correctly', function(done) { elf.load('test/data/lua-5.2.1_SunOS510x86_bin/lua52', function(err, file) { expect(err).to.be.null; expect(file.enc).to.equal(elf.Encoding.LSB); expect(file.type).to.equal(elf.Type.EXECUTABLE); expect(file.machine).to.equal(elf.Machine.I386); expect(file.version).to.equal(elf.Version.CURRENT); expect(file.entry).to.equal(134562592); // ??? expect(file.phoff).to.equal(52); expect(file.shoff).to.equal(164592); expect(file.flags).to.equal(0); expect(file.ehsize).to.equal(52); expect(file.phentsize).to.equal(32); expect(file.phnum).to.equal(6); expect(file.shentsize).to.equal(40); expect(file.shnum).to.equal(28); expect(file.shstrndx).to.equal(27); expect(file.pheaders).to.have.length(6); expect(file.sheaders).to.have.length(28); expect(file.sheaders[27].namendx).to.equal(193); expect(file.sheaders[27].name).to.equal('.shstrtab'); expect(file.sheaders[27].type).to.equal(3); expect(file.sheaders[27].flags).to.equal(32); expect(file.sheaders[27].addr).to.equal(0); expect(file.sheaders[27].offset).to.equal(164388); expect(file.sheaders[27].size).to.equal(203); expect(file.sheaders[27].link).to.equal(0); expect(file.sheaders[27].info).to.equal(0); expect(file.sheaders[27].addralign).to.equal(1); expect(file.sheaders[27].entsize).to.equal(0); done(); }); });