summaryrefslogtreecommitdiffstats
path: root/src/syslog.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/syslog.rs')
-rw-r--r--src/syslog.rs48
1 files changed, 48 insertions, 0 deletions
diff --git a/src/syslog.rs b/src/syslog.rs
new file mode 100644
index 0000000..65c8283
--- /dev/null
+++ b/src/syslog.rs
@@ -0,0 +1,48 @@
+use std::ffi::c_int;
+
+#[rustfmt::skip]
+pub enum Level {
+ Emergency = 0,
+ Alert = 1,
+ Critical = 2,
+ Error = 3,
+ Warning = 4,
+ Notice = 5,
+ Info = 6,
+ Debug = 7,
+}
+
+#[rustfmt::skip]
+pub enum Facility {
+ Kernel = 0 << 3,
+ User = 1 << 3,
+ Mail = 2 << 3,
+ Daemon = 3 << 3,
+ Auth = 4 << 3,
+ Syslog = 5 << 3,
+ Lpr = 6 << 3,
+ News = 7 << 3,
+ Uucp = 8 << 3,
+ Cron = 9 << 3,
+ AuthPriv = 10 << 3,
+ Ftp = 11 << 3,
+ Local0 = 12 << 3,
+ Local1 = 13 << 3,
+ Local2 = 14 << 3,
+ Local3 = 15 << 3,
+ Local4 = 16 << 3,
+ Local5 = 17 << 3,
+ Local6 = 18 << 3,
+ Local7 = 19 << 3,
+}
+
+pub struct Priority {
+ pub level: Level,
+ pub facility: Facility,
+}
+
+impl Into<c_int> for Priority {
+ fn into(self) -> c_int {
+ self.level as c_int | self.facility as c_int
+ }
+}