protosol 8.2.0

Protobuf definitions for the SVM fuzzing project.
Documentation
syntax = "proto3";
package org.solana.sealevel.v1;

import "context.proto";
import "metadata.proto";

// Context for an ELF loader fuzz target.
message ELFLoaderCtx {
  // Raw ELF bytes to load.
  bytes elf_data = 1;

  // Active feature set at load time.
  FeatureSet features = 2;

  // Whether deploy-time checks are enabled.
  bool deploy_checks = 3;
}

// Output of ELF loading.
message ELFLoaderEffects {
  // Loader error code (0 = success).
  uint32 err_code = 1;

  // 8-byte XXH3 hash of the .rodata section.
  fixed64 rodata_hash = 2;

  // Number of valid text-section instructions.
  uint64 text_cnt = 3;

  // Byte offset of the text section.
  uint64 text_off = 4;

  // Entry-point program counter.
  uint64 entry_pc = 5;

  // 8-byte XXH3 hash of the validated call destinations bitmap.
  fixed64 calldests_hash = 6;
}

// An ELF loader processing test fixture.
message ELFLoaderFixture {
  FixtureMetadata metadata = 1;
  ELFLoaderCtx input = 2;
  ELFLoaderEffects output = 3;
}