Andrew Kelley
c7c38e7279
Merge branch '5002-fix-entrypoint-with-winmain' of https://github.com/AnthonyYoManz/zig into AnthonyYoManz-5002-fix-entrypoint-with-winmain
2020-10-15 18:22:12 -07:00
Tadeo Kondrak
2b4b03d301
Update zig files for opaque type syntax
2020-10-06 22:08:25 -06:00
Bas van den Berg
127fa80090
implement poll for windows with WSAPoll (only available on vista and higher)
2020-09-10 20:20:27 +02:00
Bas van den Berg
44f877d18b
change socklen_t to u32 and add appropriate casts when calling WSA
2020-09-08 12:24:39 +02:00
Bas
4a6ca735d9
Merge branch 'master' into improve-windows-networking
2020-09-08 11:56:59 +02:00
Veikka Tuominen
41bbadbb9a
Merge pull request #6246 from Vexu/field
...
Remove deprecated fields on `type`
2020-09-05 13:58:02 +03:00
Vexu
1df0f3ac24
update uses of deprecated type field access
2020-09-03 18:10:40 +03:00
Bas van den Berg
0a40a61548
os.send(to) and os.recv(from) functions made to work on windows.
2020-09-03 13:23:48 +02:00
Aransentin
25f6663304
Add the sync functions
2020-09-02 22:16:40 +00:00
Bas van den Berg
d80554cedf
Made some changes and additions to the networking to make it work on windows.
2020-09-02 23:53:29 +02:00
Andrew Kelley
4a69b11e74
add license header to all std lib files
...
add SPDX license identifier
copyright ownership is zig contributors
2020-08-20 16:07:04 -04:00
Jakub Konka
cd8e6b66d0
Address some review comments
2020-08-09 10:47:52 +02:00
Jakub Konka
bdda8fa7a8
Redo GetFinalPathNameByHandle using DeviceIoControl
...
This commit reimagines `std.os.windows.GetFinalPathNameByHandle`
using `DeviceIoControl` to query the OS mount manager for the DOS
(symlink) paths for the given NT volume name. In particular,
it uses `IOCTL_MOUNTMGR_QUERY_POINTS` ioctl opcode to query the
manager for the available moount points.
2020-08-07 11:33:05 +02:00
Jakub Konka
747d46f22c
Initial draft of GetFinalPathNameByHandle
...
This commit proposes an initial draft of `GetPathNameByHandle` function
which wraps NT syscalls and strives to emulate (currently only
partially) the `kernel32.GetFinalPathNameByHandleW` function.
2020-08-06 23:56:37 +02:00
Jakub Konka
f0ed2ed67f
Replace DeviceIoControl with FsControlFile
...
This commit replaces `windows.DeviceIoControl` with
`windows.FsControlFile` which is a wrapper around the NT-based
syscall `ntdll.NtFsControlFile`.
2020-07-27 19:45:23 +00:00
Jakub Konka
c53bcd027f
Start drafting CreateSymbolicLink using ntdll syscalls
2020-07-22 08:51:23 +02:00
Jakub Konka
99e3e29e2e
Refactor
2020-07-22 08:51:22 +02:00
Jakub Konka
c47cb8d09f
Fix unlinkatW to allow file symlink deletion on Windows
2020-07-22 08:51:22 +02:00
Jakub Konka
ae8abedbed
Use NtCreateFile to get handle to reparse point
2020-07-22 08:51:22 +02:00
Jakub Konka
d17c9b3591
Fix incorrect byte format of REPARSE_DATA_BUFFER struct
2020-07-22 08:51:22 +02:00
Jakub Konka
9b00dc941b
Use windows.CreateFileW to open the reparse point
2020-07-22 08:51:22 +02:00
Jakub Konka
791795a63a
Finish symlink implementation on Windows
2020-07-22 08:51:22 +02:00
Jakub Konka
515c663cd6
Add readlink smoke test
2020-07-22 08:51:22 +02:00
Jakub Konka
cc83d92b0b
Start drafting out os.readlink on Windows
2020-07-22 08:51:22 +02:00
Anthony Arian
3658dd5e89
Merge branch 'master' of https://github.com/ziglang/zig into 5002-fix-entrypoint-with-winmain
2020-07-20 10:25:54 +01:00
Jonathan Marler
dc9648f868
new allocator interface
2020-06-26 13:34:48 -06:00
Andrew Kelley
da549a72e1
zig fmt
2020-06-20 18:39:15 -04:00
Anthony Arian
5e48ed4a8d
Implement WinMain Callers that Pass Valid Params
2020-06-15 22:46:16 +01:00
Andrew Kelley
c6764fd254
Merge pull request #5475 from marler8997/windowsDns
...
support name resolution on windows
2020-06-01 15:33:05 -04:00
Jonathan Marler
58fb5b29b6
more windows network fixes
...
* support posix SOCK_NONBLOCK and SOCK_CLOEXEC flags on windows
* fix bugs in os.socket and os.connect to return at the correct place
2020-05-31 10:07:51 -06:00
Alexandros Naskos
dbdacb0938
Fix WSARecvFrom signature
...
The lpFromLen should be a pointer.
2020-05-30 16:46:32 +03:00
Jonathan Marler
2eaab1e65e
more windows network support, including dns
2020-05-29 22:38:48 -06:00
Andrew Kelley
ba43492c0e
Merge pull request #5268 from tadeokondrak/remove-callconv-redundant-syntax
...
Remove syntax redundant with callconv
2020-05-07 12:42:26 -04:00
Jens Goldberg
20c1696865
Removed GetModuleHandleA from user32
...
GetModuleHandleA is an kernel32 function and already defined there, it doesn't belong in user32.
2020-05-07 12:38:46 -04:00
Jens Goldberg
25810bc1e6
Removed duplicate WM_ACTIVATE
2020-05-07 12:38:46 -04:00
Tadeo Kondrak
6745a6f6f6
zig fmt
2020-05-05 09:38:02 -06:00
Tadeo Kondrak
17e41f6cd3
@OpaqueType -> @Type(.Opaque)
2020-04-28 00:02:13 -06:00
LemonBoy
155e631aa6
std: Implement progress for Windows
...
Use the Win32 API instead of using the VT escape sequences.
2020-04-22 12:58:02 +02:00
Vexu
ca3bf6e6ad
translate-c cleanup and zig fmt
2020-04-15 15:15:32 +03:00
Jakub
1e23a3cd91
Added gdi32.zig and More user32 definitions
2020-04-14 16:20:48 -04:00
daurnimator
8e9e126d41
std: add some basic windows user32 definitions
2020-04-12 02:28:52 -04:00
Andrew Kelley
66e76a0209
zig build system: correctly handle multiple output artifacts
...
Previously the zig build system incorrectly assumed that the only build
artifact was a binary. Now, when you enable the cache, only the output
dir is printed to stdout, and the zig build system iterates over the
files in that directory, copying them to the output directory.
To support this change:
* Add `std.os.renameat`, `std.os.renameatZ`, and `std.os.renameatW`.
* Fix `std.os.linux.renameat` not compiling due to typos.
* Deprecate `std.fs.updateFile` and `std.fs.updateFileMode`.
* Add `std.fs.Dir.updateFile`, which supports using open directory
handles for both the source and destination paths, as well as an
options parameter which allows overriding the mode.
* Update `std.fs.AtomicFile` to support operating based on an open
directory handle. Instead of `std.fs.AtomicFile.init`, use
`std.fs.Dir.atomicFile`.
* `std.fs.AtomicFile` deinit() better handles the situation when the
rename fails but the temporary file still exists, by still
attempting to remove the temporary file.
* `std.fs.Dir.openFileWindows` is moved to `std.os.windows.OpenFileW`.
* `std.os.RenameError` gains the error codes `NoDevice`,
`SharingViolation`, and `PipeBusy` which have been observed from
Windows.
Closes #4733
2020-03-13 21:22:08 -04:00
LemonBoy
de53537f10
Add NtDll-based ftruncate implementation
2020-03-13 08:45:37 +01:00
LemonBoy
11df0d0cf8
std: Add setEndPos to fs.file
...
Allow the user to shrink/grow the file size as needed.
2020-03-12 09:43:45 +01:00
Andrew Kelley
7df9169081
Merge pull request #4651 from LemonBoy/fix-4645
...
std: Nicer way to access the PEB
2020-03-06 17:33:05 -05:00
Andrew Kelley
3163a16617
?HMODULE instead of HMODULE
2020-03-06 16:57:59 -05:00
LemonBoy
2e04b61275
std: Work around unexported NtCurrentTeb
...
Apparently NtCurrentTeb is only exported for i386 and some other
platforms but not for x86_64 nor AArch64. Let's go with the flow and
provide our own NtCurrentTeb like the Windows headers do.
Thank you Microsoft.
2020-03-06 09:17:14 +01:00
LemonBoy
b9a1d67637
std: Nicer way to access the PEB
...
Use the NtCurrentTeb API instead of using some inline asm, this is much
nicer and also more portable.
Closes #4645
2020-03-06 09:06:26 +01:00
Andrew Kelley
ae99fabfe4
Merge pull request #4585 from LemonBoy/fix-4581
...
target: Implement OS version detection for Windows
2020-03-01 02:53:51 -05:00
daurnimator
d0c22619f5
Complete windows PEB_LDR_DATA definition
2020-03-01 02:10:29 +11:00