Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package netavark for openSUSE:Factory 
checked in at 2025-06-10 08:56:46
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/netavark (Old)
 and      /work/SRC/openSUSE:Factory/.netavark.new.19631 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "netavark"

Tue Jun 10 08:56:46 2025 rev:20 rq:1284000 version:1.15.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/netavark/netavark.changes        2025-05-26 
18:31:38.009587837 +0200
+++ /work/SRC/openSUSE:Factory/.netavark.new.19631/netavark.changes     
2025-06-10 08:56:59.150830962 +0200
@@ -1,0 +2,12 @@
+Mon Jun 09 07:23:27 UTC 2025 - Madhankumar Chellamuthu 
<madhankumar.chellamu...@suse.com>
+
+- Update to version 1.15.2:
+  * release v1.15.2
+  * release notes for v1.15.2
+  * dhcp_proxy: set timeout_sender only if required
+  * cargo: bump mozim to 0.2.6
+  * release v1.15.1
+  * release notes for v1.15.1
+  * Revert "remove search domain from response"
+
+-------------------------------------------------------------------

Old:
----
  netavark-1.15.0.tar.gz

New:
----
  netavark-1.15.2.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ netavark.spec ++++++
--- /var/tmp/diff_new_pack.DIPSwz/_old  2025-06-10 08:57:00.490886234 +0200
+++ /var/tmp/diff_new_pack.DIPSwz/_new  2025-06-10 08:57:00.490886234 +0200
@@ -19,7 +19,7 @@
 %define major_minor %((v=%{version}; echo ${v%.*}))
 
 Name:           netavark
-Version:        1.15.0
+Version:        1.15.2
 Release:        0
 Summary:        Container network stack
 License:        Apache-2.0

++++++ _service ++++++
--- /var/tmp/diff_new_pack.DIPSwz/_old  2025-06-10 08:57:00.522887554 +0200
+++ /var/tmp/diff_new_pack.DIPSwz/_new  2025-06-10 08:57:00.526887719 +0200
@@ -3,7 +3,7 @@
     <param name="url">https://github.com/containers/netavark.git</param>
     <param name="versionformat">@PARENT_TAG@</param>
     <param name="scm">git</param>
-    <param name="revision">v1.15.0</param>
+    <param name="revision">v1.15.2</param>
     <param name="match-tag">*</param>
     <param name="versionrewrite-pattern">v(\d+\.\d+\.\d+)</param>
     <param name="versionrewrite-replacement">\1</param>

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.DIPSwz/_old  2025-06-10 08:57:00.542888378 +0200
+++ /var/tmp/diff_new_pack.DIPSwz/_new  2025-06-10 08:57:00.546888543 +0200
@@ -1,6 +1,6 @@
 <servicedata>
 <service name="tar_scm">
                 <param 
name="url">https://github.com/containers/netavark.git</param>
-              <param 
name="changesrevision">aadd9fe28619d61201191006994a8ff138b73569</param></service></servicedata>
+              <param 
name="changesrevision">01b002ffea76934739836bddabe223908f48eb76</param></service></servicedata>
 (No newline at EOF)
 

++++++ netavark-1.15.0.tar.gz -> netavark-1.15.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/netavark-1.15.0/Cargo.lock 
new/netavark-1.15.2/Cargo.lock
--- old/netavark-1.15.0/Cargo.lock      2025-05-13 16:36:16.000000000 +0200
+++ new/netavark-1.15.2/Cargo.lock      2025-06-04 12:24:28.000000000 +0200
@@ -487,9 +487,9 @@
 
 [[package]]
 name = "dhcproto"
