Skip to main content

Search OfficeIMO

Enter a topic, API type, or PowerShell command.

Documentation Search all OfficeIMO/
Class

EmailDkimSignatureResult

OfficeIMO.Email

Namespace
OfficeIMO.Email
Assembly
OfficeIMO.Email
Source revision
ac7e6e1bad8a with working tree changes
Modifiers
sealed

Typed evaluation of one DKIM-Signature, ARC-Message-Signature, or ARC-Seal header field.

Inheritance

  • object
  • EmailDkimSignatureResult

Usage

Explore 3 API references to this type

This type appears in these public API surfaces even when no hand-authored example is attached directly to the page.

Properties

public EmailDkimSignatureKind Kind { get; } #

Signature header kind.

public int HeaderIndex { get; } #

Zero-based position of the signature header among all header fields, top first.

public EmailDkimResult Result { get; internal set; } #

Evaluation result.

public EmailDkimFailureReason FailureReason { get; internal set; } #

Reason for a non-passing result.

public string Message { get; internal set; } #

Human-readable explanation. It never contains key material.

public string? Domain { get; internal set; } #

Signing domain (d=).

public string? Selector { get; internal set; } #

Selector (s=).

public string? Identity { get; internal set; } #

Agent or user identifier (i=) for DKIM-Signature; null for ARC headers.

public int Instance { get; internal set; } #

ARC instance (i=) for ARC headers; zero for DKIM-Signature.

public string? Algorithm { get; internal set; } #

Signature algorithm as written (a=).

public EmailDkimCanonicalization HeaderCanonicalization { get; internal set; } #

Header canonicalization.

public EmailDkimCanonicalization BodyCanonicalization { get; internal set; } #

Body canonicalization.

public IReadOnlyList<string> SignedHeaders { get; internal set; } #

Signed header names (h=) in signature order, including oversigned names.

public long? BodyLengthLimit { get; internal set; } #

Body length limit (l=) when present.

public long UnsignedBodyBytes { get; internal set; } #

Canonical body bytes that follow the l= limit and are therefore not covered by the signature. Content there can be changed or appended by anyone without breaking the signature.

public bool? BodyHashMatched { get; internal set; } #

True when the body hash matched; null when it was not computed.

public DateTimeOffset? SignedAt { get; internal set; } #

Signature timestamp (t=).

public DateTimeOffset? ExpiresAt { get; internal set; } #

Signature expiration (x=).

public int KeySizeBits { get; internal set; } #

Public key size in bits when the key was decoded.

public bool IsTestingKey { get; internal set; } #

True when the key record carries the t=y testing flag.

public string? ChainValidation { get; internal set; } #

ARC-Seal chain validation tag (cv=) for ARC-Seal results.

public IReadOnlyList<string> Warnings { get; } #

Non-fatal observations such as a body length limit or a future timestamp.