summaryrefslogtreecommitdiffhomepage
path: root/src/output
diff options
context:
space:
mode:
authormidipix <writeonce@midipix.org>2025-05-31 21:34:17 +0000
committermidipix <writeonce@midipix.org>2025-05-31 22:11:05 +0000
commitd9d2d9175f0e52d873e5bf9210a1f35fd3a49b7c (patch)
tree94f05e51309973c64f5428ceebfd817c69f51447 /src/output
parent1c0129c0e4039a3b337cc54a2b9cbace7e6a0849 (diff)
downloadperk-d9d2d9175f0e52d873e5bf9210a1f35fd3a49b7c.tar.bz2
perk-d9d2d9175f0e52d873e5bf9210a1f35fd3a49b7c.tar.xz
driver: pe_lib_get_unit_ctx(): added handling of archives and archive members.
Diffstat (limited to 'src/output')
-rw-r--r--src/output/pe_output_error.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/output/pe_output_error.c b/src/output/pe_output_error.c
index 84a867b..1d818d1 100644
--- a/src/output/pe_output_error.c
+++ b/src/output/pe_output_error.c
@@ -27,13 +27,17 @@ static const char * const pe_error_strings[PERK_ERR_CAP] = {
[PERK_ERR_NULL_CONTEXT] = "null driver or unit context",
[PERK_ERR_NULL_IMAGE] = "null image base pointer",
[PERK_ERR_INVALID_CONTEXT] = "invalid driver or unit context",
- [PERK_ERR_INVALID_IMAGE] = "invalid PE image",
+ [PERK_ERR_INVALID_IMAGE] = "invalid PE image, object, or common archive",
[PERK_ERR_IMAGE_SIZE_ZERO] = "PE image size cannot be zero",
[PERK_ERR_IMAGE_MALFORMED] = "malformed PE image detected",
[PERK_ERR_BAD_DOS_HEADER] = "bad DOS header",
[PERK_ERR_BAD_COFF_HEADER] = "bad COFF header",
[PERK_ERR_BAD_IMAGE_TYPE] = "bad PE image type",
[PERK_ERR_UNSUPPORTED_ABI] = "unsupported image abi",
+
+ [PERK_ERR_AR_NON_PE_MEMBERS] = "format of current archive member is not PE/COFF",
+ [PERK_ERR_AR_MIXED_PE_MEMBERS] = "archive mixes objects of different architectures",
+ [PERK_ERR_AR_NESTED_ARCHIVE] = "nested archives are currently not supported",
};
static const char * pe_output_error_header(const struct pe_error_info * erri)