#include "reloc.h" enum relocated_enum_unsigned_32_checked_variants { #ifndef TARGET U32_VAL_A = 0xAAAAAAAA, #endif U32_VAL_B = 0xBBBBBBBB, #ifdef TARGET U32_VAL_C = 0xCCCCCCCC #endif }; __noinline int enum_unsigned_32_checked_variants_global() { #ifndef TARGET if (bpf_core_enum_value_exists( enum relocated_enum_unsigned_32_checked_variants, U32_VAL_A)) { return set_output(bpf_core_enum_value( enum relocated_enum_unsigned_32_checked_variants, U32_VAL_A)); #else if (bpf_core_enum_value_exists( enum relocated_enum_unsigned_32_checked_variants, U32_VAL_C)) { return set_output(bpf_core_enum_value( enum relocated_enum_unsigned_32_checked_variants, U32_VAL_C)); #endif } else { return set_output(bpf_core_enum_value( enum relocated_enum_unsigned_32_checked_variants, U32_VAL_B)); } } SEC("uprobe") int program(void *ctx) { return enum_unsigned_32_checked_variants_global(); }