#[derive(Default, Debug, Copy, Clone, Ord, PartialOrd, Eq, PartialEq, Hash)]
#[derive(Deserialize, Serialize)]
#[serde(default, deny_unknown_fields)]
pub struct GlobalInotifyConfiguration
{
pub maximum_number_of_events_that_can_be_queued: Option<NonZeroU32>,
pub maximum_number_of_inotify_instances_per_user: Option<NonZeroU32>,
pub maximum_number_of_watches_per_user: Option<NonZeroU32>,
pub maximum_number_of_inotify_instances_per_user_namespaced: Option<NonZeroU32>,
pub maximum_number_of_watches_per_user_namespaced: Option<NonZeroU32>,
}
impl GlobalInotifyConfiguration
{
pub fn configure(&self, proc_path: &ProcPath) -> Result<(), GlobalInotifyConfigurationError>
{
use self::GlobalInotifyConfigurationError::*;
set_value(proc_path, set_maximum_number_of_events_that_can_be_queued, self.maximum_number_of_events_that_can_be_queued, CouldNotChangeMaximumNumberOfEventsThatCanBeQueued)?;
set_value(proc_path, set_maximum_number_of_inotify_instances_per_user, self.maximum_number_of_inotify_instances_per_user, CouldNotChangeMaximumNumberOfInotifyInstancesPerUser)?;
set_value(proc_path, set_maximum_number_of_watches_per_user, self.maximum_number_of_watches_per_user, CouldNotChangeMaximumNumberOfWatchesPerUser)?;
set_value(proc_path, set_maximum_number_of_inotify_instances_per_user_namespaced, self.maximum_number_of_inotify_instances_per_user_namespaced, CouldNotChangeMaximumNumberOfInotifyInstancesPerUserNamespaced)?;
set_value(proc_path, set_maximum_number_of_watches_per_user_namespaced, self.maximum_number_of_watches_per_user_namespaced, CouldNotChangeMaximumNumberOfWatchesPerUserNamespaced)?;
Ok(())
}
}