E)ٗXdZddlZddlmZmZddlmZeGddZdS)z Mount configuration builder for website isolation. The code handles all standard behavior (docroot isolation, home overlay, etc). N) dataclassfield) MountEntryceZdZUdZeed<eed<dZeed<ee Z e e ed<e fde fd Z d S) IsolatedRootConfigz Configuration for a directory overlay. Closes access to a directory by mounting a fake/empty directory over it, then selectively exposing only whitelisted paths. Storage is computed as: {storage_base}/{name} root_pathtargetT persistent)default_factorymountsoptsc tj||j}|jt |||jd||dS)z7Mounts whatever asked into the root of isolated storage/N)ospathrelpathr r appendrr )selftype_sourcer r relative_paths Yopt/cloudlinux/venv/lib/python3.11/site-packages/clcagefslib/webisolation/mount_config.pymountzIsolatedRootConfig.mount,sT <<  :eV5X5X5X5XZ^__`````N)__name__ __module__ __qualname____doc__str__annotations__r boolrlistr rtuplerrrrrsNNN KKKJ %uT:::FD :::9>aaaaaaaarr) ros.pathr dataclassesrr jail_configrrr%rrr)s ((((((((###### aaaaaaa aaar