pub struct Offer {
pub realm: [u8; 32],
pub procedure: String,
pub handler: Option<Handler>,
pub stream: Option<StreamOffer>,
pub realm_key: Option<Vec<u8>>,
pub confidential: Confidentiality,
pub keyed_since_ms: Option<i64>,
pub policy: Option<Policy>,
}Expand description
A procedure to serve: its realm and name, exactly one of a unary handler and a stream offer, and, for an org procedure, the realm key the org directory must be signed with, as the realm’s members pin it; a procedure in this node’s own namespace needs none.
Fields§
§realm: [u8; 32]§procedure: String§handler: Option<Handler>§stream: Option<StreamOffer>§realm_key: Option<Vec<u8>>§confidential: ConfidentialityHow the procedure takes its requests: whether its advertisement names
this node’s KEM key, with kem_advertise on, and whether it takes
clear ones.
keyed_since_ms: Option<i64>When the procedure was first advertised naming the key (unix ms),
from which its keyless window runs; serving sets it to now when
None. A pool keeps it across the links it serves on, so no link
reopens the window.
policy: Option<Policy>What the procedure requires of a request’s UCAN: None serves any
caller (an open procedure ignores any token), and a Policy serves
only a request whose token it authorizes (authorize.rs).