Index: kernel/generic/src/lib/elf.c
===================================================================
--- kernel/generic/src/lib/elf.c	(revision 5e801dccc49faadcb18cd8ddee6200633e8f11b8)
+++ kernel/generic/src/lib/elf.c	(revision 95174bfdc3425cbd2a229f8813c1b4c459e4a264)
@@ -50,14 +50,5 @@
 #include <lib/elf_load.h>
 
-static const char *error_codes[] = {
-	"no error",
-	"invalid image",
-	"address space error",
-	"incompatible image",
-	"unsupported image type",
-	"irrecoverable error"
-};
-
-static int load_segment(elf_segment_header_t *, elf_header_t *, as_t *);
+static errno_t load_segment(elf_segment_header_t *, elf_header_t *, as_t *);
 
 /** ELF loader
@@ -67,8 +58,8 @@
  * @param flags  A combination of ELD_F_*
  *
- * @return EE_OK on success
+ * @return EOK on success
  *
  */
-unsigned int elf_load(elf_header_t *header, as_t *as)
+errno_t elf_load(elf_header_t *header, as_t *as)
 {
 	/* Identify ELF */
@@ -77,5 +68,5 @@
 	    (header->e_ident[EI_MAG2] != ELFMAG2) ||
 	    (header->e_ident[EI_MAG3] != ELFMAG3))
-		return EE_INVALID;
+		return EINVAL;
 
 	/* Identify ELF compatibility */
@@ -85,16 +76,16 @@
 	    (header->e_version != EV_CURRENT) ||
 	    (header->e_ident[EI_CLASS] != ELF_CLASS))
-		return EE_INCOMPATIBLE;
+		return EINVAL;
 
 	if (header->e_phentsize != sizeof(elf_segment_header_t))
-		return EE_INCOMPATIBLE;
+		return EINVAL;
 
 	/* Check if the object type is supported. */
 	if (header->e_type != ET_EXEC)
-		return EE_UNSUPPORTED;
+		return ENOTSUP;
 
 	/* Check if the ELF image starts on a page boundary */
 	if (ALIGN_UP((uintptr_t) header, PAGE_SIZE) != (uintptr_t) header)
-		return EE_UNSUPPORTED;
+		return ENOTSUP;
 
 	/* Walk through all segment headers and process them. */
@@ -108,24 +99,10 @@
 			continue;
 
-		int rc = load_segment(seghdr, header, as);
-		if (rc != EE_OK)
+		errno_t rc = load_segment(seghdr, header, as);
+		if (rc != EOK)
 			return rc;
 	}
 
-	return EE_OK;
-}
-
-/** Print error message according to error code.
- *
- * @param rc Return code returned by elf_load().
- *
- * @return NULL terminated description of error.
- *
- */
-const char *elf_error(unsigned int rc)
-{
-	assert(rc < sizeof(error_codes) / sizeof(char *));
-
-	return error_codes[rc];
+	return EOK;
 }
 
@@ -136,8 +113,8 @@
  * @param as    Address space into wich the ELF is being loaded.
  *
- * @return EE_OK on success, error code otherwise.
+ * @return EOK on success, error code otherwise.
  *
  */
-int load_segment(elf_segment_header_t *entry, elf_header_t *elf, as_t *as)
+errno_t load_segment(elf_segment_header_t *entry, elf_header_t *elf, as_t *as)
 {
 	mem_backend_data_t backend_data;
@@ -146,5 +123,5 @@
 		if ((entry->p_offset % entry->p_align) !=
 		    (entry->p_vaddr % entry->p_align))
-			return EE_INVALID;
+			return EINVAL;
 	}
 
@@ -177,5 +154,5 @@
 	    AS_AREA_ATTR_NONE, &elf_backend, &backend_data, &base, 0);
 	if (!area)
-		return EE_MEMORY;
+		return ENOMEM;
 
 	/*
@@ -184,5 +161,5 @@
 	 */
 
-	return EE_OK;
+	return EOK;
 }
 
