| |
| |
| |
|
Page: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Comments:
<0> the things I will probably setup for my ELF loader <0> for now, will be static program loading. <0> and expand to support shared objects later. <1> I need f00d <2> http://www.youtube.com/watch?v=hDayiW9kfog <2> good song =) <3> ELF is dead simple for a dumb loader... 30 lines for static executables <4> even for relocs <0> about right? <0> typedef Elf32_Addrunsigned int; <0> typedef Elf32_Halfunsigned short; <0> typedef Elf32_Offunsigned int; <0> typedef Elf32_Swordint; <0> typedef Elf32_Wordunsigned int; <0> ZetItUp, You like Tool? <0> Im listening to 10,000 days now :D
<0> Im pretty much implementing this straight from the spec. <0> uysing the same names <0> lol <2> Zeii: i dont have any songs with them :( <2> but i like them :D <0> :D <0> They are awesome <3> Zeii: uh... typedefs are declared the other way around <0> I own every album they have ever made. <0> ahh thanks mwk forgot :P <0> lol <3> Zeii: https://x-os.homeip.net/~mwk/os/include/elf/ <3> here are lots of definitions taken straight from specs, ready to ude <0> :) thanks mwk <0> but, I want to see if I can make a loader. <0> lol <2> Zeii: sure you didnt mean Dword? <2> :D <2> 23 16:51 | <0> typedef Elf32_Swordint; <2> :D <0> nope, Sword <2> Sword :d <0> :) <0> its in the sepc. <2> kill(Sword); <0> *spec. <2> :D <0> lol <0> HAhaha <3> Signed Word that is <5> ruhroh <5> http://x-os.homeip.net/x0x0x0x0x0x0x0x0x0/ThisFileMustNotExist <5> hah <0> lol <0> totally from the specs. <0> #define EI_NIDENT <0> <0> typedef struct { <0> unsigned chare_ident[EI_NIDENT]; <0> Elf32_Half e_type; <0> Elf32_Halfe_machine; <0> Elf32_Worde_version; <0> Elf32_Addre_entry; <0> Elf32_Offe_phoff; <0> Elf32_Offe_shoff; <0> Elf32_Worde_flags; <0> Elf32_Halfe_ehsize; <0> Elf32_Halfe_phentsize; <0> Elf32_Halfe_phnum; <0> Elf32_Halfe_shentsize; <0> Elf32_Halfe_shnum; <0> Elf32_Halfe_shstrndx; <0> } Elf32_Ehdr; <3> nn: logs showed this file being accessed A LOT, probably for some exploit... so i decided to create it, just for kicks :) <5> ahh <5> :) <5> interesting language <0> Mwk, this seem right? <0> #define ET_NONE <0> #define ET_REL
<0> #define ET_EXEC <0> #defineET_DYN <0> #define ET_CORE <0> #define ET_LOPROCxFF00 <0> #define ET_HIPROCxFFFF <0> Just going through the spec now, defining all the strucutres and such <6> so you're going to paste the whole spec here? <7> zeii, wtf, i told you use a pastebin <0> >< jeez, sorry. <8> It's not so much talking going on anyways.. don't get too harsh to each other .. ;) <0> :) <6> code which switches to real mode and back to pmode has to reside within the first megabyte of memory ? <3> Zeii: yea, in fact, it's in spec, and it agrees with my headers. <3> shackan_: in first 0x10fff0 bytes of memory, actually... <6> great, thanks <0> thanks mw <0> *mwk <2> #define DONT_GO_OVER_THIS_BYTE 0x10FFF0 <2> :D <3> hm <3> complete SPARC relocation list or play some nethack <3> that's the question <2> SPARC <3> bah... i even managed to find specs for all 42 i386 relocation types, including some listed as 'reserved' in some specs <0> woah <3> ELF relocations **** kinda <3> each architecture has its own relocation types <3> allocation is totally uncoordinated <3> on Solaris, someone needed a relocation that takes size of a symbol to implement some stuff in dtrace <3> since Solaris supports *86 and SPARC, they added new relocations to i386, x86_64 and sparc lists <0> crazy <3> the nice part about it is that anyone can use it, even outside of Sun <3> but... if he wants to use it on, say, PPC, he cannot. cause there's on relocation type ***igned there. <3> now, some smart*** in GNU invented new optimised TLS model <3> which makes for great speedup, etc, etc <3> and is arch-independent <3> but, this guy only knew FR-V and x86... so only two arches support it <0> mwk, what to the LOPROC and HIPROC, LORESERVE / HIRESERVE feilds mean to me? <3> Zeii: LOPROC and HIPROC? depends on your architecture. <3> LORESERVE/HIRESERVE are range of reserved section indices <3> which are treated specially by linker and friends <0> hm <0> linker as in, compiler/linker or linker as in dynamic linker? <3> linker and ***embler, in fact <3> dynamic linker doesn't bother about sections <0> Ah. <0> So, it doesn tmean so much to something reading the ELF? <0> just something building it? <2> Zeii: http://www.youtube.com/watch?v=yIcDczoDhZ8 <2> <3 <0> lol :) <3> Zeii: depends what you mean by reading <3> it doesn't mean anything to program loader reading ELF executable to load it to memory <0> Ah, I see. :) <3> in fact, simple executable loader should only bother about ELF header and PT_LOAD program headers <0> :D Thanks mwk :D <3> but, it means alot to linker [ld] reading .o files to form the executable/.so <0> should the Headers be bitpacked? <3> wtf is bitpacked? <8> Bitfields, maybe? <0> no, packed. <0> __attribute__((packed)); <8> I suppose so. <0> no space between fields. <3> no. <8> No? Oh. <0> eg: e_type directly after all of e_idents stuff <3> JimPanic, Zeii: ELF designers were smart and designed them so that there aren't any empty spaces between fields anyway <3> also, packing structures is almost always dumb idea <3> the only exceptions being when interfacing to hardware or compressed data formats, like DWARF <0> thought so, since the spec says it doesnt use any bitfields due to portability reaons. THanks mwk. <3> also, ferchrissake, ELF specification contains C typedef for all structures. just copy-and-paste it to your header. <0> I have a question about the section header flag, SHF_MASKPROC
Return to
#osdev or Go to some related
logs:
#gentoo MySQL CREATE FUNCTION Error 1064 #osdev #suse #perl #linux #php #linux #php #web
|
|