#[derive(Copy, Clone, Debug)]
#[allow(clippy::module_name_repetitions)]
pub enum SyslogFacility {
Kernel = 0 << 3,
UserLevel = 1 << 3,
MailSystem = 2 << 3,
SystemDaemons = 3 << 3,
Authorization = 4 << 3,
SyslogD = 5 << 3,
LinePrinter = 6 << 3,
News = 7 << 3,
Uucp = 8 << 3,
Clock = 9 << 3,
Authorization2 = 10 << 3,
Ftp = 11 << 3,
Ntp = 12 << 3,
LogAudit = 13 << 3,
LogAlert = 14 << 3,
Clock2 = 15 << 3,
LocalUse0 = 16 << 3,
LocalUse1 = 17 << 3,
LocalUse2 = 18 << 3,
LocalUse3 = 19 << 3,
LocalUse4 = 20 << 3,
LocalUse5 = 21 << 3,
LocalUse6 = 22 << 3,
LocalUse7 = 23 << 3,
}
#[cfg(unix)]
impl SyslogFacility {
pub(crate) fn to_nix(self) -> nix::syslog::Facility {
match self {
SyslogFacility::Authorization | SyslogFacility::Authorization2 => {
nix::syslog::Facility::LOG_AUTH
}
SyslogFacility::Clock
| SyslogFacility::Clock2
| SyslogFacility::Ftp
| SyslogFacility::Ntp
| SyslogFacility::SystemDaemons => nix::syslog::Facility::LOG_DAEMON,
SyslogFacility::Kernel => nix::syslog::Facility::LOG_KERN,
SyslogFacility::LocalUse0 => nix::syslog::Facility::LOG_LOCAL0,
SyslogFacility::LocalUse1 => nix::syslog::Facility::LOG_LOCAL1,
SyslogFacility::LocalUse2 => nix::syslog::Facility::LOG_LOCAL2,
SyslogFacility::LocalUse3 => nix::syslog::Facility::LOG_LOCAL3,
SyslogFacility::LocalUse4 => nix::syslog::Facility::LOG_LOCAL4,
SyslogFacility::LocalUse5 => nix::syslog::Facility::LOG_LOCAL5,
SyslogFacility::LocalUse6 => nix::syslog::Facility::LOG_LOCAL6,
SyslogFacility::LocalUse7 => nix::syslog::Facility::LOG_LOCAL7,
SyslogFacility::LinePrinter => nix::syslog::Facility::LOG_LPR,
SyslogFacility::MailSystem => nix::syslog::Facility::LOG_MAIL,
SyslogFacility::News => nix::syslog::Facility::LOG_NEWS,
SyslogFacility::SyslogD => nix::syslog::Facility::LOG_SYSLOG,
SyslogFacility::LogAlert | SyslogFacility::LogAudit | SyslogFacility::UserLevel => {
nix::syslog::Facility::LOG_USER
}
SyslogFacility::Uucp => nix::syslog::Facility::LOG_UUCP,
}
}
}