Commit Graph
19 Commits
Author SHA1 Message Date
Hamza El-Saawy d68e55cd0b Added HV Socket known IDs, Dial, bug fixes (#239)
* Added HV Socket known IDs, Dial, bug fixes

Added:
* Well-know Hyper-V VMIDs for parents, children, and loopback.
* VSock interop service GUID.
* `Dial()` and `DialContext()` to dial a specific Hyper-V socket at a
  known address (along with a corresponding `HvsockDialer` struct.

Bug fixes:
* Dial (and Listen) now properly initialize and set properties of their
  sockets after ConnectEx (and AcceptEx).
* The `socketError` used by `bind` was incorrect, it should be `int32(-1)`,
  not `uintptr(^0)`
* Return errors for `(*HvsockConn) SetDeadline`

Created a `sockets` package, currently only with syscalls to `Bind`,
`ConnectEx` and `GetSockName`, bypassing `syscall/windows` restrictions
on the types that can do so.

Signed-off-by: Hamza El-Saawy <hamzaelsaawy@microsoft.com>

* PR: error handling bug, rebase, unexport, naming

* comments and todos statements
* spelling
* removed dead code
* changed names to be more conventional
* unexported socket code
* made `(*HvsockDialer) Dial` take `Context`, removed `DialContext`
* added default `Dial` function
* rebased onto main
* cleaned up `Dial(` retry loop

Signed-off-by: Hamza El-Saawy <hamzaelsaawy@microsoft.com>

* PR: RawSockaddr validation, `.As(` style

Signed-off-by: Hamza El-Saawy <hamzaelsaawy@microsoft.com>
2022-07-21 19:33:50 -04:00
Kevin Parsons ce5a3739bc Export etw package 2019-03-18 23:57:19 -07:00
Kevin Parsons 063573a7d1 Reduce exported surface area of ETW package 2019-03-18 23:43:37 -07:00
John Howard c16103c642 Convert to UNix line endings
Signed-off-by: John Howard <jhoward@microsoft.com>
2019-02-21 09:33:18 -08:00
Kevin Parsons 75bf6ca3d7 Merge pull request #108 from kevpar/etw-set-provider-info
Set ETW provider info so it's always treated as TraceLogging
2019-01-17 13:15:22 -08:00
Kevin Parsons 7dba96a333 Set ETW provider info so it's always treated as TraceLogging
Signed-off-by: Kevin Parsons <kevpar@ntdev.microsoft.com>
2019-01-17 10:45:50 -08:00
Justin Terry (VM) 950c57133f Add a simple tool to generate provider ID's
Also implements the Stringer interface for etw.Provider to output the ID

Signed-off-by: Justin Terry (VM) <juterry@microsoft.com>
2019-01-15 15:56:17 -08:00
Kevin Parsons 515e920a0a Support logging more Go types to ETW
Signed-off-by: Kevin Parsons <kevpar@ntdev.microsoft.com>
2019-01-10 11:08:01 -08:00
Kevin Parsons b08043063d Merge branch 'master' into etw-nofields 2019-01-08 11:28:28 -08:00
Kevin Parsons 1844c5213b Support ETW activity ID 2019-01-07 16:01:46 -08:00
Kevin Parsons e82c358c71 Support ETW events with no data fields 2019-01-07 15:49:09 -08:00
Kevin Parsons d23783336b Fix indices in provider name to ID 2019-01-03 14:57:37 -08:00
Kevin Parsons 37af28e005 Pass blob pointers safely to ETW 2019-01-03 13:57:57 -08:00
Kevin Parsons b87cea3696 Clean up and PR feedback 2019-01-03 13:08:23 -08:00
Kevin Parsons fac5ca0c3a Separate ETW into low-level and high-level API 2018-12-21 16:18:22 -08:00
Kevin Parsons 7c26c75173 Add ETW support for arrays 2018-12-21 10:10:06 -08:00
Kevin Parsons 50cf0baa2f Support auto-generation of ETW provider ID 2018-12-20 14:05:36 -08:00
Kevin Parsons 82ad381699 Add ETW support for out type and tags 2018-12-20 01:28:55 -08:00
Kevin Parsons 824a366a22 Make etw package internal 2018-12-19 01:52:15 -08:00