Skip to content

Commit

Permalink
Merge pull request #6 from Henriquemcc/bug_fix
Browse files Browse the repository at this point in the history
Fixing issue in which it could not update IPv4 due to error in IPv6 or vice versa.
  • Loading branch information
Henriquemcc authored Aug 2, 2023
2 parents f940f64 + 06ac04b commit 12e62a8
Showing 1 changed file with 33 additions and 14 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -40,44 +40,63 @@ class DuckDnsSubdomain(
return duckDnsSubdomainName
}

override fun performIpUpdate(looping: Boolean) {

val networkInterfaces = if (networkInterfacesName.isNotEmpty()) {
NetworkInterface.getNetworkInterfaces().toList().filter {
networkInterfacesName.contains(it.name)
/**
* Network interfaces which were selected to this host.
*/
private val selectedNetworkInterfaces: List<NetworkInterface>
get()
{
return if (networkInterfacesName.isNotEmpty())
{
NetworkInterface.getNetworkInterfaces().toList().filter {
networkInterfacesName.contains(it.name)
}
} else
{
NetworkInterface.getNetworkInterfaces().toList()
}
} else {
NetworkInterface.getNetworkInterfaces().toList()
}

do {
if (enableIPv4) {
override fun performIpUpdate(looping: Boolean) {

val threadIpv4 = object : Thread() {
override fun run() {
var success = false
while (!success) {
success = try {
performUpdateIPv4(networkInterfaces)
performUpdateIPv4(selectedNetworkInterfaces)
true
} catch (e: Exception) {
e.printStackTrace()
Thread.sleep(Duration.ofMinutes(1).toMillis())
sleep(Duration.ofMinutes(1).toMillis())
false
}
}
}
}

if (enableIPv6) {
val threadIpv6 = object : Thread() {
override fun run() {
var success = false
while (!success) {
success = try {
performUpdateIPv6(networkInterfaces)
performUpdateIPv6(selectedNetworkInterfaces)
true
} catch (e: Exception) {
e.printStackTrace()
Thread.sleep(Duration.ofMinutes(1).toMillis())
sleep(Duration.ofMinutes(1).toMillis())
false
}
}
}
}

do {
if (enableIPv4)
threadIpv4.run()

if (enableIPv6)
threadIpv6.run()

if (looping)
sleep()
Expand Down

0 comments on commit 12e62a8

Please sign in to comment.