Struct git_repository::permissions::Environment
source · pub struct Environment {
pub xdg_config_home: Permission,
pub home: Permission,
pub http_transport: Permission,
pub identity: Permission,
pub objects: Permission,
pub git_prefix: Permission,
pub ssh_prefix: Permission,
}Expand description
Permissions related to the usage of environment variables
Fields§
§xdg_config_home: PermissionControl whether resources pointed to by XDG_CONFIG_HOME can be used when looking up common configuration values.
Note that git_sec::Permission::Forbid will cause the operation to abort if a resource is set via the XDG config environment.
home: PermissionControl the way resources pointed to by the home directory (similar to xdg_config_home) may be used.
http_transport: PermissionControl if environment variables to configure the HTTP transport, like http_proxy may be used.
Note that http-transport related environment variables prefixed with GIT_ may also be included here
if they match this category like GIT_HTTP_USER_AGENT.
identity: PermissionControl if the EMAIL environment variables may be read.
Note that identity related environment variables prefixed with GIT_ may also be included here
if they match this category.
objects: PermissionControl if environment variables related to the object database are handled. This includes features and performance options alike.
git_prefix: PermissionControl if resources pointed to by GIT_* prefixed environment variables can be used, but only if they
are not contained in any other category. This is a catch-all section.
ssh_prefix: PermissionControl if resources pointed to by SSH_* prefixed environment variables can be used (like SSH_ASKPASS)
Implementations§
source§impl Environment
impl Environment
sourcepub fn all() -> Self
pub fn all() -> Self
Allow access to the entire environment.
Examples found in repository?
112 113 114 115 116 117 118 119 120 121 122 123 124 125 126
pub fn secure() -> Self {
Permissions {
env: Environment::all(),
config: Config::all(),
}
}
/// Everything is allowed with this set of permissions, thus we read all configuration and do what git typically
/// does with owned repositories.
pub fn all() -> Self {
Permissions {
env: Environment::all(),
config: Config::all(),
}
}Trait Implementations§
source§impl Clone for Environment
impl Clone for Environment
source§fn clone(&self) -> Environment
fn clone(&self) -> Environment
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more