As atoi caps the value of a unsigned int bigger than (2^31 - 1) other than just letting it overflow to the corresponding negative value on 32Bit-integer machines, it must not be used for parsing to unsigned int. TODO: Also apply this fix to all other unsigned values (in database) which get parsed by atoi. Change-Id: I96e29b14d36479ab6e567c527a40feb0b5fb14e5
26 lines
1.1 KiB
Protocol Buffer
26 lines
1.1 KiB
Protocol Buffer
import "google/protobuf/descriptor.proto";
|
|
extend google.protobuf.FieldOptions {
|
|
optional bool sql_primary_key = 32382 [ default = false];
|
|
optional bool sql_ignore = 32383 [ default = false];
|
|
}
|
|
|
|
|
|
import "@CONCRETE_INJECTION_POINT@";
|
|
|
|
message DatabaseCampaignMessage {
|
|
required int32 pilot_id = 1 [(sql_primary_key) = true];
|
|
required int32 variant_id = 2 [(sql_ignore) = true];
|
|
required int32 fspmethod_id = 3 [(sql_ignore) = true];
|
|
|
|
// ToDo: injection_instr can be deleted if all experiments switched to
|
|
// using generic InjectionPointMessage
|
|
required int32 injection_instr = 4 [(sql_ignore) = true];
|
|
optional uint32 injection_instr_absolute = 5 [(sql_ignore) = true];
|
|
required uint32 data_address = 6 [(sql_ignore) = true];
|
|
required int32 data_width = 7 [(sql_ignore) = true];
|
|
required string variant = 8 [(sql_ignore) = true];
|
|
required string benchmark = 9 [(sql_ignore) = true];
|
|
|
|
required InjectionPointMessage injection_point = 10 [(sql_ignore) = true];
|
|
}
|