Domain Detective

API Reference

Class

TLSRPTAnalysis

Namespace DomainDetective
Assembly DomainDetective
Implements

Analyzes SMTP TLS Reporting (TLSRPT) policies according to RFC 8460.

Inheritance

  • Object
  • TLSRPTAnalysis

Usage

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

Returned or exposed by

Accepted by parameters

Constructors

Methods

public async Task AnalyzeTlsRptRecords(IEnumerable<DnsAnswer> dnsResults, InternalLogger logger, CancellationToken cancellationToken = null) #
Returns: Task

Analyzes tls rpt records.

Parameters

dnsResults System.Collections.Generic.IEnumerable{DnsClientX.DnsAnswer} requiredposition: 0
logger DomainDetective.InternalLogger requiredposition: 1
cancellationToken System.Threading.CancellationToken = null optionalposition: 2

Properties

public String Subject { get; set; } #

Domain under analysis.

public Nullable<Int32> DnsRecordTtl { get; set; } #

DNS TTL (seconds) of the TLSRPT TXT record as returned by DNS.

public Nullable<Int32> CnameTtl { get; set; } #

TTL (seconds) of the CNAME record when this record was resolved via CNAME alias.

public Boolean IsCnameResolved { get; set; } #

True when the TLSRPT record was resolved through a CNAME alias.

public String TlsRptRecord { get; set; } #

The concatenated TLSRPT record.

public Boolean TlsRptRecordExists { get; set; } #

Indicates whether a TLSRPT record exists.

public Boolean MultipleRecords { get; set; } #

Indicates whether multiple records were found.

public Boolean StartsCorrectly { get; set; } #

Indicates whether the record starts with v=TLSRPTv1.

public Boolean RuaDefined { get; set; } #

True when at least one RUA destination is defined.

public List<String> MailtoRua { get; set; } #

Gets or sets the mailto rua value.

public List<String> HttpRua { get; set; } #

Gets or sets the http rua value.

public List<String> InvalidRua { get; set; } #

Gets or sets the invalid rua value.

public List<String> UnknownTags { get; set; } #

Gets or sets the unknown tags value.

public Boolean PolicyValid { get; } #

Represents the policy valid value.

public Boolean CheckEndpoints { get; set; } #

Optional: when true, attempts a lightweight HEAD to HTTPS RUA endpoints to verify reachability.

public Dictionary<String, Int32> RuaHttpStatus { get; set; } #

HTTP status per HTTPS RUA endpoint (when CheckEndpoints = true).

public HttpClient HttpClient { get; set; } #

HTTP client used for HTTPS RUA validation. Override for testing.

public IReadOnlyList<StandardReference> RfcReferences { get; } #

Relevant standards for TLSRPT analysis.

public virtual List<Assessment> Assessments { get; } #

Structured assessments captured during TLSRPT analysis.

public IReadOnlyList<RecommendationAdvice> Recommendations { get; } #

Represents the recommendations value.

{{ include "footer" }}