Index: rust-nix-0.30.1/src/sys/mod.rs
===================================================================
--- rust-nix-0.30.1.orig/src/sys/mod.rs
+++ rust-nix-0.30.1/src/sys/mod.rs
@@ -39,6 +39,7 @@ feature! {
     linux_android,
     solarish,
     target_os = "fuchsia",
+    target_os = "hurd",
     target_os = "redox",
 ))]
 #[cfg(feature = "ioctl")]
Index: rust-nix-0.30.1/src/sys/ioctl/hurd.rs
===================================================================
--- /dev/null
+++ rust-nix-0.30.1/src/sys/ioctl/hurd.rs
@@ -0,0 +1,7 @@
+/// The datatype used for the ioctl number
+#[doc(hidden)]
+pub type ioctl_num_type = ::libc::c_ulong;
+
+/// The datatype used for the 3rd argument
+#[doc(hidden)]
+pub type ioctl_param_type = ::libc::c_ulong;
Index: rust-nix-0.30.1/src/sys/ioctl/mod.rs
===================================================================
--- rust-nix-0.30.1.orig/src/sys/ioctl/mod.rs
+++ rust-nix-0.30.1/src/sys/ioctl/mod.rs
@@ -241,6 +241,13 @@ mod bsd;
 #[cfg(any(bsd, solarish, target_os = "haiku",))]
 pub use self::bsd::*;
 
+#[cfg(target_os = "hurd")]
+#[macro_use]
+mod hurd;
+
+#[cfg(target_os = "hurd")]
+pub use self::hurd::*;
+
 /// Convert raw ioctl return value to a Nix result
 #[macro_export]
 #[doc(hidden)]
