Commit Graph
99 Commits
Author SHA1 Message Date
Darren Stahl 7ff89941bc Merge pull request #59 from timou/master
Bool is not atomic
2017-07-24 19:50:09 -07:00
Tim Ebringer 73020a3110 Bool is not atomic
The Go race detector doesn't like concurrent access to bool. This change
moves the bool to use atomicBool, and extends atomicBool with the swap()
method, to handle conditional use.
2017-07-24 21:04:39 -04:00
Darren Stahl 3e5ddb06eb Merge pull request #61 from mlaventure/prevent-deadlock
Don't increment the wait count if the file is closing
2017-07-24 15:26:06 -07:00
Kenfe-Mickael Laventure 1ba55a6b1b Don't increment the wait count if the file is closing
This prevent a deadlock if `prepareIo()` is called on a closing file as
`Done()` would never been called afterwards.

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-07-19 18:15:28 +02:00
John Starks c4dc1301f1 Merge pull request #56 from swernli/master
Adding simple CreateVhdx method
2017-07-11 21:46:15 -07:00
Stefan Wernli 24d09c6f4b Adding VHD library with simple function, updating mksyscall
Adds the basic structs for VHD function calls and includes one simple wrapper for VHDX creation.
This includes the updated version of mksyscall_windows.go, which previously assumed any api that doesn't end in "W" must not be unicode, and encodes the strings incorrectly. This hard-codes for unicode support and generates the syscalls from there.
2017-07-11 21:12:04 -07:00
Stefan Wernli 1bbb8c8d24 Copying mksyscall_windows from golang 2017-07-11 20:18:55 -07:00
Darren Stahl f533f7a102 Merge pull request #54 from darrenstahlmsft/NoCopyMemory
RtlCopyMemory is not available on Nanoserver use builtin copy instead
2017-05-23 17:36:31 -07:00
Darren Stahl 18d7347919 RtlCopyMemory is not available on Nanoserver use builtin copy instead
Signed-off-by: Darren Stahl <darst@microsoft.com>
2017-05-23 17:26:29 -07:00
Darren Stahl 706941bedd Merge pull request #53 from darrenstahlmsft/wgDone
Move f.wg.Done() to Read and Write to avoid leaking handles
2017-05-19 16:10:15 -07:00
Darren Stahl a64f284add Move f.wg.Done() to Read and Write to avoid leaking handles
Signed-off-by: Darren Stahl <darst@microsoft.com>
2017-05-19 15:42:58 -07:00
John Starks d311c76e77 Merge pull request #51 from darrenstahlmsft/NoCGO
Remove cgo as a dependency added by #49
2017-05-08 14:01:43 -07:00
John Starks 518e6ebd8b Merge pull request #50 from Microsoft/Timeout
Apply read and write deadlines to pending IO
2017-05-08 13:59:22 -07:00
Darren Stahl de045f765f Remove cgo as a dependency added by #48
Signed-off-by: Darren Stahl <darst@microsoft.com>
2017-05-05 16:39:41 -07:00
Darren Stahl 899dbf3ba5 Apply read and write deadlines to pending IO
In order to upgrade to go1.8 all IO operations
including previous pending IO must have the deadline
set when SetReadDeadline or SetWriteDeadline is called

Signed-off-by: Darren Stahl <darst@microsoft.com>
2017-05-05 14:53:42 -07:00
Darren Stahl 2a0317319a Adding failing tests for deadlines on pending IO
Signed-off-by: Darren Stahl <darst@microsoft.com>
2017-05-05 14:53:42 -07:00
John Starks 13736c3252 Merge pull request #48 from darrenstahlmsft/Go1.8
Added runtime.KeepAlive for the new stricter 1.8 GC
2017-05-03 12:50:31 -07:00
Darren Stahl e9792bc98c Added runtime.KeepAlive for the new stricter 1.8 GC
Signed-off-by: Darren Stahl <darst@microsoft.com>
2017-05-03 12:47:12 -07:00
Darren Stahl 23ad5a714c Allocate securityDescriptor in C memory
Signed-off-by: Darren Stahl <darst@microsoft.com>
2017-05-03 12:46:54 -07:00
John Howard f3b1913901 Merge pull request #43 from simonferquel/deadlock-on-concurrent-rw
Flush outgoing content before sending EOF message
2017-04-25 19:53:07 -07:00
Simon Ferquel 7c7d6b461c Flush file buffers on CloseWrite
This forces any pending data to be sent to the remote party before
emitting the 0-length EOF message, to make sure it appears as a seperate
message.

This fixes the "TestEchoWithMessaging" test

Signed-off-by: Simon Ferquel <simon.ferquel@docker.com>
2017-03-17 16:57:20 +01:00
Simon Ferquel 203d18a858 Introduces a test that does an echo using message mode named pipes
This exhibit a deadlock we see sometimes when using docker cli connected
to a daemon through a named pipe with some data in the input stream (ie:
`echo "hello" | docker run ... `)

