From f1d802dc1e1eb733baafd513ec8cde1c026a9ec9 Mon Sep 17 00:00:00 2001
From: Dan Robertson <danlrobertson89@gmail.com>
Date: Thu, 15 Mar 2018 01:07:44 +0000
Subject: [PATCH] signal: sigaction struct should not be a typedef

The sigaction struct should not be a typedef, but the sigset_t struct
should be a typedef.
---
 include/bits/signal.h    | 10 ----------
 src/signal/cbindgen.toml |  2 +-
 src/signal/src/lib.rs    |  2 ++
 src/signal/src/linux.rs  |  2 +-
 src/signal/src/redox.rs  |  2 +-
 src/wait/cbindgen.toml   |  1 +
 6 files changed, 6 insertions(+), 13 deletions(-)
 delete mode 100644 include/bits/signal.h

diff --git a/include/bits/signal.h b/include/bits/signal.h
deleted file mode 100644
index 8a6a8345d..000000000
--- a/include/bits/signal.h
+++ /dev/null
@@ -1,10 +0,0 @@
-#ifndef _BITS_SIGNAL_H
-#define _BITS_SIGNAL_H
-
-typedef struct sigaction {
-  void (*sa_handler)(uintptr_t);
-  sigset_t sa_mask;
-  uintptr_t sa_flags;
-};
-
-#endif
diff --git a/src/signal/cbindgen.toml b/src/signal/cbindgen.toml
index 87d334c40..c69f579e8 100644
--- a/src/signal/cbindgen.toml
+++ b/src/signal/cbindgen.toml
@@ -1,6 +1,6 @@
 sys_includes = ["sys/types.h"]
 include_guard = "_SIGNAL_H"
-trailer = "#include <bits/signal.h>"
+style = "Tag"
 language = "C"
 
 [defines]
diff --git a/src/signal/src/lib.rs b/src/signal/src/lib.rs
index 80ec786e3..052cb1377 100644
--- a/src/signal/src/lib.rs
+++ b/src/signal/src/lib.rs
@@ -23,6 +23,8 @@ pub struct sigaction {
     pub sa_flags: usize,
 }
 
+pub type sigset_t = sys_sigset_t;
+
 #[no_mangle]
 pub extern "C" fn kill(pid: pid_t, sig: c_int) -> c_int {
     unimplemented!();
diff --git a/src/signal/src/linux.rs b/src/signal/src/linux.rs
index 63eff1c14..628e81339 100644
--- a/src/signal/src/linux.rs
+++ b/src/signal/src/linux.rs
@@ -1,5 +1,5 @@
 #[repr(C)]
-pub struct sigset_t {
+pub struct sys_sigset_t {
     pub bits: [u64; 16],
 }
 
diff --git a/src/signal/src/redox.rs b/src/signal/src/redox.rs
index 54cb42adc..b5108b5a6 100644
--- a/src/signal/src/redox.rs
+++ b/src/signal/src/redox.rs
@@ -1,5 +1,5 @@
 #[repr(C)]
-pub struct sigset_t {
+pub struct sys_sigset_t {
     pub bits: [u64; 2],
 }
 
diff --git a/src/wait/cbindgen.toml b/src/wait/cbindgen.toml
index 186d5f957..528282cf3 100644
--- a/src/wait/cbindgen.toml
+++ b/src/wait/cbindgen.toml
@@ -1,5 +1,6 @@
 sys_includes = ["sys/types.h", "sys/resource.h"]
 include_guard = "_SYS_WAIT_H"
+style = "Tag"
 language = "C"
 
 [enum]
-- 
GitLab