package silifuzz.proto

Mouse Melon logoGet desktop application:
View/edit binary Protocol Buffers messages

message BinaryLogEntry

binary_log_entry.proto:26

A union of all message types that can be sent via a binary log channel. NextID: 8

message ChecksumStatus

snapshot_execution_result.proto:23

Memory checksum status after the snapshot failed (if any).

(message has no fields)

enum ChecksumStatus.Enum

snapshot_execution_result.proto:24

Used in: RunnerOutput, SnapshotExecutionResult

message CorpusMetadata

corpus_metadata.proto:20

Corpus metadata.

Used in: logging.SessionStart, logging.SessionSummary

message EndState

snapshot.proto:174

Describes a specific endstate of executing a snapshot. NEXT ID: 6

Used in: PlayerResult, Snapshot

message Endpoint

snapshot.proto:66

Describes an execution endpoint of a snapshot.

Used in: EndState

enum Endpoint.SigCause

snapshot.proto:79

A more specific cause of the signal.

Used in: Signal

enum Endpoint.SigNum

snapshot.proto:69

Supported signals that could be an endpoint. Note that all these singlas fill-in siginfo_t::si_addr.

Used in: Signal

message Endpoint.Signal

snapshot.proto:90

Describes a signal that snapshot's execution causes.

Used in: Endpoint

message HashTestResult

hashtest_result.proto:21

enum HashTestResult.Status

hashtest_result.proto:22

Used in: HashTestResult

message MemoryBytes

snapshot.proto:46

Describes a single contiguous range of byte values in memory.

Used in: EndState, Snapshot

message MemoryMapping

snapshot.proto:27

Describes a single contiguous page-aligned memory mapping.

Used in: Snapshot, SnapshotSummary

enum MemoryMapping.PermissionBits

snapshot.proto:29

Bits for the possible permissions on memory to be binary-or-ed.

enum PlatformId

snapshot.proto:120

Identifiers for all possible platform microarchitectures we run snapshots on. Grow or subdivide further if there are new machine types we can run on or if there are further differences in CPU's behavior.

message PlayerResult

player_result.proto:25

The proto defintion matches the class definition of Player::Result. Please refer to Player::Result for details.

Used in: SnapshotExecutionResult

enum PlayerResult.Outcome

player_result.proto:27

Snapshot playback outcome code.

Used in: PlayerResult

message RegisterState

snapshot.proto:57

Describes the state of CPU registers. This is available from silifuzz/util/ucontext/ucontext.h

Used in: EndState, Snapshot

message RunnerOutput

snapshot_execution_result.proto:63

RunnerOutput represents the result of a single runner execution.

message RunnerOutput.ExecutionResult

snapshot_execution_result.proto:65

Overall execution result.

Used in: RunnerOutput

enum RunnerOutput.ExecutionResult.StatusCode

snapshot_execution_result.proto:66

Used in: ExecutionResult

message Snapshot

snapshot.proto:272

Proto representation of a snapshot: instructions and the necessary data for execution of some relatively short snippet of binary code (single threaded user-space code) with a well-defined end state. IMPORTANT: In C++ code work with the Snapshot class from silifuzz/common/snapshot.h, not with this proto. We envision adding more fields to describe useful information about the snapshot to help analyze and mutate it (such as disassembly). TBD: Do it via additional fields here or via new message(s) that include this one -- it may be renamed to SnapshotToPlay. NEXT ID: 10

enum Snapshot.Architecture

snapshot.proto:274

Supported architectures of snapshots.

Used in: Snapshot

message SnapshotExecutionResult

snapshot_execution_result.proto:40

A proto to store snapshot execution result identified by a snapshot ID and a play result. NextID: 6

Used in: BinaryLogEntry, RunnerOutput

message SnapshotId

snapshot.proto:338

A convenience wrapper for Snapshot.id useful for data processing pipelines.

message SnapshotMetadata

snapshot.proto:228

Metadata about a Snapshot. We use an "enum selector plus appropriately optional detail fields" format instead of a hierarchy of one_of-s because this proto is not for human or wide code consumption and for many snapshot origin types there are no extra details, so the one_of messages would be empty. NEXT ID: 9

Used in: Snapshot

enum SnapshotMetadata.Origin

snapshot.proto:231

How snapshot originated. NEXT ID: 14

Used in: SnapshotMetadata

message SnapshotSummary

snapshot.proto:345

Describes a single Snapshot for the purposes of sharding. See PartitionCorpus() for details.

message SnapshotTraceData

snapshot.proto:204

Metadata obtained from tracing a snapshot.

Used in: Snapshot