The problem seems to be that the EOF 0-length message is collapsed with
the previous message, if the buffer associated with the named pipe is
not previously flushed

Signed-off-by: Simon Ferquel <simon.ferquel@docker.com>
2017-03-17 16:43:53 +01:00
Stefan J. Wernli fff283ad51 Merge pull request #40 from Microsoft/altdatastream
Fix filename length check alt data stream
2017-01-31 16:43:30 -08:00
John Howard 10390492a4 Fix filename length check alt data stream
Signed-off-by: John Howard <jhoward@microsoft.com>
2017-01-31 16:40:45 -08:00
John Starks 307e919c66 Merge pull request #37 from vanita5/master
Replace unnecessary mod17 function with builtin mod
2017-01-12 16:12:40 -08:00
vanita5 55a2bb3c30 replace unnecessary mod17 function with builtin mod, see #37 and #38 2017-01-13 00:02:31 +01:00
Darren Stahl 24a3e3d3fc Merge pull request #36 from darrenstahlmsft/Updatezsyscall
Regenerate zsyscall with latest mksyscall_windows
2016-11-21 14:01:10 -08:00
Darren Stahl ff6c542051 Regenerate zsyscall with latest mksyscall_windows
Signed-off-by: Darren Stahl <darst@microsoft.com>
2016-11-21 12:11:25 -08:00
Darren Stahl d8f60f2dd1 Merge pull request #33 from cezarsa/master
Include build tags to allow go get on non-Windows platforms.
2016-11-21 12:05:53 -08:00
John Starks 562bb09f66 Merge pull request #35 from Microsoft/jjh/disableprocpriv
Add DisableProcessPrivileges
2016-11-03 11:56:17 -07:00
John Howard e43ad798e3 Add DisableProcessPrivileges
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-11-02 16:44:36 -07:00
Cezar Sa Espinola 94c0518b08 Include build tags to allow go get on non-Windows platforms. Fixes #30 2016-10-06 18:00:50 -03:00
Justin ce2922f643 Merge pull request #28 from jstarks/conduct
Add reference to code of conduct
2016-06-21 14:14:38 -07:00
John Starks 2cf8f2ee8b Add reference to code of conduct 2016-06-21 14:08:28 -07:00
John Starks 4f1a71750d Merge pull request #24 from Microsoft/fix
Pass FILE_FLAG_OPEN_REPARSE_POINT in OpenForBackup
2016-05-19 17:05:29 -07:00
John Starks f4304cf7dc Pass FILE_FLAG_OPEN_REPARSE_POINT in OpenForBackup 2016-05-19 17:02:51 -07:00
John Starks 88d9b9ee05 Merge pull request #23 from Microsoft/wim_opts
Optimize WIM parsing
2016-05-17 13:16:34 -07:00
John Starks 2255376ea2 Merge pull request #22 from Microsoft/priv_opts
Add function for setting privileges globally
2016-05-13 11:41:16 -07:00
John Starks e94cfdcd8a Merge pull request #21 from Microsoft/sjw/sddl-fix
Remove use of SDDL in tar headers
2016-05-12 21:35:16 -07:00
John Starks f1a78c8aaf Add function for setting privileges globally
Also optimize privilege setting with the same privilege name multiple
times.
2016-05-12 21:33:03 -07:00
John Starks 69b46ecca8 LZX: Split table into two parts 2016-05-12 19:47:52 -07:00
John Starks d69c9fb04e LZX: Perform buffering internally 2016-05-12 19:47:51 -07:00
John Starks 5e100a8bcc LZX: Improve huffman table encoding 2016-05-12 19:47:47 -07:00
Stefan J. Wernli 0ab2de7e65 Remove use of SDDL in tar headers
Switching to using straight binary instead of SDDL in tar headers to avoid failures in converting domain SIDs into/out of SDDL.

Fixes https://github.com/Microsoft/go-winio/issues/19
2016-05-11 17:05:17 -07:00
John Starks d1317d5733 Reduce decompression of directory metadata 2016-05-11 16:33:31 -07:00
John Starks 3b8b3c98b2 Merge pull request #18 from Microsoft/wim_multi
Fix multiple calls to img.Open
2016-04-18 15:16:11 -07:00
John Starks 24c009df14 Fix multiple calls to img.Open 2016-04-18 12:51:10 -07:00
John Starks 862b655792 Merge pull request #17 from Microsoft/fix_symlink
Backuptar: replace slash with backslash on link target
2016-04-11 18:00:29 -07:00
John Starks 6606cf93e2 Handle long paths correctly in reparse points 2016-04-11 17:20:42 -07:00
John Starks 93ca0b892a Backuptar: replace slash with backslash on link target 2016-04-11 15:45:43 -07:00