import "DatabaseCampaignMessage.proto";

message DCIAOKernelProtoMsg {
    required DatabaseCampaignMessage fsppilot = 1;

    repeated group Result = 2 {
        enum ResultType {
            OK = 1;
            TIMEOUT = 2;
            TRAP = 3;
            ERR_ERROR_HOOK = 4;
            ERR_DIFFERENT_ACTIVATION = 5;
            
            UNKNOWN = 9;
            NOINJECTION = 10;
        }

        required uint32 bitoffset      = 1 [(sql_primary_key) = true];
        required ResultType resulttype = 2;
        optional uint32 original_value = 3;

        required uint64 fail_time               = 4;
        required bool  invalid_memaccess_write  = 5;
        required bool  invalid_memaccess_read   = 6;
        required bool  invalid_jump             = 7;

        repeated uint32 activation_scheme = 8;
        optional string details = 9;
    }
}
