Add platform check for `-A` CoreSight mode
REF:
MODIFY
src/afl-analyze.c
src/afl-analyze.c
@@ -997,6 +997,12 @@ int main(int argc, char **argv_orig, char **envp) {
if (cs_mode) { FATAL("Multiple -A options not supported"); }
+ if (!(__aarch64__ && __linux__)) {
+
+ FATAL("-A option is not supported on this platform");
+
+ }
+
cs_mode = 1;
fsrv.cs_mode = cs_mode;
break;

MODIFY
src/afl-fuzz.c
src/afl-fuzz.c
@@ -830,6 +830,13 @@ int main(int argc, char **argv_orig, char **envp) {
case 'A': /* CoreSight mode */
if (afl->fsrv.cs_mode) { FATAL("Multiple -A options not supported"); }
+
+ if (!(__aarch64__ && __linux__)) {
+
+ FATAL("-A option is not supported on this platform");
+
+ }
+
afl->fsrv.cs_mode = 1;
break;

MODIFY
src/afl-showmap.c
src/afl-showmap.c
@@ -1069,6 +1069,12 @@ int main(int argc, char **argv_orig, char **envp) {
if (fsrv->cs_mode) { FATAL("Multiple -P options not supported"); }
+ if (!(__aarch64__ && __linux__)) {
+
+ FATAL("-P option is not supported on this platform");
+
+ }
+
fsrv->cs_mode = true;
break;

MODIFY
src/afl-tmin.c
src/afl-tmin.c
@@ -1040,6 +1040,12 @@ int main(int argc, char **argv_orig, char **envp) {
if (fsrv->cs_mode) { FATAL("Multiple -A options not supported"); }
+ if (!(__aarch64__ && __linux__)) {
+
+ FATAL("-A option is not supported on this platform");
+
+ }
+
fsrv->cs_mode = 1;
break;

Add platform check for `-A` CoreSight mode

REF:
https://github.com/AFLplusplus/AFLplusplus/pull/1156#discussion_r747454306

Signed-off-by: Akira Moroo <retrage01@gmail.com>