change selector Path() member function signature#1
Open
change selector Path() member function signature#1
Conversation
Implementation of the pan package. Extend helloworld example and port to pan.
Using a single quic stream is common in our demo applications. Add a utility function for this, extracted from previous internal implementation in shttp. Compared to previous version in shttp, the listener is now more robust. Previously, if a remote session was opened without ever opening a stream, this would have blocked the listener Accept indefinitely.
- update pty dependency (old version is broken for go >= 1.15) - when executing a command, don't set Uid/Gid if the selected user is already the current user. Only appears to work when sshd is run with root otherwise. - redo the path policy and selector configuration, now based on pan. Make more useful selectors available. - misc fixes and cleanup related to logging and error handling
Replaced remaining usages of appquic with pan. Put the useful "generate self-signed certificate" thing into a new package, quicutil. Single stream quic "protocol" was first located in pan. Moved to quicutil now as it's independent and more of a utility for the "TCP-y" demo applications. Also, important (and incompatible) fixes for this single stream protocol. Now either side can start sending, plus it can now reliably close. This stuff is delicate, it should have lots of tests -- but i don't quite know how to do this best. Updated various usages of the "single stream" protocol. Removed the long list of supported protocols in netcat again -- that was a bit of a brain fart. The delicate handling of the quic streams is enough of a protocol to warrant having a dedicated identifier. Updated netcat QUIC integration tests (dont need the -b now!) Fixed netcat UDP closing (panic, write on closed channel).
11 tasks
59d5ed5 to
47cc837
Compare
9650d6d to
c26494e
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The
SetPathssignature already implies that different[]*Pathsets can be registered for differentremote UDPAddres, in theory allowing one givenSelectorto select paths to a number of different remote hosts. However, this only works, if the currentremote UDPAddrin question is passed as argument to thePath()method.This PR changes the
Selectorinterface accordingly and already reflects this change all existing selector implementations.