about summary refs log tree commit diff
diff options
context:
space:
mode:
authorVincent Ambo <tazjin@google.com>2020-01-20T11·48+0000
committerVincent Ambo <tazjin@google.com>2020-01-20T11·51+0000
commit0b146dc0792dd51cf8b343a1e9114b06242e9d14 (patch)
treeeaf663f8ce2e29e1b40c5ac787cd8081fc929aa5
parent4bc3196c9a2bb0e1f60f19ecece195c8d4900b52 (diff)
chore(ops/posix_mq.rs): Update crate dependencies to recent versions r/431
First bump since 2017! This changes the code to be compatible with
newer versions of the `nix` crate, which has shuffled things around a
bit.
-rw-r--r--ops/posix_mq.rs/Cargo.toml8
-rw-r--r--ops/posix_mq.rs/LICENSE2
-rw-r--r--ops/posix_mq.rs/src/error.rs6
-rw-r--r--ops/posix_mq.rs/src/lib.rs26
-rw-r--r--ops/posix_mq.rs/src/tests.rs2
5 files changed, 18 insertions, 26 deletions
diff --git a/ops/posix_mq.rs/Cargo.toml b/ops/posix_mq.rs/Cargo.toml
index db471168c773..d72e87a3dcef 100644
--- a/ops/posix_mq.rs/Cargo.toml
+++ b/ops/posix_mq.rs/Cargo.toml
@@ -1,11 +1,11 @@
 [package]
 name = "posix_mq"
-version = "0.1.3"
-authors = ["Vincent Ambo <vincent@aprila.no>"]
+version = "0.9.0"
+authors = ["Vincent Ambo <mail@tazj.in>"]
 description = "(Higher-level) Rust bindings to POSIX message queues"
 license = "MIT"
-repository = "https://github.com/aprilabank/posix_mq.rs"
+repository = "https://git.tazj.in/tree/ops/posix_mq.rs"
 
 [dependencies]
-nix = "0.9"
+nix = "0.16"
 libc = "0.2"
diff --git a/ops/posix_mq.rs/LICENSE b/ops/posix_mq.rs/LICENSE
index b1b8e03c8bda..2389546b1383 100644
--- a/ops/posix_mq.rs/LICENSE
+++ b/ops/posix_mq.rs/LICENSE
@@ -1,6 +1,6 @@
 MIT License
 
-Copyright (c) 2017 Vincent Ambo
+Copyright (c) 2017-2020 Vincent Ambo
 
 Permission is hereby granted, free of charge, to any person obtaining a copy
 of this software and associated documentation files (the "Software"), to deal
diff --git a/ops/posix_mq.rs/src/error.rs b/ops/posix_mq.rs/src/error.rs
index 1a0c069a89b0..1ef585c01efb 100644
--- a/ops/posix_mq.rs/src/error.rs
+++ b/ops/posix_mq.rs/src/error.rs
@@ -43,7 +43,7 @@ pub enum Error {
 
     // If an unhandled / unknown / unexpected error occurs this error will be used.
     // In those cases bug reports would be welcome!
-    UnknownForeignError(nix::Errno),
+    UnknownForeignError(nix::errno::Errno),
 
     // Some other unexpected / unknown error occured. This is probably an error from
     // the nix crate. Bug reports also welcome for this!
@@ -112,8 +112,8 @@ impl From<num::ParseIntError> for Error {
 }
 
 
-fn match_errno(err: nix::Errno) -> Error {
-    use nix::errno::*;
+fn match_errno(err: nix::errno::Errno) -> Error {
+    use nix::errno::Errno::*;
 
     match err {
         EACCES => Error::PermissionDenied(),
diff --git a/ops/posix_mq.rs/src/lib.rs b/ops/posix_mq.rs/src/lib.rs
index b8f2fed10b77..057601eccfbd 100644
--- a/ops/posix_mq.rs/src/lib.rs
+++ b/ops/posix_mq.rs/src/lib.rs
@@ -16,14 +16,6 @@ pub mod error;
 #[cfg(test)]
 mod tests;
 
-/*
-TODO:
-
-* what happens if permissions change after FD was opened?
-* drop dependency on nix crate?
-
-*/
-
 /// Wrapper type for queue names that performs basic validation of queue names before calling
 /// out to C code.
 #[derive(Debug, Clone, PartialEq)]
@@ -97,11 +89,11 @@ impl Queue {
         let oflags = {
             let mut flags = mqueue::MQ_OFlag::empty();
             // Put queue in r/w mode
-            flags.toggle(mqueue::O_RDWR);
+            flags.toggle(mqueue::MQ_OFlag::O_RDWR);
             // Enable queue creation
-            flags.toggle(mqueue::O_CREAT);
+            flags.toggle(mqueue::MQ_OFlag::O_CREAT);
             // Fail if queue exists already
-            flags.toggle(mqueue::O_EXCL);
+            flags.toggle(mqueue::MQ_OFlag::O_EXCL);
             flags
         };
 
@@ -128,7 +120,7 @@ impl Queue {
     pub fn open(name: Name) -> Result<Queue, Error> {
         // No extra flags need to be constructed as the default is to open and fail if the
         // queue does not exist yet - which is what we want here.
-        let oflags = mqueue::O_RDWR;
+        let oflags = mqueue::MQ_OFlag::O_RDWR;
         let queue_descriptor = mqueue::mq_open(
             &name.0,
             oflags,
@@ -151,9 +143,9 @@ impl Queue {
         let oflags = {
             let mut flags = mqueue::MQ_OFlag::empty();
             // Put queue in r/w mode
-            flags.toggle(mqueue::O_RDWR);
+            flags.toggle(mqueue::MQ_OFlag::O_RDWR);
             // Enable queue creation
-            flags.toggle(mqueue::O_CREAT);
+            flags.toggle(mqueue::MQ_OFlag::O_CREAT);
             flags
         };
 
@@ -239,8 +231,8 @@ impl Drop for Queue {
 // Creates the default queue mode (0600).
 fn default_mode() -> stat::Mode {
     let mut mode = stat::Mode::empty();
-    mode.toggle(stat::S_IRUSR);
-    mode.toggle(stat::S_IWUSR);
+    mode.toggle(stat::Mode::S_IRUSR);
+    mode.toggle(stat::Mode::S_IWUSR);
     mode
 }
 
@@ -271,7 +263,7 @@ fn mq_getattr(mqd: mqd_t) -> Result<libc::mq_attr, Error> {
     use std::mem;
     let mut attr = unsafe { mem::uninitialized::<libc::mq_attr>() };
     let res = unsafe { libc::mq_getattr(mqd, &mut attr) };
-    nix::Errno::result(res)
+    nix::errno::Errno::result(res)
         .map(|_| attr)
         .map_err(|e| e.into())
 }
diff --git a/ops/posix_mq.rs/src/tests.rs b/ops/posix_mq.rs/src/tests.rs
index 0018e40dacd3..7a08876aeacd 100644
--- a/ops/posix_mq.rs/src/tests.rs
+++ b/ops/posix_mq.rs/src/tests.rs
@@ -18,5 +18,5 @@ fn test_open_delete() {
 
     assert_eq!(message, result);
 
-    queue.delete();
+    queue.delete().expect("deleting queue failed");
 }