about summary refs log tree commit diff stats
path: root/kernel.soso/elf.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel.soso/elf.c')
-rw-r--r--kernel.soso/elf.c30
1 files changed, 10 insertions, 20 deletions
diff --git a/kernel.soso/elf.c b/kernel.soso/elf.c
index 7c74d50c..4a0b75a8 100644
--- a/kernel.soso/elf.c
+++ b/kernel.soso/elf.c
@@ -3,21 +3,18 @@
 #include "process.h"
 #include "screen.h"
 
-BOOL isElf(char *elfData)
-{
+BOOL isElf(char *elfData) {
     Elf32_Ehdr *hdr = (Elf32_Ehdr *) elfData;
 
     if (hdr->e_ident[0] == 0x7f && hdr->e_ident[1] == 'E' &&
-        hdr->e_ident[2] == 'L' && hdr->e_ident[3] == 'F')
-    {
+        hdr->e_ident[2] == 'L' && hdr->e_ident[3] == 'F') {
         return TRUE;
     }
 
     return FALSE;
 }
 
-uint32 loadElf(char *elfData)
-{
+uint32 loadElf(char *elfData) {
     uint32 v_begin, v_end;
     Elf32_Ehdr *hdr;
     Elf32_Phdr *p_entry;
@@ -28,29 +25,24 @@ uint32 loadElf(char *elfData)
 
     s_entry = (Elf32_Scdr*) (elfData + hdr->e_shoff);
 
-    if (isElf(elfData)==FALSE)
-    {
+    if (isElf(elfData)==FALSE) {
         return 0;
     }
 
-    for (int pe = 0; pe < hdr->e_phnum; pe++, p_entry++)
-    {
+    for (int pe = 0; pe < hdr->e_phnum; pe++, p_entry++) {
         //Read each entry
         printkf("loading p_entry %d\n", pe);
 
-        if (p_entry->p_type == PT_LOAD)
-        {
+        if (p_entry->p_type == PT_LOAD) {
             v_begin = p_entry->p_vaddr;
             v_end = p_entry->p_vaddr + p_entry->p_memsz;
             printkf("p_entry: %x\n", v_begin);
-            if (v_begin < USER_OFFSET)
-            {
+            if (v_begin < USER_OFFSET) {
                 printkf("INFO: loadElf(): can't load executable below %x\n", USER_OFFSET);
                 return 0;
             }
 
-            if (v_end > USER_STACK)
-            {
+            if (v_end > USER_STACK) {
                 printkf("INFO: loadElf(): can't load executable above %x\n", USER_STACK);
                 return 0;
             }
@@ -61,11 +53,9 @@ uint32 loadElf(char *elfData)
             printkf("about to memcpy\n");
             memcpy((uint8 *) v_begin, (uint8 *) (elfData + p_entry->p_offset), p_entry->p_filesz);
             printkf("done with memcpy\n");
-            if (p_entry->p_memsz > p_entry->p_filesz)
-            {
+            if (p_entry->p_memsz > p_entry->p_filesz) {
                 char* p = (char *) p_entry->p_vaddr;
-                for (int i = p_entry->p_filesz; i < (int)(p_entry->p_memsz); i++)
-                {
+                for (int i = p_entry->p_filesz; i < (int)(p_entry->p_memsz); i++) {
                     p[i] = 0;
                 }
             }