diff options
author | midipix <writeonce@midipix.org> | 2025-06-13 06:44:24 +0000 |
---|---|---|
committer | midipix <writeonce@midipix.org> | 2025-06-13 07:03:47 +0000 |
commit | a484c9ca09c569aeeb239f78e9c3191c39f4d6f9 (patch) | |
tree | 1deef5a72bd60a0dd0662b2943e4b3202c441545 | |
parent | e72eab92e4509dd0e925335f2664a602b2d123bd (diff) | |
download | perk-a484c9ca09c569aeeb239f78e9c3191c39f4d6f9.tar.bz2 perk-a484c9ca09c569aeeb239f78e9c3191c39f4d6f9.tar.xz |
perk_secattr.h: added with section attr definitions for reserved sections.
-rw-r--r-- | include/perk/perk_secattr.h | 75 | ||||
-rw-r--r-- | project/headers.mk | 1 |
2 files changed, 76 insertions, 0 deletions
diff --git a/include/perk/perk_secattr.h b/include/perk/perk_secattr.h new file mode 100644 index 0000000..e0cf2b1 --- /dev/null +++ b/include/perk/perk_secattr.h @@ -0,0 +1,75 @@ +#ifndef PERK_SECATTR_H +#define PERK_SECATTR_H + +#include "perk_consts.h" + +#define PE_SECTION_ATTR_BSS (PE_IMAGE_SCN_CNT_UNINITIALIZED_DATA \ + |PE_IMAGE_SCN_MEM_READ \ + |PE_IMAGE_SCN_MEM_WRITE) + +#define PE_SECTION_ATTR_TEXT (PE_IMAGE_SCN_CNT_CODE \ + |PE_IMAGE_SCN_MEM_READ \ + |PE_IMAGE_SCN_MEM_EXECUTE) + +#define PE_SECTION_ATTR_DATA (PE_IMAGE_SCN_CNT_INITIALIZED_DATA \ + |PE_IMAGE_SCN_MEM_READ \ + |PE_IMAGE_SCN_MEM_WRITE) + +#define PE_SECTION_ATTR_TLS (PE_IMAGE_SCN_CNT_INITIALIZED_DATA \ + |PE_IMAGE_SCN_MEM_READ \ + |PE_IMAGE_SCN_MEM_WRITE) + +#define PE_SECTION_ATTR_DEBUG (PE_IMAGE_SCN_CNT_INITIALIZED_DATA \ + |PE_IMAGE_SCN_MEM_READ \ + |PE_IMAGE_SCN_MEM_DISCARDABLE) + +#define PE_SECTION_ATTR_DRECTIVE (PE_IMAGE_SCN_LNK_INFO) + +#define PE_SECTION_ATTR_CORMETA (PE_IMAGE_SCN_LNK_INFO) + +#define PE_SECTION_ATTR_IDLSYM (PE_IMAGE_SCN_LNK_INFO) + +#define PE_SECTION_ATTR_EDATA (PE_IMAGE_SCN_CNT_INITIALIZED_DATA \ + |PE_IMAGE_SCN_MEM_READ) + +#define PE_SECTION_ATTR_IDATA (PE_IMAGE_SCN_CNT_INITIALIZED_DATA \ + |PE_IMAGE_SCN_MEM_READ \ + |PE_IMAGE_SCN_MEM_WRITE) + +#define PE_SECTION_ATTR_PDATA (PE_IMAGE_SCN_CNT_INITIALIZED_DATA \ + |PE_IMAGE_SCN_MEM_READ) + +#define PE_SECTION_ATTR_RDATA (PE_IMAGE_SCN_CNT_INITIALIZED_DATA \ + |PE_IMAGE_SCN_MEM_READ) + +#define PE_SECTION_ATTR_RELOC (PE_IMAGE_SCN_CNT_INITIALIZED_DATA \ + |PE_IMAGE_SCN_MEM_READ \ + |PE_IMAGE_SCN_MEM_DISCARDABLE) + +#define PE_SECTION_ATTR_RSRC (PE_IMAGE_SCN_CNT_INITIALIZED_DATA \ + |PE_IMAGE_SCN_MEM_READ) + +#define PE_SECTION_ATTR_SBSS (PE_IMAGE_SCN_CNT_UNINITIALIZED_DATA \ + |PE_IMAGE_SCN_MEM_READ \ + |PE_IMAGE_SCN_MEM_WRITE \ + |PE_IMAGE_SCN_GPREL) + +#define PE_SECTION_ATTR_SDATA (PE_IMAGE_SCN_CNT_INITIALIZED_DATA \ + |PE_IMAGE_SCN_MEM_READ \ + |PE_IMAGE_SCN_MEM_WRITE \ + |PE_IMAGE_SCN_GPREL) + +#define PE_SECTION_ATTR_VSDATA (PE_IMAGE_SCN_CNT_INITIALIZED_DATA \ + |PE_IMAGE_SCN_MEM_READ \ + |PE_IMAGE_SCN_MEM_WRITE) + +#define PE_SECTION_ATTR_SRDATA (PE_IMAGE_SCN_CNT_INITIALIZED_DATA \ + |PE_IMAGE_SCN_MEM_READ \ + |PE_IMAGE_SCN_GPREL) + +#define PE_SECTION_ATTR_XDATA (PE_IMAGE_SCN_CNT_INITIALIZED_DATA \ + |PE_IMAGE_SCN_MEM_READ) + +#define PE_SECTION_ATTR_SXDATA (PE_IMAGE_SCN_LNK_INFO) + +#endif diff --git a/project/headers.mk b/project/headers.mk index 00ee4ae..1dab49c 100644 --- a/project/headers.mk +++ b/project/headers.mk @@ -8,6 +8,7 @@ API_HEADERS = \ $(SOURCE_DIR)/include/$(PACKAGE)/perk_edefs.h \ $(SOURCE_DIR)/include/$(PACKAGE)/perk_meta.h \ $(SOURCE_DIR)/include/$(PACKAGE)/perk_output.h \ + $(SOURCE_DIR)/include/$(PACKAGE)/perk_secattr.h \ $(SOURCE_DIR)/include/$(PACKAGE)/perk_structs.h INTERNAL_HEADERS = \ |