Index: kernel/generic/src/lib/elf.c
===================================================================
--- kernel/generic/src/lib/elf.c	(revision e3f819f43b108ff90a50324cbced9c2b89d2171e)
+++ kernel/generic/src/lib/elf.c	(revision 36470ce8f1d0f0e1ac58746fc8bd8bf3bed80974)
@@ -46,4 +46,5 @@
 #include <macros.h>
 #include <arch.h>
+#include <str.h>
 
 #include <lib/elf_load.h>
@@ -58,6 +59,4 @@
 };
 
-static int segment_header(elf_segment_header_t *, elf_header_t *, as_t *,
-    unsigned int);
 static int load_segment(elf_segment_header_t *, elf_header_t *, as_t *);
 
@@ -71,5 +70,5 @@
  *
  */
-unsigned int elf_load(elf_header_t *header, as_t *as, unsigned int flags)
+unsigned int elf_load(elf_header_t *header, as_t *as)
 {
 	/* Identify ELF */
@@ -106,5 +105,8 @@
 		    header->e_phoff))[i];
 
-		int rc = segment_header(seghdr, header, as, flags);
+		if (seghdr->p_type != PT_LOAD)
+			continue;
+
+		int rc = load_segment(seghdr, header, as);
 		if (rc != EE_OK)
 			return rc;
@@ -126,46 +128,4 @@
 
 	return error_codes[rc];
-}
-
-/** Process segment header.
- *
- * @param entry Segment header.
- * @param elf   ELF header.
- * @param as    Address space into wich the ELF is being loaded.
- *
- * @return EE_OK on success, error code otherwise.
- *
- */
-static int segment_header(elf_segment_header_t *entry, elf_header_t *elf,
-    as_t *as, unsigned int flags)
-{
-	switch (entry->p_type) {
-	case PT_NULL:
-	case PT_PHDR:
-	case PT_NOTE:
-		break;
-	case PT_LOAD:
-		return load_segment(entry, elf, as);
-	case PT_TLS:
-		break;
-	case PT_DYNAMIC:
-	case PT_INTERP:
-		// FIXME
-		/*
-		char *interp = (char *) elf + entry->p_offset;
-		if (memcmp((uintptr_t) interp, (uintptr_t) ELF_INTERP_ZSTR,
-		    ELF_INTERP_ZLEN) != 0) {
-			return EE_UNSUPPORTED;
-		} */
-		if ((flags & ELD_F_LOADER) == 0)
-			return EE_LOADER;
-		break;
-	case PT_SHLIB:
-	case PT_LOPROC:
-	case PT_HIPROC:
-	default:
-		return EE_UNSUPPORTED;
-	}
-	return EE_OK;
 }
 
