use the correct calling convention with extern "system"
This commit is contained in:
parent
a79a73f8bf
commit
b9d86a6e8a
|
@ -50,7 +50,7 @@ pub type ino_t = u16;
|
|||
pub enum timezone {}
|
||||
pub type time64_t = i64;
|
||||
|
||||
pub type SOCKET = uintptr_t;
|
||||
pub type SOCKET = ::uintptr_t;
|
||||
|
||||
s! {
|
||||
// note this is the struct called stat64 in Windows. Not stat, nor stati64.
|
||||
|
@ -308,19 +308,6 @@ extern {
|
|||
pub fn signal(signum: c_int, handler: sighandler_t) -> sighandler_t;
|
||||
pub fn raise(signum: c_int) -> c_int;
|
||||
|
||||
// winsock functions
|
||||
pub fn listen(s: SOCKET, backlog: c_int) -> c_int;
|
||||
pub fn accept(s: SOCKET, addr: *mut sockaddr, addrlen: *mut c_int) -> SOCKET;
|
||||
pub fn bind(s: SOCKET, name: *mut sockaddr, namelen: c_int) -> c_int;
|
||||
pub fn connect(s: SOCKET, name: *mut sockaddr, namelen: c_int) -> c_int;
|
||||
pub fn getpeername(s: SOCKET, name: *mut sockaddr, nameln: *mut c_int) -> c_int;
|
||||
pub fn getsockname(s: SOCKET, name: *mut sockaddr, nameln: *mut c_int) -> c_int;
|
||||
pub fn getsockopt(s: SOCKET, level: c_int, optname: c_int, optval: *mut c_char, optlen: *mut c_int) -> c_int;
|
||||
pub fn recvfrom(s: SOCKET, buf: *mut c_char, len: c_int, flags: c_int, from: *mut sockaddr, fromlen: *mut c_int) -> c_int;
|
||||
pub fn sendto(s: SOCKET, buf: *mut c_char, len: c_int, flags: c_int, to: *mut sockaddr, tolen: c_int) -> c_int;
|
||||
pub fn setsockopt(s: SOCKET, level: c_int, optname: c_int, optval: *mut c_char, optlen: c_int) -> c_int;
|
||||
pub fn socket(af: c_int, socket_type: c_int, protocol: c_int) -> SOCKET;
|
||||
|
||||
#[link_name = "_chmod"]
|
||||
pub fn chmod(path: *const c_char, mode: ::c_int) -> ::c_int;
|
||||
#[link_name = "_wchmod"]
|
||||
|
@ -403,6 +390,34 @@ extern {
|
|||
locale: *const wchar_t) -> *mut wchar_t;
|
||||
}
|
||||
|
||||
extern "system" {
|
||||
pub fn listen(s: SOCKET, backlog: ::c_int) -> ::c_int;
|
||||
pub fn accept(s: SOCKET, addr: *mut ::sockaddr,
|
||||
addrlen: *mut ::c_int) -> SOCKET;
|
||||
pub fn bind(s: SOCKET, name: *const ::sockaddr,
|
||||
namelen: ::c_int) -> ::c_int;
|
||||
pub fn connect(s: SOCKET, name: *const ::sockaddr,
|
||||
namelen: ::c_int) -> ::c_int;
|
||||
pub fn getpeername(s: SOCKET, name: *mut ::sockaddr,
|
||||
nameln: *mut ::c_int) -> ::c_int;
|
||||
pub fn getsockname(s: SOCKET, name: *mut ::sockaddr,
|
||||
nameln: *mut ::c_int) -> ::c_int;
|
||||
pub fn getsockopt(s: SOCKET, level: ::c_int, optname: ::c_int,
|
||||
optval: *mut ::c_char,
|
||||
optlen: *mut ::c_int) -> ::c_int;
|
||||
pub fn recvfrom(s: SOCKET, buf: *mut ::c_char, len: ::c_int,
|
||||
flags: ::c_int, from: *mut ::sockaddr,
|
||||
fromlen: *mut ::c_int) -> ::c_int;
|
||||
pub fn sendto(s: SOCKET, buf: *const ::c_char, len: ::c_int,
|
||||
flags: ::c_int, to: *const ::sockaddr,
|
||||
tolen: ::c_int) -> ::c_int;
|
||||
pub fn setsockopt(s: SOCKET, level: ::c_int, optname: ::c_int,
|
||||
optval: *const ::c_char,
|
||||
optlen: ::c_int) -> ::c_int;
|
||||
pub fn socket(af: ::c_int, socket_type: ::c_int,
|
||||
protocol: ::c_int) -> SOCKET;
|
||||
}
|
||||
|
||||
cfg_if! {
|
||||
if #[cfg(core_cvoid)] {
|
||||
pub use core::ffi::c_void;
|
||||
|
|
Loading…
Reference in a new issue