From 2328bf7755050a110dcbcff462284d2755900184 Mon Sep 17 00:00:00 2001 From: RTAkland Date: Wed, 29 Oct 2025 11:12:17 +0800 Subject: [PATCH] Add unregister function --- gradle.properties | 2 +- .../kotlin/cn/rtast/nmdns/nmdns_announcer.kt | 21 ++++++++++++++++++- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/gradle.properties b/gradle.properties index 6281f2e..452be1f 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,3 +1,3 @@ kotlin.code.style=official kotlin.native.enableKlibsCrossCompilation=true -libVersion=0.1.0 \ No newline at end of file +libVersion=0.1.1 \ No newline at end of file diff --git a/src/commonMain/kotlin/cn/rtast/nmdns/nmdns_announcer.kt b/src/commonMain/kotlin/cn/rtast/nmdns/nmdns_announcer.kt index 78e01ef..7226b73 100644 --- a/src/commonMain/kotlin/cn/rtast/nmdns/nmdns_announcer.kt +++ b/src/commonMain/kotlin/cn/rtast/nmdns/nmdns_announcer.kt @@ -12,6 +12,7 @@ package cn.rtast.nmdns import kotlin.experimental.ExperimentalNativeApi import kotlin.native.CName + public data class NMDNSAnnouncer( /** * service type @@ -89,9 +90,17 @@ public data class NMDNSAnnouncer( public fun broadcast() { this.server.send(packet) } + + /** + * unregister service + */ + public fun unregister() { + this.server.destroy() + } } /** + * broadcast packet * export for c */ @CExport @@ -100,6 +109,16 @@ public fun broadcast1(server: NMDNSAnnouncer) { server.server.send(server.packet) } +/** + * unregister service + * export for c + */ +@CExport +@CName("unregister") +public fun unregister1(server: NMDNSAnnouncer) { + server.unregister() +} + /** * register service * airplay2 txt records @@ -133,7 +152,7 @@ public fun registerService( mdnsPort, txtRecords, server, - buildPacket(serviceType, "$serviceName.$serviceType", hostname, ipAddress, port, txtRecords) + buildPacket(serviceType, "$serviceName.$serviceType", hostname, ipAddress, port, txtRecords), ) }