Skip to content

NativeAotInfo

Namespace: Dotsider.Core.Analysis.Models

Assembly: Dotsider.Core.dll

Facts extracted from the embedded ReadyToRun header of a Native AOT binary. Every Native AOT image embeds this header (signature “RTR\0”) so the runtime can locate its module sections; its presence with no COR header identifies the binary as Native AOT compiled .NET.

public sealed record NativeAotInfo : IEquatable<NativeAotInfo>

ObjectNativeAotInfo

NativeAotInfo(int, ushort, ushort, uint, int, byte, string?)

Section titled “NativeAotInfo(int, ushort, ushort, uint, int, byte, string?)”

Facts extracted from the embedded ReadyToRun header of a Native AOT binary. Every Native AOT image embeds this header (signature “RTR\0”) so the runtime can locate its module sections; its presence with no COR header identifies the binary as Native AOT compiled .NET.

Parameters:

  • HeaderOffset (Int32): File offset of the RTR signature.
  • MajorVersion (UInt16): ReadyToRun format major version — the ILC toolchain format version.
  • MinorVersion (UInt16): ReadyToRun format minor version.
  • Flags (UInt32): Raw header flags.
  • SectionCount (Int32): Number of module section entries following the header.
  • EntrySize (Byte): Size in bytes of each module section entry.
  • RuntimeVersion (String): Heuristically detected runtime version (e.g. “10.0.8”), or null when not found. Recovered from a version string the runtime pack embeds near a well-known error message; absence is normal for stripped or unusually linked binaries.
public NativeAotInfo(int HeaderOffset, ushort MajorVersion, ushort MinorVersion, uint Flags, int SectionCount, byte EntrySize, string? RuntimeVersion)

Size in bytes of each module section entry.

Returns: Byte

public byte EntrySize { get; init; }

Raw header flags.

Returns: UInt32

public uint Flags { get; init; }

File offset of the RTR signature.

Returns: Int32

public int HeaderOffset { get; init; }

ReadyToRun format major version — the ILC toolchain format version.

Returns: UInt16

public ushort MajorVersion { get; init; }

ReadyToRun format minor version.

Returns: UInt16

public ushort MinorVersion { get; init; }

Heuristically detected runtime version (e.g. “10.0.8”), or null when not found. Recovered from a version string the runtime pack embeds near a well-known error message; absence is normal for stripped or unusually linked binaries.

Returns: String

public string? RuntimeVersion { get; init; }

Number of module section entries following the header.

Returns: Int32

public int SectionCount { get; init; }