client: get client IP from daemon in disconnect command#3341
Draft
client: get client IP from daemon in disconnect command#3341
Conversation
e27107f to
f735034
Compare
Match the connect command's behavior by getting the client IP from the daemon instead of discovering it locally. This avoids mismatches when the daemon has a different view of the public IP (e.g. behind NAT). Extract resolve_client_ip() into a testable method and add unit tests for valid IP, empty IP, invalid IP, and daemon-unreachable cases. Move now-unused look_for_ip helpers behind #[cfg(test)]. Remove deprecated --client-ip from connect/disconnect invocations in e2e tests.
f735034 to
cffed71
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.
Summary
/v2/statusendpoint in the disconnect command, matching connect's behaviorresolve_client_ip()into a testable method with unit tests covering valid IP, empty IP, invalid IP, and daemon-unreachable cases--client-ipflag fromdoublezero connect/disconnectinvocations in e2e testslook_for_iphelpers behind#[cfg(test)]to fix clippy dead-code warningsTesting Verification
resolve_client_ipunit tests cover all error branches (empty, invalid, unreachable) and the happy pathdoublezerocrate tests pass--client-ipremoved from connect/disconnect invocations