Auto merge of #546 - alexander255:master, r=alexcrichton

Add support for the `accept4` system call for FreeBSD* & NetBSD*

As outlined in #540.

However since support for this system call seems to be committed, but not yet released in NetBSD & BitRig (is BitRig actually still be developed at all, btw?), I'm not sure whether it wouldn't be a better idea to only add OpenBSD support instead?
What's the official policy on this?
diff --git a/src/unix/bsd/freebsdlike/mod.rs b/src/unix/bsd/freebsdlike/mod.rs
index f9c8dcb..197ae56 100644
--- a/src/unix/bsd/freebsdlike/mod.rs
+++ b/src/unix/bsd/freebsdlike/mod.rs
@@ -980,6 +980,8 @@
                      base: ::locale_t) -> ::locale_t;
     pub fn uselocale(loc: ::locale_t) -> ::locale_t;
     pub fn querylocale(mask: ::c_int, loc: ::locale_t) -> *const ::c_char;
+    pub fn accept4(s: ::c_int, addr: *mut ::sockaddr,
+                   addrlen: *mut ::socklen_t, flags: ::c_int) -> ::c_int;
     pub fn pthread_set_name_np(tid: ::pthread_t, name: *const ::c_char);
     pub fn pthread_attr_get_np(tid: ::pthread_t,
                                attr: *mut ::pthread_attr_t) -> ::c_int;
diff --git a/src/unix/bsd/netbsdlike/openbsdlike/openbsd.rs b/src/unix/bsd/netbsdlike/openbsdlike/openbsd.rs
index b7fed64..8b36ee5 100644
--- a/src/unix/bsd/netbsdlike/openbsdlike/openbsd.rs
+++ b/src/unix/bsd/netbsdlike/openbsdlike/openbsd.rs
@@ -26,3 +26,8 @@
         pub int_n_sign_posn: ::c_char,
     }
 }
+
+extern {
+    pub fn accept4(s: ::c_int, addr: *mut ::sockaddr,
+                   addrlen: *mut ::socklen_t, flags: ::c_int) -> ::c_int;
+}