Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Avoid clients erroneously keeping orphans from being removed
In case a client connects over TLS, the client's X.509 subject key identifier (SKI) will be used as a server-side user id. In case the client certificate changes (and the SKI with it) and the Pathfinder protocol connection is torn down and reestablished (e.g., due to a network outage), the client will typically connect under a new user id, but the same client id. The server currently accepts such clients, but does not allow them to republish services owned by the previous user id. The services published under the old user id would be marked as orphans, and will eventually be removed, allowing the new client to republish the services. This patch fixes a bug where such a reconnecting client would keep orphaned services alive upon disconnecting. This in turn, with current libpaf behavior, result in a situation where services published under the original user id would never be removed, if the service TTL was larger than the retry period. For a better solution than using SKI for access control, see issue #18. Signed-off-by: Mattias Rönnblom <[email protected]>
- Loading branch information