-version = "0.9.0"
+version = "0.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "dcee045385d5f7819022821f41209b9945d17550760b0b2349aaef4ecfa14bc3"
+checksum = "f6794294f2c4665aae452e950c2803a1e487c5672dc8448f0bfa3f52ff67e270"
 dependencies = [
  "dhcproto-macros",
  "hex",
@@ -1221,7 +1221,7 @@
 checksum = "43b627935a2f5d654613bea2bcd677cc760b03ecf224ced0f1970c0d174813b9"
 dependencies = [
  "lazy_static",
- "nix 0.29.0",
+ "nix",
  "regex",
 ]
 
@@ -1371,9 +1371,9 @@
 
 [[package]]
 name = "mozim"
-version = "0.2.5"
+version = "0.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "610e34113d007c3588631f879854c14fbf291f3ab7853b833220f7cbf6ece8ad"
+checksum = "8232b853f83a0c76331d934627aeec172e9d5f2c82d1f9e7f86caa0df72cb304"
 dependencies = [
  "byteorder",
  "dhcproto",
@@ -1382,7 +1382,7 @@
  "libc",
  "log",
  "nispor",
- "nix 0.27.1",
+ "nix",
  "rand 0.8.5",
 ]
 
@@ -1414,7 +1414,7 @@
 
 [[package]]
 name = "netavark"
-version = "1.15.0"
+version = "1.15.2"
 dependencies = [
  "anyhow",
  "chrono",
@@ -1435,7 +1435,7 @@
  "netlink-sys",
  "nftables",
  "nispor",
- "nix 0.29.0",
+ "nix",
  "once_cell",
  "prost",
  "rand 0.9.1",
@@ -1564,17 +1564,6 @@
 
 [[package]]
 name = "nix"
-version = "0.27.1"
-source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "2eb04e9c688eff1c89d72b407f168cf79bb9e867a9d3323ed6c01519eb9cc053"
-dependencies = [
- "bitflags",
- "cfg-if",
- "libc",
-]
-
-[[package]]
-name = "nix"
 version = "0.29.0"
 source = "registry+https://github.com/rust-lang/crates.io-index";
 checksum = "71e2746dc3a24dd78b3cfcb7be93368c6de9963d30f43a6a73998a9cf4b17b46"
@@ -1926,7 +1915,7 @@
  "netlink-packet-utils",
  "netlink-proto",
  "netlink-sys",
- "nix 0.29.0",
+ "nix",
  "thiserror 1.0.69",
  "tokio",
 ]
@@ -2927,7 +2916,7 @@
  "futures-core",
  "futures-lite",
  "hex",
- "nix 0.29.0",
+ "nix",
  "ordered-stream",
  "serde",
  "serde_repr",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/netavark-1.15.0/Cargo.toml 
new/netavark-1.15.2/Cargo.toml
--- old/netavark-1.15.0/Cargo.toml      2025-05-13 16:36:16.000000000 +0200
+++ new/netavark-1.15.2/Cargo.toml      2025-06-04 12:24:28.000000000 +0200
@@ -1,6 +1,6 @@
 [package]
 name = "netavark"
-version = "1.15.0"
+version = "1.15.2"
 edition = "2021"
 authors = ["github.com/containers"]
 license = "Apache-2.0"
@@ -49,7 +49,7 @@
 tokio = { version = "1.45.0", features = ["rt", "rt-multi-thread", "signal", 
"fs"] }
 tokio-stream = { version = "0.1.17", features = ["net"] }
 tonic = "0.13.1"
-mozim = "0.2.5"
+mozim = "0.2.6"
 prost = "0.13.5"
 futures-channel = "0.3.31"
 futures-core = "0.3.31"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/netavark-1.15.0/RELEASE_NOTES.md 
new/netavark-1.15.2/RELEASE_NOTES.md
--- old/netavark-1.15.0/RELEASE_NOTES.md        2025-05-13 16:36:16.000000000 
+0200
+++ new/netavark-1.15.2/RELEASE_NOTES.md        2025-06-04 12:24:28.000000000 
+0200
@@ -1,5 +1,14 @@
 # Release Notes
 
+## v1.15.2
+
+* Fixed a bug that caused a thread leak in the dhcp-proxy for each started 
container. ([#811](https://github.com/containers/netavark/issues/811))
+* Fixed a bug which printed bogus errors when the dhcp-proxy was run with an 
activity timeout of 0. 
([#1262](https://github.com/containers/netavark/issues/1262))
+
+## v1.15.1
+
+* Fixed a regression that caused container name lookups to get the wrong ip 
address when the host's search domain responded for the same name. 
([containers/podman#26198](https://github.com/containers/podman/issues/26198))
+
 ## v1.15.0
 
 * Fixed an issue where invalid dns names that included a space would cause 
aardvark-dns to crash. Instead such names are now ignored and generate a 
warning. ([#1019](https://github.com/containers/netavark/issues/1019))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/netavark-1.15.0/src/commands/dhcp_proxy.rs 
new/netavark-1.15.2/src/commands/dhcp_proxy.rs
--- old/netavark-1.15.0/src/commands/dhcp_proxy.rs      2025-05-13 
16:36:16.000000000 +0200
+++ new/netavark-1.15.2/src/commands/dhcp_proxy.rs      2025-06-04 
12:24:28.000000000 +0200
@@ -56,7 +56,7 @@
     // the timeout for the dora operation
     dora_timeout: u32,
     // channel send-side for resetting the inactivity timeout
-    timeout_sender: Arc<Mutex<Sender<i32>>>,
+    timeout_sender: Option<Arc<Mutex<Sender<i32>>>>,
     // All dhcp poll will be spawned on a new task, keep track of it so
     // we can remove it on teardown. The key is the container mac.
     task_map: Arc<Mutex<HashMap<String, AbortHandle>>>,
@@ -64,17 +64,19 @@
 
 impl<W: Write + Clear> NetavarkProxyService<W> {
     fn reset_inactivity_timeout(&self) {
-        let sender = self.timeout_sender.clone();
-        let locked_sender = match sender.lock() {
-            Ok(v) => v,
-            Err(e) => {
-                log::error!("{}", e);
-                return;
+        if let Some(sender) = &self.timeout_sender {
+            let sender_clone = sender.clone();
+            let locked_sender = match sender_clone.lock() {
+                Ok(v) => v,
+                Err(e) => {
+                    log::error!("{}", e);
+                    return;
+                }
+            };
+            match locked_sender.try_send(1) {
+                Ok(..) => {}
+                Err(e) => log::error!("{}", e),
             }
-        };
-        match locked_sender.try_send(1) {
-            Ok(..) => {}
-            Err(e) => log::error!("{}", e),
         }
     }
 }
@@ -285,11 +287,18 @@
 
     // Create send and receive channels for activity timeout. If anything is
     // sent by the tx side, the inactivity timeout is reset
-    let (activity_timeout_tx, activity_timeout_rx) = mpsc::channel(5);
+    let (activity_timeout_tx, activity_timeout_rx) = if 
inactivity_timeout.as_secs() > 0 {
+        let (tx, rx) = mpsc::channel(5);
+        (Some(tx), Some(rx))
+    } else {
+        (None, None)
+    };
     let netavark_proxy_service = NetavarkProxyService {
         cache: cache.clone(),
         dora_timeout,
-        timeout_sender: Arc::new(Mutex::new(activity_timeout_tx.clone())),
+        timeout_sender: activity_timeout_tx
+            .clone()
+            .map(|tx| Arc::new(Mutex::new(tx))),
         task_map: Arc::new(Mutex::new(HashMap::new())),
     };
 
@@ -328,29 +337,31 @@
 ///
 /// ```
 async fn handle_wakeup<W: Write + Clear>(
-    mut rx: mpsc::Receiver<i32>,
+    rx: Option<mpsc::Receiver<i32>>,
     timeout_duration: Duration,
     current_cache: Arc<Mutex<LeaseCache<W>>>,
 ) {
-    loop {
-        match timeout(timeout_duration, rx.recv()).await {
-            Ok(Some(_)) => {
-                debug!("timeout timer reset")
-            }
-            Ok(None) => {
-                println!("timeout channel closed");
-                break;
-            }
-            Err(_) => {
-                // only 'exit' if the timeout is met AND there are no leases
-                // if we do not exit, the activity_timeout is reset
-                if is_catch_empty(current_cache.clone()) {
-                    println!(
-                        "timeout met: exiting after {} secs of inactivity",
-                        timeout_duration.as_secs()
-                    );
+    if let Some(mut rx) = rx {
+        loop {
+            match timeout(timeout_duration, rx.recv()).await {
+                Ok(Some(_)) => {
+                    debug!("timeout timer reset")
+                }
+                Ok(None) => {
+                    println!("timeout channel closed");
                     break;
                 }
+                Err(_) => {
+                    // only 'exit' if the timeout is met AND there are no 
leases
+                    // if we do not exit, the activity_timeout is reset
+                    if is_catch_empty(current_cache.clone()) {
+                        println!(
+                            "timeout met: exiting after {} secs of inactivity",
+                            timeout_duration.as_secs()
+                        );
+                        break;
+                    }
+                }
             }
         }
     }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/netavark-1.15.0/src/network/bridge.rs 
new/netavark-1.15.2/src/network/bridge.rs
--- old/netavark-1.15.0/src/network/bridge.rs   2025-05-13 16:36:16.000000000 
+0200
+++ new/netavark-1.15.2/src/network/bridge.rs   2025-06-04 12:24:28.000000000 
+0200
@@ -17,7 +17,7 @@
         iptables::MAX_HASH_SIZE,
         state::{remove_fw_config, write_fw_config},
     },
-    network::{core_utils::disable_ipv6_autoconf, types},
+    network::{constants, core_utils::disable_ipv6_autoconf, types},
 };
 
 use super::{
@@ -227,6 +227,11 @@
             let _ = response
                 .dns_server_ips
                 .insert(data.ipam.nameservers.clone());
+            // Note: this is being added so podman setup is backward 
compatible with the design
+            // which we had with dnsname/dnsmasq.
+            let _ = response
+                .dns_search_domains
+                
.insert(vec![constants::PODMAN_DEFAULT_SEARCH_DOMAIN.to_string()]);
 
             let mut ipv4 = Vec::new();
             let mut ipv6 = Vec::new();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/netavark-1.15.0/test/100-bridge-iptables.bats 
new/netavark-1.15.2/test/100-bridge-iptables.bats
--- old/netavark-1.15.0/test/100-bridge-iptables.bats   2025-05-13 
16:36:16.000000000 +0200
+++ new/netavark-1.15.2/test/100-bridge-iptables.bats   2025-06-04 
12:24:28.000000000 +0200
@@ -316,8 +316,6 @@
 
     NETAVARK_DNS_PORT="$dns_port" run_netavark --file 
${TESTSDIR}/testfiles/dualstack-bridge.json \
         setup $(get_container_netns_path)
-    config="$output"
-    assert_json "$config" ".podman1.dns_search_domains" == "[]" "empty search 
domains"
 
     # check iptables
     run_in_host_netns iptables -t nat -S NETAVARK-HOSTPORT-DNAT
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/netavark-1.15.0/test/200-bridge-firewalld.bats 
new/netavark-1.15.2/test/200-bridge-firewalld.bats
--- old/netavark-1.15.0/test/200-bridge-firewalld.bats  2025-05-13 
16:36:16.000000000 +0200
+++ new/netavark-1.15.2/test/200-bridge-firewalld.bats  2025-06-04 
12:24:28.000000000 +0200
@@ -162,8 +162,6 @@
     NETAVARK_DNS_PORT="$dns_port" \
         run_netavark --file ${TESTSDIR}/testfiles/dualstack-bridge.json \
         setup $(get_container_netns_path)
-    config="$output"
-    assert_json "$config" ".podman1.dns_search_domains" == "[]" "empty search 
domains"
 
     # check iptables
     # firewall-cmd --list-rich-rules does not guarantee order, use sort
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/netavark-1.15.0/test/250-bridge-nftables.bats 
new/netavark-1.15.2/test/250-bridge-nftables.bats
--- old/netavark-1.15.0/test/250-bridge-nftables.bats   2025-05-13 
16:36:16.000000000 +0200
+++ new/netavark-1.15.2/test/250-bridge-nftables.bats   2025-06-04 
12:24:28.000000000 +0200
@@ -314,8 +314,6 @@
 
     NETAVARK_DNS_PORT="$dns_port" run_netavark --file 
${TESTSDIR}/testfiles/dualstack-bridge.json \
         setup $(get_container_netns_path)
-    config="$output"
-    assert_json "$config" ".podman1.dns_search_domains" == "[]" "empty search 
domains"
 
     # check nftables
     run_in_host_netns nft list chain inet netavark NETAVARK-HOSTPORT-DNAT

++++++ netavark.obsinfo ++++++
--- /var/tmp/diff_new_pack.DIPSwz/_old  2025-06-10 08:57:00.690894482 +0200
+++ /var/tmp/diff_new_pack.DIPSwz/_new  2025-06-10 08:57:00.690894482 +0200
@@ -1,5 +1,5 @@
 name: netavark
-version: 1.15.0
-mtime: 1747146976
-commit: aadd9fe28619d61201191006994a8ff138b73569
+version: 1.15.2
+mtime: 1749032668
+commit: 01b002ffea76934739836bddabe223908f48eb76
 

++++++ vendor.tar.gz ++++++
/work/SRC/openSUSE:Factory/netavark/vendor.tar.gz 
/work/SRC/openSUSE:Factory/.netavark.new.19631/vendor.tar.gz differ: char 17, 
line 1

Reply via email to