passepartout-apple/Packages
Davide 60e3460966
OpenVPN: Fix potential deadlock on disconnection (#1097)
NE link writes are blocking and don't support timeout. When shutting
down a UDP session, the OCCPacket may fail to send and lock the session
in a stale state ("Active" but dead), with an infinite loop of "Failed
TUN read" messages in the log.

- First, [add cancellation handlers to NE UDP/TCP
sockets](https://github.com/passepartoutvpn/passepartoutkit-source/pull/464)
- Then, rather than writing the exit packet in the foreground and
scheduling cancellation:
  - Write the packet in a background task
  - Wait until timeout in the actor
  - Cancel the pending write and go ahead

This may still leak if NE socket cancellation doesn't work, but will
prevent deadlock.
2025-01-23 10:22:11 +01:00
..
App Present donations in reverse order 2025-01-22 23:11:28 +01:00
PassepartoutKit-Framework Depend on online package in framework manifest 2025-01-19 22:14:37 +01:00
PassepartoutKit-Source@3258223286 OpenVPN: Fix potential deadlock on disconnection (#1097) 2025-01-23 10:22:11 +01:00
PassepartoutOpenVPNOpenSSL OpenVPN: Fix potential deadlock on disconnection (#1097) 2025-01-23 10:22:11 +01:00
PassepartoutWireGuardGo Update copyright 2025-01-15 20:22:52 +01:00