Skip to content

GET_CERTIFICATE Handling Missing Strict Responder Gate for SLOT_SIZE_REQUESTED Without SET_CERT_CAP #3590

@czwolak

Description

@czwolak

The responder path for GET_CERTIFICATE/CERTIFICATE does not explicitly enforce a strict capability check that ties SLOT_SIZE_REQUESTED usage to negotiated SET_CERT_CAP. In other words, when SET_CERT_CAP is not negotiated, there is no explicit responder-side rejection path for requests using SLOT_SIZE_REQUESTED.

Observed Behavior

Request processing does not include an explicit strict gate for SLOT_SIZE_REQUESTED against negotiated SET_CERT_CAP.
Behavior may rely on tolerant parsing/implicit handling instead of deterministic reject logic.
Expected Behavior

If SET_CERT_CAP is not negotiated, responder should explicitly reject GET_CERTIFICATE requests that set/use SLOT_SIZE_REQUESTED (with protocol-appropriate error handling).
Impact

Spec-compliance and interop ambiguity.
Inconsistent behavior across implementations during negative/strict conformance testing.
Severity
Medium (non-security protocol compliance gap, unless project policy requires strict reject semantics).

Suggested Fix
Add an explicit responder-side validation gate:

Check SLOT_SIZE_REQUESTED usage in GET_CERTIFICATE.
Verify SET_CERT_CAP negotiation state.
Return defined protocol error when the flag is used without capability negotiation.
Add unit tests for both allowed and rejected combinations.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions