Skip to main content

Crate zerodds_corba_csiv2

Crate zerodds_corba_csiv2 

Source
Expand description

Crate zerodds-corba-csiv2. Safety classification: STANDARD.

OMG CORBA 3.3 Part 3 — Common Secure Interoperability v2 (CSIv2). Full CSIv2 stack as pure-Rust no_std + alloc, forbid(unsafe_code):

  • Association options (Spec §24.2.4) — bitmasks Integrity / Confidentiality / EstablishTrustInTarget / EstablishTrustInClient / IdentityAssertion / DelegationByClient / NoProtection.
  • Compound sec-mech list (Spec §24.2.6.5) as the TAG_CSI_SEC_MECH_LIST component body (AS layer + SAS layer).
  • GSSUP username/password token (Spec §24.7) with INITIAL_CONTEXT_TOKEN wrapping.
  • SAS protocol (Spec §24.2): EstablishContext / CompleteEstablishContext / MessageInContext / ContextError.
  • TLS mechanism OID (Spec §24.2.6.5): 1.3.6.1.5.5.13 for TLS_SEC_TRANS.

Spec: OMG CORBA 3.3 Part 3 §24.

§Layer position

Layer 8 — CORBA stack (Tier A). Sits on zerodds-cdr (wire codec). Consumers are GIOP/IIOP servers (Layer 8, Tier B/C) with security-stack configuration.

§Public API (as of 1.0.0-rc.1)

§Example

use zerodds_corba_csiv2::AssociationOptions;

// Spec §24.2.4 — association-options bitmask: Integrity + Confidentiality.
let opts = AssociationOptions(AssociationOptions::INTEGRITY | AssociationOptions::CONFIDENTIALITY);
assert!(opts.0 & AssociationOptions::INTEGRITY != 0);
assert!(opts.0 & AssociationOptions::CONFIDENTIALITY != 0);

Re-exports§

pub use association_options::AssociationOptions;
pub use gssup::GssupCredentialToken;
pub use gssup::INITIAL_CONTEXT_TOKEN_TAG;
pub use mech_list::AsContextSec;
pub use mech_list::CompoundSecMech;
pub use mech_list::CompoundSecMechList;
pub use mech_list::SasContextSec;
pub use sas::CompleteEstablishContext;
pub use sas::ContextError;
pub use sas::EstablishContext;
pub use sas::IdentityToken;
pub use sas::MessageInContext;
pub use sas::SasMessage;

Modules§

association_options
AssociationOptions — Spec §24.2.4 (spec Table 24-1).
gssup
GSSUP — username/password token (Spec §24.7).
mech_list
CompoundSecMechList — Spec §24.2.6.5.
sas
SAS protocol — Spec §24.2.