parsec_interface/operations/
list_authenticators.rs

1// Copyright 2020 Contributors to the Parsec project.
2// SPDX-License-Identifier: Apache-2.0
3//! # ListAuthenticators operation
4//!
5//! List the authenticators available in the service.
6use crate::requests::AuthType;
7use std::cmp::Eq;
8
9/// Structure holding the basic information that defines the authenticators in the service for
10/// client discovery.
11#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12pub struct AuthenticatorInfo {
13    /// Short description of the authenticator.
14    pub description: String,
15    /// Authenticator implementation version major.
16    pub version_maj: u32,
17    /// Authenticator implementation version minor.
18    pub version_min: u32,
19    /// Authenticator implementation version revision number.
20    pub version_rev: u32,
21    /// Authenticator ID to use on the wire protocol to communicate with this authenticator.
22    pub id: AuthType,
23}
24
25/// Native object for authenticator listing operation.
26#[derive(Copy, Clone, Debug)]
27pub struct Operation;
28
29/// Native object for authenticator listing result.
30#[derive(Debug)]
31pub struct Result {
32    /// A list of `AuthenticatorInfo` structures, one for each authenticator available in
33    /// the service.
34    pub authenticators: Vec<AuthenticatorInfo>,
35}