apple / swift-nio-transport-services

Extensions for SwiftNIO to support Apple platforms as first-class citizens.
https://swiftpackageindex.com/apple/swift-nio-transport-services/main/documentation/niotransportservices
Apache License 2.0
282 stars 71 forks source link

Feature/jo/state managed udp #176

Closed Joannis closed 1 year ago

Joannis commented 1 year ago

Adds support for UDP clients and servers.

Motivation:

This change was made because UDP support was lacking on iOS. It's needed by my DNS client implementation, which I am in turn using for an iOS app I'm working on relying on SRV typed records.

Modifications:

Notes

This PR relies on #174 and #175, but it separated so that it's easy to review. This has been tested against my own libraries, but only features one test.

While I believe it to be working, I'm looking for feedback on how I can better test this implementation.

Joannis commented 1 year ago

@Lukasa updated

Joannis commented 1 year ago

Note that there were 2 small issues in the state managed channels that I've had to fix as well