pub struct AttestConfig {
pub default_algorithm: String,
pub signer: String,
pub external_signer_path: String,
pub external_signer_args: Vec<String>,
pub external_signer_timeout_secs: Option<u64>,
pub secp256k1_key_path: String,
pub p256_key_path: String,
}Expand description
[attest] section. All fields optional with documented defaults; a
fresh repo’s config file has none of them set.
Fields§
§default_algorithm: StringOne of "ed25519", "secp256k1", "p256". Empty = "ed25519".
signer: StringOne of "repo-key", "external", "keystore". Empty = "repo-key".
external_signer_path: StringAbsolute path to the external signer binary. Required when
signer = "external". User-scoped only.
external_signer_args: Vec<String>Extra argv tokens to pass to the external signer subprocess.
Each Vec entry is one argv entry — the stored list maps 1:1
to std::process::Command::args. On disk, encoded as a
pipe-separated string: attest.external_signer_args = sign|--tag|demo.
User-scoped only.
external_signer_timeout_secs: Option<u64>Wall-clock budget (in seconds) for the entire external-signer
conversation: spawn → request-write → response-read →
stderr-drain → child-exit. On expiry mkit kills and reaps the
child. Empty / 0 = use the crate default (120s, generous for
hardware touch/PIN/biometric). User-scoped only — see
REPO_FORBIDDEN_KEYS (a hostile repo must not be able to set a
0s “deny” timeout or a multi-hour hang).
secp256k1_key_path: StringPer-algorithm repo-key paths for non-ed25519 signing.
User-scoped only — see REPO_FORBIDDEN_KEYS.
p256_key_path: StringImplementations§
Source§impl AttestConfig
impl AttestConfig
pub fn default_algorithm_or_fallback(&self) -> &str
pub fn signer_or_fallback(&self) -> &str
pub fn secp256k1_key_path_or_default(&self) -> &str
pub fn p256_key_path_or_default(&self) -> &str
Trait Implementations§
Source§impl Clone for AttestConfig
impl Clone for AttestConfig
Source§fn clone(&self) -> AttestConfig
fn clone(&self) -> AttestConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for AttestConfig
impl Debug for AttestConfig
Source§impl Default for AttestConfig
impl Default for AttestConfig
Source§fn default() -> AttestConfig
fn default() -> AttestConfig
impl Eq for AttestConfig
Source§impl PartialEq for AttestConfig
impl PartialEq for AttestConfig
impl StructuralPartialEq for AttestConfig
Auto Trait Implementations§
impl Freeze for AttestConfig
impl RefUnwindSafe for AttestConfig
impl Send for AttestConfig
impl Sync for AttestConfig
impl Unpin for AttestConfig
impl UnsafeUnpin for AttestConfig
impl UnwindSafe for AttestConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
Source§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more