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

Support setting the Bonjour service TXT record. #188

Open AgentFeeble opened 11 months ago

AgentFeeble commented 11 months ago

Add a NIOTSChannelOption to configure the Bonjour service TXT record.

Motivation:

Some users may want to set or modify the advertised TXT record when publishing a Bonjour service.

Modifications:

Expose setting the Bonjour TXT record via new channel options. An option for setting an NWTXTRecord was added. This object allows for easily manipulating a TXT record, but is only available starting in MacOS 10.15, iOS 13, tvOS 13, and WatchOS 6.0, so an additional channel option has also been added to support setting the TXT record on lower OS versions.

Result:

Nothing will change for existing users, but this change allows users to be able set or modify the Bonjour service TXT record.