@@ -193,12 +193,6 @@ pub struct PolicyDocument {
193193 skip_serializing_if = "Option::is_none"
194194 ) ]
195195 pub process : Option < ProcessPolicy > ,
196- #[ serde(
197- default ,
198- deserialize_with = "deserialize_non_null_optional_field" ,
199- skip_serializing_if = "Option::is_none"
200- ) ]
201- pub ui : Option < UiPolicy > ,
202196 #[ serde( default , skip_serializing_if = "BTreeMap::is_empty" ) ]
203197 pub network_policies : BTreeMap < String , NetworkPolicyRule > ,
204198 #[ serde( default , skip_serializing_if = "BTreeMap::is_empty" ) ]
@@ -240,34 +234,6 @@ pub struct ProcessPolicy {
240234 pub run_as_group : String ,
241235}
242236
243- #[ derive( Debug , Clone , Default , PartialEq , Eq , Serialize , Deserialize ) ]
244- #[ serde( deny_unknown_fields) ]
245- pub struct UiPolicy {
246- #[ serde( default , skip_serializing_if = "std::ops::Not::not" ) ]
247- pub allow_graphical_ui : bool ,
248- #[ serde( default , skip_serializing_if = "UiClipboardAccess::is_none" ) ]
249- pub clipboard : UiClipboardAccess ,
250- #[ serde( default , skip_serializing_if = "std::ops::Not::not" ) ]
251- pub allow_input_injection : bool ,
252- }
253-
254- #[ derive( Debug , Clone , Copy , Default , PartialEq , Eq , Serialize , Deserialize ) ]
255- #[ serde( rename_all = "snake_case" ) ]
256- pub enum UiClipboardAccess {
257- #[ default]
258- None ,
259- Read ,
260- Write ,
261- All ,
262- }
263-
264- impl UiClipboardAccess {
265- #[ must_use]
266- pub const fn is_none ( & self ) -> bool {
267- matches ! ( self , Self :: None )
268- }
269- }
270-
271237#[ derive( Debug , Clone , PartialEq , Eq , Serialize , Deserialize ) ]
272238#[ serde( deny_unknown_fields) ]
273239pub struct NetworkPolicyRule {
@@ -732,7 +698,6 @@ fn inspect_document(root: &serde_yml::Value) -> InspectionResult {
732698 "filesystem_policy" ,
733699 "landlock" ,
734700 "process" ,
735- "ui" ,
736701 "network_policies" ,
737702 "network_middlewares" ,
738703 ] ,
@@ -752,11 +717,6 @@ fn inspect_document(root: &serde_yml::Value) -> InspectionResult {
752717 "process" ,
753718 & [ "run_as_user" , "run_as_group" ] ,
754719 ) ?;
755- inspect_named (
756- root. get ( "ui" ) ,
757- "ui" ,
758- & [ "allow_graphical_ui" , "clipboard" , "allow_input_injection" ] ,
759- ) ?;
760720
761721 for ( name, rule) in open_map ( root. get ( "network_policies" ) ) {
762722 let path = join ( "network_policies" , name) ;
@@ -1216,7 +1176,6 @@ mod tests {
12161176 for source in [
12171177 "version: 1\n filesystem_policy: null\n " ,
12181178 "version: 1\n process: null\n " ,
1219- "version: 1\n ui: null\n " ,
12201179 "version: 1\n metadata: null\n " ,
12211180 "version: 1\n network_policies:\n x:\n endpoints:\n - host: x\n port: 443\n mcp: null\n " ,
12221181 ] {
@@ -1253,7 +1212,6 @@ mod tests {
12531212 "landlock.future" ,
12541213 ) ,
12551214 ( "version: 1\n process: { future: true }\n " , "process.future" ) ,
1256- ( "version: 1\n ui: { future: true }\n " , "ui.future" ) ,
12571215 (
12581216 "version: 1\n network_policies: { api: { future: true } }\n " ,
12591217 "network_policies.api.future" ,
0 commit comments