mirror of
https://github.com/odin-lang/Odin.git
synced 2026-01-07 13:33:13 +00:00
remove runtime signatures to prevent ffi collisions
This commit is contained in:
@@ -44,40 +44,7 @@ IOC_OUT :: 0x40000000
|
||||
IOC_IN :: 0x80000000
|
||||
IOC_INOUT :: (IOC_IN | IOC_OUT)
|
||||
IOC_WS2 :: 0x08000000
|
||||
/*
|
||||
Example Load:
|
||||
load_accept_ex :: proc(listener: SOCKET, fn_acceptex: rawptr) {
|
||||
bytes: u32
|
||||
guid_accept_ex := WSAID_ACCEPTEX
|
||||
rc := WSAIoctl(listener, SIO_GET_EXTENSION_FUNCTION_POINTER, &guid_accept_ex, size_of(guid_accept_ex),
|
||||
fn_acceptex, size_of(fn_acceptex), &bytes, nil, nil,)
|
||||
assert(rc != windows.SOCKET_ERROR)
|
||||
}
|
||||
*/
|
||||
// NOTE: AcceptEx should be loaded at runtime per MS-Docs
|
||||
//[MS-Docs](https://learn.microsoft.com/en-us/windows/win32/api/mswsock/nf-mswsock-acceptex)
|
||||
AcceptEx :: proc(
|
||||
sListenSocket: SOCKET,
|
||||
sAcceptSocket: SOCKET,
|
||||
lpOutputBuffer: rawptr,
|
||||
dwReceiveDataLength: u32,
|
||||
dwLocalAddressLength: u32,
|
||||
dwRemoteAddressLength: u32,
|
||||
lpdwBytesReceived: ^u32,
|
||||
lpOverlapped: ^OVERLAPPED,
|
||||
) -> b32
|
||||
// NOTE: GetAcceptExSockaddrs should be loaded at runtime per MS-Docs
|
||||
//[MS-Docs](https://learn.microsoft.com/en-us/windows/win32/api/mswsock/nf-mswsock-getacceptexsockaddrs)
|
||||
GetAcceptExSockaddrs :: proc(
|
||||
lpOutputBuffer: rawptr,
|
||||
dwReceiveDataLength: u32,
|
||||
dwLocalAddressLength: u32,
|
||||
dwRemoteAddressLength: u32,
|
||||
LocalSockaddr: ^^sockaddr,
|
||||
LocalSockaddrLength: ^i32,
|
||||
RemoteSockaddr: ^^sockaddr,
|
||||
RemoteSockaddrLength: ^i32,
|
||||
)
|
||||
|
||||
|
||||
foreign import ws2_32 "system:Ws2_32.lib"
|
||||
@(default_calling_convention="stdcall")
|
||||
|
||||
Reference in New Issue
Block a user