LibElf: Build the error management code in libelf.
This change makes some minor changes to get the error management code in libelf to build on Linux and to build it into the library.
This commit is contained in:
parent
1aa4869ff0
commit
7bc68151b7
3 changed files with 6 additions and 3 deletions
|
@ -40,6 +40,8 @@ ElfFile('elf_begin.c')
|
||||||
ElfFile('elf_cntl.c')
|
ElfFile('elf_cntl.c')
|
||||||
ElfFile('elf_data.c')
|
ElfFile('elf_data.c')
|
||||||
ElfFile('elf_end.c')
|
ElfFile('elf_end.c')
|
||||||
|
ElfFile('elf_errmsg.c')
|
||||||
|
ElfFile('elf_errno.c')
|
||||||
ElfFile('elf_fill.c')
|
ElfFile('elf_fill.c')
|
||||||
ElfFile('elf_flag.c')
|
ElfFile('elf_flag.c')
|
||||||
ElfFile('elf_getarhdr.c')
|
ElfFile('elf_getarhdr.c')
|
||||||
|
|
|
@ -30,6 +30,7 @@
|
||||||
#define __LIBELF_H_
|
#define __LIBELF_H_
|
||||||
|
|
||||||
#include "elf_queue.h"
|
#include "elf_queue.h"
|
||||||
|
#include "libelf.h"
|
||||||
|
|
||||||
#ifndef NULL
|
#ifndef NULL
|
||||||
#define NULL ((void *) 0)
|
#define NULL ((void *) 0)
|
||||||
|
|
|
@ -71,10 +71,10 @@ elf_errmsg(int error)
|
||||||
if (error < 0 || error >= ELF_E_NUM)
|
if (error < 0 || error >= ELF_E_NUM)
|
||||||
return _libelf_errors[ELF_E_NUM];
|
return _libelf_errors[ELF_E_NUM];
|
||||||
if (oserr) {
|
if (oserr) {
|
||||||
strlcpy(LIBELF_PRIVATE(msg), _libelf_errors[error],
|
strncpy(LIBELF_PRIVATE(msg), _libelf_errors[error],
|
||||||
sizeof(LIBELF_PRIVATE(msg)));
|
sizeof(LIBELF_PRIVATE(msg)));
|
||||||
strlcat(LIBELF_PRIVATE(msg), ": ", sizeof(LIBELF_PRIVATE(msg)));
|
strncat(LIBELF_PRIVATE(msg), ": ", sizeof(LIBELF_PRIVATE(msg)));
|
||||||
strlcat(LIBELF_PRIVATE(msg), strerror(oserr),
|
strncat(LIBELF_PRIVATE(msg), strerror(oserr),
|
||||||
sizeof(LIBELF_PRIVATE(msg)));
|
sizeof(LIBELF_PRIVATE(msg)));
|
||||||
return (const char *)&LIBELF_PRIVATE(msg);
|
return (const char *)&LIBELF_PRIVATE(msg);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue