Skip to content

docs: add XML documentation for PKCS#12 store API (Batch 12a-2)#685

Open
KonradSop wants to merge 1 commit into
bcgit:masterfrom
KonradSop:feature/pkcs12-docs
Open

docs: add XML documentation for PKCS#12 store API (Batch 12a-2)#685
KonradSop wants to merge 1 commit into
bcgit:masterfrom
KonradSop:feature/pkcs12-docs

Conversation

@KonradSop

Copy link
Copy Markdown
Contributor

Description

Adds XML documentation to the PKCS#12 keystore API (RFC 7292) under crypto/src/pkcs:

  • Pkcs12Store — class summary citing RFC 7292; documents Load and Save with MAC/password
    exception contracts; documents alias lookup, certificate chain, entry management (SetCertificateEntry,
    SetKeyEntry, SetFriendlyName, DeleteEntry) and the IgnoreUselessPasswordProperty constant.
  • Pkcs12Entry — class summary for the bag-attribute base type; documents the indexer,
    BagAttributeKeys, HasFriendlyName, SetFriendlyName, and TryGetAttribute.
  • Pkcs12StoreBuilder — class summary; documents Build and all configuration methods
    (SetCertAlgorithm, SetKeyAlgorithm, PBES2 PRF variants, SetUseDerEncoding,
    SetReverseCertificates, SetOverwriteFriendlyName, SetEnableOracleTrustedKeyUsage).

Key Accomplishments

  • High-value user API: PKCS#12 is a common entry point for key+certificate import/export; this PR
    documents the full public surface of the in-memory store.
  • Accurate exception contracts: <exception> only where guards in the method body throw
    (ArgumentNullException, ArgumentException, IOException on Load).
  • Consistent style: follows Batch 12a-1 / prior docs PR patterns; lines ≤120.
  • No overlap with open PRs: disjoint from docs: add XML documentation for X.509 certificate and CRL generators (Batch 12a-1) #684 (X.509 generators) and Batch 7–11.

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.

Document the in-memory PKCS#12 keystore surface (RFC 7292): Pkcs12Store,
Pkcs12Entry and Pkcs12StoreBuilder. Adds class-level summaries and per-method
<summary>, <param>, <returns>, and <exception> tags for Load, Save, alias
management and builder configuration. Converts legacy block comment on
GetCertificate to XML. No behavioural changes.
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