snap-control 0.2.0

Control plane implementation of the SNAP transport underlay for SCION
Documentation
// This file is @generated by prost-build.
/// A grant to allow access to a SNAP data plane.
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SnapDataPlaneSessionGrant {
    /// The UDP endpoint (host:port) of the SNAP data plane.
    /// The host can either be an IP address or a hostname.
    #[prost(string, tag = "1")]
    pub address: ::prost::alloc::string::String,
    /// The Snap data plane session token is a JWT with the following claims:
    ///
    /// * `exp`: the expiration time of the token in seconds since unix epoch.
    /// * `address`: the address (host:port) of the SNAP data plane this token is valid for.
    #[prost(string, tag = "2")]
    pub token: ::prost::alloc::string::String,
}
/// Requests creation of a SNAP data plane session grant.
///
/// Selects one or more SNAP data planes for the client and returns grants for them.
///
/// Space for hints for the data plane selection in future iterations.
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct GetSnapDataPlaneSessionGrantRequest {}
/// SNAP data plane session grant response.
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetSnapDataPlaneSessionGrantResponse {
    /// Tokens for the created SNAP data plane sessions.
    #[prost(message, repeated, tag = "1")]
    pub grants: ::prost::alloc::vec::Vec<SnapDataPlaneSessionGrant>,
}
/// Requests renewal of an active data plane grant.
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RenewSnapDataPlaneSessionGrantRequest {
    /// The address of the data plane for which the active session should be renewed
    #[prost(string, tag = "1")]
    pub address: ::prost::alloc::string::String,
}
/// SNAP data plane session grant renewal response.
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RenewSnapDataPlaneSessionGrantResponse {
    /// The renewed session grant.
    #[prost(message, optional, tag = "1")]
    pub grant: ::core::option::Option<SnapDataPlaneSessionGrant>,
}