summaryrefslogtreecommitdiff
path: root/src/sys/signal.rs
diff options
context:
space:
mode:
authorVictor Berger <victor.berger@m4x.org>2014-12-10 19:30:36 +0100
committerVictor Berger <victor.berger@m4x.org>2014-12-10 19:30:36 +0100
commit7c27a173ba2b22e059e8a2a92f070a3853218e09 (patch)
tree53bcb4325bc5630093cc5a1a22bd4dc1c5d246b1 /src/sys/signal.rs
parent4552f47e4ea04ed8f04bf24b9ba182ab71ea8974 (diff)
downloadnix-7c27a173ba2b22e059e8a2a92f070a3853218e09.zip
Fallout of Copy becoming opt-in.
Diffstat (limited to 'src/sys/signal.rs')
-rw-r--r--src/sys/signal.rs6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/sys/signal.rs b/src/sys/signal.rs
index 15205502..731eecd0 100644
--- a/src/sys/signal.rs
+++ b/src/sys/signal.rs
@@ -56,6 +56,7 @@ pub mod signal {
use libc;
bitflags!(
+ #[deriving(Copy)]
flags SockFlag: libc::c_ulong {
const SA_NOCLDSTOP = 0x00000001,
const SA_NOCLDWAIT = 0x00000002,
@@ -95,6 +96,7 @@ pub mod signal {
// actually a giant union. Currently we're only interested in these fields,
// however.
#[repr(C)]
+ #[deriving(Copy)]
pub struct siginfo {
si_signo: libc::c_int,
si_errno: libc::c_int,
@@ -105,6 +107,7 @@ pub mod signal {
}
#[repr(C)]
+ #[allow(missing_copy_implementations)]
pub struct sigaction {
pub sa_handler: extern fn(libc::c_int),
pub sa_mask: sigset_t,
@@ -114,12 +117,14 @@ pub mod signal {
#[repr(C)]
#[cfg(target_word_size = "32")]
+ #[deriving(Copy)]
pub struct sigset_t {
__val: [libc::c_ulong, ..32],
}
#[repr(C)]
#[cfg(target_word_size = "64")]
+ #[deriving(Copy)]
pub struct sigset_t {
__val: [libc::c_ulong, ..16],
}
@@ -290,6 +295,7 @@ mod ffi {
}
}
+#[deriving(Copy)]
pub struct SigSet {
sigset: sigset_t
}