Skip to content

docs: add XML documentation for CMS AuthenticatedData stream generator (Batch 13c-2)#692

Open
KonradSop wants to merge 1 commit into
bcgit:masterfrom
KonradSop:feature/cms-authenticated-stream-docs
Open

docs: add XML documentation for CMS AuthenticatedData stream generator (Batch 13c-2)#692
KonradSop wants to merge 1 commit into
bcgit:masterfrom
KonradSop:feature/cms-authenticated-stream-docs

Conversation

@KonradSop

Copy link
Copy Markdown
Contributor

Description

Adds XML documentation to CmsAuthenticatedDataStreamGenerator — the streaming generator for CMS AuthenticatedData (MAC-protected) messages:

  • Class summary — describes the recipient/Open/write/close workflow and a usage example.
  • Stream-handling note — closing the returned stream finalizes the CMS structure and emits the MAC, but does not close the underlying stream.
  • Constructors — default and SecureRandom overload.
  • SetBufferSize and SetBerEncodeRecipients (BER vs DER recipient SET).
  • Open overloads — the default-strength and explicit-key-size public overloads, plus the protected overload taking a pre-built MAC algorithm identifier; <exception cref="CmsException"/> where the implementation wraps MAC/parameter failures.

Legacy /** block comments converted to XML (public surface).

Key Accomplishments

  • CMS authentication discoverability: IDE tooltips now cover the public/protected generator surface (1 → 8 <summary> blocks).
  • Accurate exception contract: CmsException documented only on the Open overload that wraps failures.
  • Consistent style: matches Batch 12a/13a documentation conventions.

Verification

  • Build Status: dotnet build crypto/src/BouncyCastle.Crypto.csproj -c Release — 0 errors, no new warnings.
  • Scope: Documentation-only; no behavioural or signature changes.

Checklist before requesting a review

  • I have performed a self-review of my code
  • I have kept the patch limited to only change the parts related to the patch
  • This change requires a documentation update

See also Contributing Guidelines.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant