fix load error by making a word windows-file-size independent of the file-size word
add constantsdb4
parent
a92425adef
commit
8e0ff1989b
|
@ -4,7 +4,7 @@ io.backend.windows io.files.windows io.encodings.utf16n windows
|
||||||
windows.kernel32 kernel libc math threads system environment
|
windows.kernel32 kernel libc math threads system environment
|
||||||
alien.c-types alien.arrays alien.strings sequences combinators
|
alien.c-types alien.arrays alien.strings sequences combinators
|
||||||
combinators.short-circuit ascii splitting alien strings assocs
|
combinators.short-circuit ascii splitting alien strings assocs
|
||||||
namespaces make accessors tr io.files.info ;
|
namespaces make accessors tr windows.time ;
|
||||||
IN: io.files.windows.nt
|
IN: io.files.windows.nt
|
||||||
|
|
||||||
M: winnt cwd
|
M: winnt cwd
|
||||||
|
@ -44,8 +44,18 @@ M: winnt normalize-path ( string -- string' )
|
||||||
M: winnt CreateFile-flags ( DWORD -- DWORD )
|
M: winnt CreateFile-flags ( DWORD -- DWORD )
|
||||||
FILE_FLAG_OVERLAPPED bitor ;
|
FILE_FLAG_OVERLAPPED bitor ;
|
||||||
|
|
||||||
|
<PRIVATE
|
||||||
|
|
||||||
|
: windows-file-size ( path -- size )
|
||||||
|
normalize-path 0 "WIN32_FILE_ATTRIBUTE_DATA" <c-object>
|
||||||
|
[ GetFileAttributesEx win32-error=0/f ] keep
|
||||||
|
[ WIN32_FILE_ATTRIBUTE_DATA-nFileSizeLow ]
|
||||||
|
[ WIN32_FILE_ATTRIBUTE_DATA-nFileSizeHigh ] bi >64bit ;
|
||||||
|
|
||||||
|
PRIVATE>
|
||||||
|
|
||||||
M: winnt open-append
|
M: winnt open-append
|
||||||
[ dup file-info size>> ] [ drop 0 ] recover
|
[ dup windows-file-size ] [ drop 0 ] recover
|
||||||
[ (open-append) ] dip >>ptr ;
|
[ (open-append) ] dip >>ptr ;
|
||||||
|
|
||||||
M: winnt home "USERPROFILE" os-env ;
|
M: winnt home "USERPROFILE" os-env ;
|
||||||
|
|
|
@ -15,74 +15,74 @@ TYPEDEF: void* SOCKET
|
||||||
: <wsadata> ( -- byte-array )
|
: <wsadata> ( -- byte-array )
|
||||||
HEX: 190 <byte-array> ;
|
HEX: 190 <byte-array> ;
|
||||||
|
|
||||||
: SOCK_STREAM 1 ; inline
|
CONSTANT: SOCK_STREAM 1
|
||||||
: SOCK_DGRAM 2 ; inline
|
CONSTANT: SOCK_DGRAM 2
|
||||||
: SOCK_RAW 3 ; inline
|
CONSTANT: SOCK_RAW 3
|
||||||
: SOCK_RDM 4 ; inline
|
CONSTANT: SOCK_RDM 4
|
||||||
: SOCK_SEQPACKET 5 ; inline
|
CONSTANT: SOCK_SEQPACKET 5
|
||||||
|
|
||||||
: SO_DEBUG HEX: 1 ; inline
|
CONSTANT: SO_DEBUG HEX: 1
|
||||||
: SO_ACCEPTCONN HEX: 2 ; inline
|
CONSTANT: SO_ACCEPTCONN HEX: 2
|
||||||
: SO_REUSEADDR HEX: 4 ; inline
|
CONSTANT: SO_REUSEADDR HEX: 4
|
||||||
: SO_KEEPALIVE HEX: 8 ; inline
|
CONSTANT: SO_KEEPALIVE HEX: 8
|
||||||
: SO_DONTROUTE HEX: 10 ; inline
|
CONSTANT: SO_DONTROUTE HEX: 10
|
||||||
: SO_BROADCAST HEX: 20 ; inline
|
CONSTANT: SO_BROADCAST HEX: 20
|
||||||
: SO_USELOOPBACK HEX: 40 ; inline
|
CONSTANT: SO_USELOOPBACK HEX: 40
|
||||||
: SO_LINGER HEX: 80 ; inline
|
CONSTANT: SO_LINGER HEX: 80
|
||||||
: SO_OOBINLINE HEX: 100 ; inline
|
CONSTANT: SO_OOBINLINE HEX: 100
|
||||||
: SO_DONTLINGER ( -- n ) SO_LINGER bitnot ; inline
|
: SO_DONTLINGER ( -- n ) SO_LINGER bitnot ; inline
|
||||||
|
|
||||||
: SO_SNDBUF HEX: 1001 ; inline
|
CONSTANT: SO_SNDBUF HEX: 1001
|
||||||
: SO_RCVBUF HEX: 1002 ; inline
|
CONSTANT: SO_RCVBUF HEX: 1002
|
||||||
: SO_SNDLOWAT HEX: 1003 ; inline
|
CONSTANT: SO_SNDLOWAT HEX: 1003
|
||||||
: SO_RCVLOWAT HEX: 1004 ; inline
|
CONSTANT: SO_RCVLOWAT HEX: 1004
|
||||||
: SO_SNDTIMEO HEX: 1005 ; inline
|
CONSTANT: SO_SNDTIMEO HEX: 1005
|
||||||
: SO_RCVTIMEO HEX: 1006 ; inline
|
CONSTANT: SO_RCVTIMEO HEX: 1006
|
||||||
: SO_ERROR HEX: 1007 ; inline
|
CONSTANT: SO_ERROR HEX: 1007
|
||||||
: SO_TYPE HEX: 1008 ; inline
|
CONSTANT: SO_TYPE HEX: 1008
|
||||||
|
|
||||||
: TCP_NODELAY HEX: 1 ; inline
|
CONSTANT: TCP_NODELAY HEX: 1
|
||||||
|
|
||||||
: AF_UNSPEC 0 ; inline
|
CONSTANT: AF_UNSPEC 0
|
||||||
: AF_UNIX 1 ; inline
|
CONSTANT: AF_UNIX 1
|
||||||
: AF_INET 2 ; inline
|
CONSTANT: AF_INET 2
|
||||||
: AF_IMPLINK 3 ; inline
|
CONSTANT: AF_IMPLINK 3
|
||||||
: AF_PUP 4 ; inline
|
CONSTANT: AF_PUP 4
|
||||||
: AF_CHAOS 5 ; inline
|
CONSTANT: AF_CHAOS 5
|
||||||
: AF_NS 6 ; inline
|
CONSTANT: AF_NS 6
|
||||||
: AF_ISO 7 ; inline
|
CONSTANT: AF_ISO 7
|
||||||
ALIAS: AF_OSI AF_ISO
|
ALIAS: AF_OSI AF_ISO
|
||||||
: AF_ECMA 8 ; inline
|
CONSTANT: AF_ECMA 8
|
||||||
: AF_DATAKIT 9 ; inline
|
CONSTANT: AF_DATAKIT 9
|
||||||
: AF_CCITT 10 ; inline
|
CONSTANT: AF_CCITT 10
|
||||||
: AF_SNA 11 ; inline
|
CONSTANT: AF_SNA 11
|
||||||
: AF_DECnet 12 ; inline
|
CONSTANT: AF_DECnet 12
|
||||||
: AF_DLI 13 ; inline
|
CONSTANT: AF_DLI 13
|
||||||
: AF_LAT 14 ; inline
|
CONSTANT: AF_LAT 14
|
||||||
: AF_HYLINK 15 ; inline
|
CONSTANT: AF_HYLINK 15
|
||||||
: AF_APPLETALK 16 ; inline
|
CONSTANT: AF_APPLETALK 16
|
||||||
: AF_NETBIOS 17 ; inline
|
CONSTANT: AF_NETBIOS 17
|
||||||
: AF_MAX 18 ; inline
|
CONSTANT: AF_MAX 18
|
||||||
: AF_INET6 23 ; inline
|
CONSTANT: AF_INET6 23
|
||||||
: AF_IRDA 26 ; inline
|
CONSTANT: AF_IRDA 26
|
||||||
: AF_BTM 32 ; inline
|
CONSTANT: AF_BTM 32
|
||||||
|
|
||||||
: PF_UNSPEC 0 ; inline
|
CONSTANT: PF_UNSPEC 0
|
||||||
: PF_LOCAL 1 ; inline
|
CONSTANT: PF_LOCAL 1
|
||||||
: PF_INET 2 ; inline
|
CONSTANT: PF_INET 2
|
||||||
: PF_INET6 23 ; inline
|
CONSTANT: PF_INET6 23
|
||||||
|
|
||||||
: AI_PASSIVE 1 ; inline
|
CONSTANT: AI_PASSIVE 1
|
||||||
: AI_CANONNAME 2 ; inline
|
CONSTANT: AI_CANONNAME 2
|
||||||
: AI_NUMERICHOST 4 ; inline
|
CONSTANT: AI_NUMERICHOST 4
|
||||||
: AI_MASK ( -- n ) { AI_PASSIVE AI_CANONNAME AI_NUMERICHOST } flags ;
|
: AI_MASK ( -- n ) { AI_PASSIVE AI_CANONNAME AI_NUMERICHOST } flags ;
|
||||||
|
|
||||||
: NI_NUMERICHOST 1 ;
|
CONSTANT: NI_NUMERICHOST 1
|
||||||
: NI_NUMERICSERV 2 ;
|
CONSTANT: NI_NUMERICSERV 2
|
||||||
|
|
||||||
: IPPROTO_TCP 6 ; inline
|
CONSTANT: IPPROTO_TCP 6
|
||||||
: IPPROTO_UDP 17 ; inline
|
CONSTANT: IPPROTO_UDP 17
|
||||||
: IPPROTO_RM 113 ; inline
|
CONSTANT: IPPROTO_RM 113
|
||||||
|
|
||||||
CONSTANT: WSA_FLAG_OVERLAPPED 1
|
CONSTANT: WSA_FLAG_OVERLAPPED 1
|
||||||
ALIAS: WSA_WAIT_EVENT_0 WAIT_OBJECT_0
|
ALIAS: WSA_WAIT_EVENT_0 WAIT_OBJECT_0
|
||||||
|
@ -94,16 +94,16 @@ ALIAS: WSA_WAIT_TIMEOUT WAIT_TIMEOUT
|
||||||
ALIAS: WSA_INFINITE INFINITE
|
ALIAS: WSA_INFINITE INFINITE
|
||||||
ALIAS: WSA_IO_PENDING ERROR_IO_PENDING
|
ALIAS: WSA_IO_PENDING ERROR_IO_PENDING
|
||||||
|
|
||||||
: INADDR_ANY 0 ; inline
|
CONSTANT: INADDR_ANY 0
|
||||||
|
|
||||||
: INVALID_SOCKET ( -- alien ) -1 <alien> ; inline
|
: INVALID_SOCKET ( -- alien ) -1 <alien> ; inline
|
||||||
: SOCKET_ERROR -1 ; inline
|
CONSTANT: SOCKET_ERROR -1
|
||||||
|
|
||||||
: SD_RECV 0 ; inline
|
CONSTANT: SD_RECV 0
|
||||||
: SD_SEND 1 ; inline
|
CONSTANT: SD_SEND 1
|
||||||
: SD_BOTH 2 ; inline
|
CONSTANT: SD_BOTH 2
|
||||||
|
|
||||||
: SOL_SOCKET HEX: ffff ; inline
|
CONSTANT: SOL_SOCKET HEX: ffff
|
||||||
|
|
||||||
! TYPEDEF: uint in_addr_t
|
! TYPEDEF: uint in_addr_t
|
||||||
! C-STRUCT: in_addr
|
! C-STRUCT: in_addr
|
||||||
|
@ -207,7 +207,7 @@ C-STRUCT: QOS
|
||||||
{ "WSABUF" "ProviderSpecific" } ;
|
{ "WSABUF" "ProviderSpecific" } ;
|
||||||
TYPEDEF: QOS* LPQOS
|
TYPEDEF: QOS* LPQOS
|
||||||
|
|
||||||
: MAX_PROTOCOL_CHAIN 7 ; inline
|
CONSTANT: MAX_PROTOCOL_CHAIN 7
|
||||||
|
|
||||||
C-STRUCT: WSAPROTOCOLCHAIN
|
C-STRUCT: WSAPROTOCOLCHAIN
|
||||||
{ "int" "ChainLen" }
|
{ "int" "ChainLen" }
|
||||||
|
@ -215,7 +215,7 @@ C-STRUCT: WSAPROTOCOLCHAIN
|
||||||
{ { "DWORD" 7 } "ChainEntries" } ;
|
{ { "DWORD" 7 } "ChainEntries" } ;
|
||||||
TYPEDEF: WSAPROTOCOLCHAIN* LPWSAPROTOCOLCHAIN
|
TYPEDEF: WSAPROTOCOLCHAIN* LPWSAPROTOCOLCHAIN
|
||||||
|
|
||||||
: WSAPROTOCOL_LEN 255 ; inline
|
CONSTANT: WSAPROTOCOL_LEN 255
|
||||||
|
|
||||||
C-STRUCT: WSAPROTOCOL_INFOW
|
C-STRUCT: WSAPROTOCOL_INFOW
|
||||||
{ "DWORD" "dwServiceFlags1" }
|
{ "DWORD" "dwServiceFlags1" }
|
||||||
|
@ -387,7 +387,7 @@ LIBRARY: mswsock
|
||||||
FUNCTION: int AcceptEx ( void* listen, void* accept, void* out-buf, int recv-len, int addr-len, int remote-len, void* out-len, void* overlapped ) ;
|
FUNCTION: int AcceptEx ( void* listen, void* accept, void* out-buf, int recv-len, int addr-len, int remote-len, void* out-len, void* overlapped ) ;
|
||||||
FUNCTION: void GetAcceptExSockaddrs ( void* a, int b, int c, int d, void* e, void* f, void* g, void* h ) ;
|
FUNCTION: void GetAcceptExSockaddrs ( void* a, int b, int c, int d, void* e, void* f, void* g, void* h ) ;
|
||||||
|
|
||||||
: SIO_GET_EXTENSION_FUNCTION_POINTER -939524090 ; inline
|
CONSTANT: SIO_GET_EXTENSION_FUNCTION_POINTER -939524090
|
||||||
|
|
||||||
: WSAID_CONNECTEX ( -- GUID )
|
: WSAID_CONNECTEX ( -- GUID )
|
||||||
"GUID" <c-object>
|
"GUID" <c-object>
|
||||||
|
|
Loading…
Reference in New Issue