Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Windows Support for Sync implementation #172

Merged
merged 4 commits into from
Mar 27, 2023

Commits on Mar 24, 2023

  1. Add integration test for sync example

    Adds asserts to the example project so it will fail if something isn't work between the client and server.  This also adds an integration test that builds and runs the sync example so the changes to the project can be validated e2e.
    
    Signed-off-by: James Sturtevant <[email protected]>
    jsturtevant committed Mar 24, 2023
    Configuration menu
    Copy the full SHA
    cb4d18b View commit details
    Browse the repository at this point in the history
  2. Refactor to support other OSes

    This moves unix specific calls out of the main server and client
    functions.  It does this by introducing several new types: PipeListener, PipeConnection,  and ClientConnection.  These types are contain the unix specific functionality to communitcate with Unix Domain sockets and are hidden behind a conditional compilation flag.
    
    Signed-off-by: James Sturtevant <[email protected]>
    jsturtevant committed Mar 24, 2023
    Configuration menu
    Copy the full SHA
    e735bb3 View commit details
    Browse the repository at this point in the history
  3. Add Windows Implementation for sync server and client

    Adds the windows functionality for PipeListener, PipeConnection, and ClientConnection and does the few other changes required to build and run the example projects. This includes adding feature support to the examples so they wouldn't build the async projects (as the unix specific code hasn't been removed yet). Namedpipes are used as Containerd is one of the main use cases for this project on Windows and containerd only supports namedpipes.
    
    Signed-off-by: James Sturtevant <[email protected]>
    jsturtevant committed Mar 24, 2023
    Configuration menu
    Copy the full SHA
    6f6b9f1 View commit details
    Browse the repository at this point in the history
  4. Fix stuck thread on server shutdown

    The connect namedpipe thread would be in a suspended state when shutdown on the server is called.  Setting the event to a signalled state to wake the thread up so everything can shut down properly.
    
    Signed-off-by: James Sturtevant <[email protected]>
    jsturtevant committed Mar 24, 2023
    Configuration menu
    Copy the full SHA
    4975099 View commit details
    Browse the repository at this point in the history