Commit Graph
112 Commits
Author SHA1 Message Date
John Howard ab35fc04b6 Merge pull request #77 from johnstep/fix-valid-sid-test
Call Fatalf to use the format specifier
2018-05-01 10:05:46 -07:00
John Stephens 1891e2bbff Call Fatalf to use the format specifier
Signed-off-by: John Stephens <johnstep@docker.com>
2018-04-30 16:52:55 -07:00
Darren Stahl 7da180ee92 Merge pull request #71 from darrenstahlmsft/RemoveTimeBeginPeriod
Remove workaround to perf issues in go1.6
2018-01-16 14:35:03 -08:00
Darren Stahl 6f4ae360a5 Remove workaround to perf issues in go1.6
Starting in go1.9, Golang lowers the timer frequency when not required
reducing CPU usage. This workaround prevents Golang from doing so,
and since the initial issue was fixed, I see no perf regressions.
This does not need to be conditional based on Golang verison, as the issue
being worked around was only in go1.6.

Signed-off-by: Darren Stahl <darst@microsoft.com>
2018-01-09 14:51:38 -08:00
John Howard b7c3cf0d12 Merge pull request #70 from jstarks/connect_race
pipe: Resolve race between close and connect
2018-01-09 13:36:25 -08:00
John Starks ae842e48e0 pipe: Resolve race between close and connect
This change resolves the issue where Accept() returns ERROR_NO_DATA
because the client closes the connection immediately. It resolves
the race by ignoring that particular connection and waiting on a
new one.
2018-01-09 13:28:13 -08:00
John Starks 78439966b3 Merge pull request #65 from darrenstahlmsft/waitGroup
Prevent adding to a sync.WaitGroup that has a waiter
2017-08-04 13:09:54 -07:00
Darren Stahl 3d52dc4a97 Test bug: Fix server connections not closing in TestEchoWithMessaging
Signed-off-by: Darren Stahl <darst@microsoft.com>
2017-08-04 10:24:26 -07:00
Darren Stahl c57b87d6d4 Prevent adding to a sync.WaitGroup that has a waiter
Signed-off-by: Darren Stahl <darst@microsoft.com>
2017-08-03 15:26:45 -07:00
John Starks 036d9d8653 Merge pull request #64 from jstarks/tar_ea
Add support for EAs to Windows tars
2017-08-02 11:48:47 -07:00
John Starks 353f5972cb Merge pull request #63 from fsouza/fix-data-race
Copy pointer to prevent data race on pipe connection
2017-08-02 11:45:34 -07:00
John Starks 42a2f45ea5 Add support for EAs to Windows tars 2017-08-01 17:24:15 -07:00
Francisco Souza 6f65f5291e Copy pointer to prevent data race on pipe connection
Closes #62.
2017-07-25 23:33:44 -04:00
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