From: Ian Jackson Date: Fri, 21 Aug 2020 18:35:50 +0000 (+0100) Subject: Revert "for revert: invent ServerOperatorPrivilege" X-Git-Tag: otter-0.2.0~1118 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=3cbd81c0ecc61fb53c4333bc14f2fdffc5adbdc4;p=otter.git Revert "for revert: invent ServerOperatorPrivilege" This reverts commit 85da91f69fdb5107d0e61800576b06de406c82f3. --- diff --git a/src/cmdlistener.rs b/src/cmdlistener.rs index e9bb38d6..9db49c2b 100644 --- a/src/cmdlistener.rs +++ b/src/cmdlistener.rs @@ -109,29 +109,22 @@ fn authorise_scope(cs: &CommandStream, wanted: &ManagementScope) .map_err(|e| cs.map_auth_err(e))? } -struct ServerOperatorPrivilege; -#[throws(AuthorisationError)] -fn do_authorise_server(cs: &CommandStream) - -> AuthorisedSatisfactory = (T, ManagementScope); - let y : AS< - Authorised<(Passwd,uid_t)>, - > = { - let ok = cs.authorised_uid(None,None)?; - (ok, ServerOperatorPrivilege) - ) - }; - return y.into() -} - #[throws(AuthorisationError)] fn do_authorise_scope(cs: &CommandStream, wanted: &ManagementScope) -> AuthorisedSatisfactory { type AS = (T, ManagementScope); match &wanted { + ManagementScope::Server => { - do_authorise_server(cs,wanted) ManagementScope::Server + let y : AS< + Authorised<(Passwd,uid_t)>, + > = { + let ok = cs.authorised_uid(None,None)?; + (ok, + ManagementScope::Server) + }; + return y.into() }, ManagementScope::Unix { user: wanted } => {