summaryrefslogtreecommitdiff
path: root/src/skin/pe_skin_perk.c
diff options
context:
space:
mode:
authormidipix <writeonce@midipix.org>2025-05-29 00:53:15 +0000
committermidipix <writeonce@midipix.org>2025-05-29 03:35:46 +0000
commit59b920bb87eab928e77b5227a1ed9023292a7552 (patch)
treedf0f396edc1cec2156f5ee7d543b39ed05e20a4b /src/skin/pe_skin_perk.c
parentbbc6acc8f263e26cd487b936ee5ab7a61b59b277 (diff)
downloadperk-59b920bb87eab928e77b5227a1ed9023292a7552.tar.bz2
perk-59b920bb87eab928e77b5227a1ed9023292a7552.tar.xz
driver: become multi-cmd ready, added pe_cmd_perk().
Diffstat (limited to 'src/skin/pe_skin_perk.c')
-rw-r--r--src/skin/pe_skin_perk.c54
1 files changed, 54 insertions, 0 deletions
diff --git a/src/skin/pe_skin_perk.c b/src/skin/pe_skin_perk.c
new file mode 100644
index 0000000..20c84a8
--- /dev/null
+++ b/src/skin/pe_skin_perk.c
@@ -0,0 +1,54 @@
+#include "perk_driver_impl.h"
+#include "argv/argv.h"
+
+const struct argv_option pe_perk_options[] = {
+ {"version", 'v',TAG_VERSION,ARGV_OPTARG_NONE,0,0,0,
+ "show version information"},
+
+ {"help", 'h',TAG_HELP,ARGV_OPTARG_OPTIONAL,0,"short|long",0,
+ "show usage information [listing %s options only]"},
+
+ {"pretty", 'p',TAG_PRETTY,ARGV_OPTARG_REQUIRED,0,"yaml|dlltool",0,
+ "format output for parsing by %s"},
+
+ {"category", 'y',TAG_CATEGORY,ARGV_OPTARG_NONE,0,0,0,
+ "print image category"},
+
+ {"sections", 'c',TAG_SECTIONS,ARGV_OPTARG_NONE,0,0,0,
+ "list image sections"},
+
+ {"symbols", 'm',TAG_SYMBOLS,ARGV_OPTARG_NONE,0,0,0,
+ "list symbols found in the coff symbol table"},
+
+ {"strings", 's',TAG_STRINGS,ARGV_OPTARG_NONE,0,0,0,
+ "list strings found in the coff string table"},
+
+ {"expsyms", 'e',TAG_EXPSYMS,ARGV_OPTARG_NONE,0,0,0,
+ "list exported symbols" },
+
+ {"implibs", 'i',TAG_IMPLIBS,ARGV_OPTARG_NONE,0,0,0,
+ "list .idata dependency libraries"},
+
+ {"impsyms", 'I',TAG_IMPSYMS,ARGV_OPTARG_NONE,0,0,0,
+ "list .idata dependency libraries "
+ "along with imported symbols"},
+
+ {"dsolibs", 'd',TAG_DSOLIBS,ARGV_OPTARG_NONE,0,0,0,
+ "list .dsometa (mdso) dependency libraries"},
+
+ {"dsosyms", 'D',TAG_DSOSYMS,ARGV_OPTARG_NONE,0,0,0,
+ "list .dsometa (mdso) dependency libraries "
+ "along with referenced symbols"},
+
+ {"hdrdump", 'X',TAG_HDRDUMP,ARGV_OPTARG_OPTIONAL,0,
+ "dos|image.dos|"
+ "coff|coff.image|coff.object|coff.optional|"
+ "sectbl|section.table|"
+ "exphdr|export.header|"
+ "imptbl|import.table",0,
+ "output struct-based information for "
+ "either all headers (the default) "
+ "or a specific header"},
+
+ {0,0,0,0,0,0,0,0}
+};