Skip to content

fix(agent-tunnel): clone ca_manager Arc to unbreak master build#1790

Closed
irvingouj@Devolutions (irvingoujAtDevolution) wants to merge 1 commit into
masterfrom
fix/agent-tunnel-ca-manager-move
Closed

fix(agent-tunnel): clone ca_manager Arc to unbreak master build#1790
irvingouj@Devolutions (irvingoujAtDevolution) wants to merge 1 commit into
masterfrom
fix/agent-tunnel-ca-manager-move

Conversation

@irvingoujAtDevolution
Copy link
Copy Markdown
Contributor

Summary

Master is currently broken on Linux + Windows (tests, lints jobs).

crates/agent-tunnel/src/listener.rs:152-163 moves the same Arc<CaManager> into both AgentTunnelHandle and AgentTunnelListener, which doesn't compile:

error[E0382]: use of moved value: `ca_manager`
   --> crates/agent-tunnel/src/listener.rs:162:13

The fix is a one-liner: Arc::clone(&ca_manager) for the handle so the move into Self still type-checks.

Root cause

PR #1773 added the ca_manager field to AgentTunnelListener. PR #1775 used ca_manager in the same bind() body for the handle initializer. Each PR's CI was green against its own base, but the merge of #1775 on top of #1773 produced a semantic conflict that wasn't textually conflicting, so GitHub merged it without re-running CI.

Test plan

  • cargo check -p agent-tunnel — clean
  • cargo clippy -p agent-tunnel --tests -- -D warnings — clean
  • Linux + Windows CI green

…d handle

Both `AgentTunnelHandle` and `AgentTunnelListener` need to own a
`ca_manager: Arc<CaManager>`, but `bind()` was moving the same `Arc`
into each, failing compilation on master. Clone the `Arc` for the
handle so the original move into `Self` still type-checks.

This was missed because PRs #1773 and #1775 both passed CI against an
older base, but the merge of #1775 on top of #1773 produced a semantic
conflict that GitHub merged textually without re-running CI.
@github-actions
Copy link
Copy Markdown

Let maintainers know that an action is required on their side

  • Add the label release-required Please cut a new release (Devolutions Gateway, Devolutions Agent, Jetsocat, PowerShell module) when you request a maintainer to cut a new release (Devolutions Gateway, Devolutions Agent, Jetsocat, PowerShell module)

  • Add the label release-blocker Follow-up is required before cutting a new release if a follow-up is required before cutting a new release

  • Add the label publish-required Please publish libraries (`Devolutions.Gateway.Utils`, OpenAPI clients, etc) when you request a maintainer to publish libraries (Devolutions.Gateway.Utils, OpenAPI clients, etc.)

  • Add the label publish-blocker Follow-up is required before publishing libraries if a follow-up is required before publishing libraries

@irvingoujAtDevolution
Copy link
Copy Markdown
Contributor Author

Superseded by 6e80f71 on master (feat(dgw): route KDC traffic through agent tunnel), which carries the same Arc::clone fix. Closing as duplicate.

@irvingoujAtDevolution irvingouj@Devolutions (irvingoujAtDevolution) deleted the fix/agent-tunnel-ca-manager-move branch May 21, 2026 16:29
@irvingoujAtDevolution irvingouj@Devolutions (irvingoujAtDevolution) restored the fix/agent-tunnel-ca-manager-move branch May 21, 2026 17:41
irvingouj@Devolutions (irvingoujAtDevolution) added a commit that referenced this pull request May 21, 2026
`crates/agent-tunnel/src/listener.rs:152-163` moves the same
`Arc<CaManager>` into both `AgentTunnelHandle` and `AgentTunnelListener`,
which fails to compile:

    error[E0382]: use of moved value: `ca_manager`
       --> crates/agent-tunnel/src/listener.rs:162:13

Clone the Arc for the handle so the move into `Self` still type-checks.

Root cause: PR #1773 added the `ca_manager` field to
`AgentTunnelListener`; PR #1775 used `ca_manager` in the same `bind()`
body for the handle initializer. Each PR's CI was green against its own
base, but the merge of #1775 on top of #1773 produced a semantic
conflict that wasn't textually conflicting, so GitHub merged it without
re-running CI.

This is the same fix originally proposed in #1790 (closed because #1781
incidentally carried it). Reapplied here because the revert removes
that incidental fix.
irvingouj@Devolutions (irvingoujAtDevolution) added a commit that referenced this pull request May 21, 2026
`crates/agent-tunnel/src/listener.rs:152-163` moves the same
`Arc<CaManager>` into both `AgentTunnelHandle` and `AgentTunnelListener`,
which fails to compile:

    error[E0382]: use of moved value: `ca_manager`
       --> crates/agent-tunnel/src/listener.rs:162:13

Clone the Arc for the handle so the move into `Self` still type-checks.

Root cause: PR #1773 added the `ca_manager` field to
`AgentTunnelListener`; PR #1775 used `ca_manager` in the same `bind()`
body for the handle initializer. Each PR's CI was green against its own
base, but the merge of #1775 on top of #1773 produced a semantic
conflict that wasn't textually conflicting, so GitHub merged it without
re-running CI.

This is the same fix originally proposed in #1790 (closed because #1781
incidentally carried it). Reapplied here because the revert removes
that incidental fix.
irvingouj@Devolutions (irvingoujAtDevolution) added a commit that referenced this pull request May 21, 2026
`crates/agent-tunnel/src/listener.rs:152-163` moves the same
`Arc<CaManager>` into both `AgentTunnelHandle` and `AgentTunnelListener`,
which fails to compile:

    error[E0382]: use of moved value: `ca_manager`
       --> crates/agent-tunnel/src/listener.rs:162:13

Clone the Arc for the handle so the move into `Self` still type-checks.

Root cause: PR #1773 added the `ca_manager` field to
`AgentTunnelListener`; PR #1775 used `ca_manager` in the same `bind()`
body for the handle initializer. Each PR's CI was green against its own
base, but the merge of #1775 on top of #1773 produced a semantic
conflict that wasn't textually conflicting, so GitHub merged it without
re-running CI.

This is the same fix originally proposed in #1790 (closed because #1781
incidentally carried it). Reapplied here because the revert removes
that incidental fix.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants