Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package hwinfo for openSUSE:Factory checked 
in at 2026-05-24 19:34:14
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/hwinfo (Old)
 and      /work/SRC/openSUSE:Factory/.hwinfo.new.2084 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "hwinfo"

Sun May 24 19:34:14 2026 rev:202 rq:1354270 version:25.3

Changes:
--------
--- /work/SRC/openSUSE:Factory/hwinfo/hwinfo.changes    2026-02-12 
17:25:48.535324584 +0100
+++ /work/SRC/openSUSE:Factory/.hwinfo.new.2084/hwinfo.changes  2026-05-24 
19:34:18.091957662 +0200
@@ -1,0 +2,8 @@
+Wed May 20 15:42:52 UTC 2026 - [email protected]
+
+- merge gh#openSUSE/hwinfo#178
+- fix memory leaks in pci and pppoe modules (bsc#1265908)
+- avoid NULL pointer in ADD2LOG() call
+- 25.3
+
+--------------------------------------------------------------------

Old:
----
  hwinfo-25.2.tar.xz

New:
----
  hwinfo-25.3.tar.xz

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

Other differences:
------------------
++++++ hwinfo.spec ++++++
--- /var/tmp/diff_new_pack.DwNqXQ/_old  2026-05-24 19:34:19.676022476 +0200
+++ /var/tmp/diff_new_pack.DwNqXQ/_new  2026-05-24 19:34:19.688022967 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package hwinfo
 #
-# Copyright (c) 2026 SUSE LLC
+# Copyright (c) 2026 SUSE LLC and contributors
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -17,7 +17,7 @@
 
 
 Name:           hwinfo
-Version:        25.2
+Version:        25.3
 %define lname  libhd%(echo "%version" | perl -pe 's{\\D.*}{}')
 Release:        0
 Summary:        Hardware Library

++++++ hwinfo-25.2.tar.xz -> hwinfo-25.3.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hwinfo-25.2/VERSION new/hwinfo-25.3/VERSION
--- old/hwinfo-25.2/VERSION     2026-02-04 12:44:40.000000000 +0100
+++ new/hwinfo-25.3/VERSION     2026-05-20 17:42:52.000000000 +0200
@@ -1 +1 @@
-25.2
+25.3
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hwinfo-25.2/changelog new/hwinfo-25.3/changelog
--- old/hwinfo-25.2/changelog   2026-02-04 12:44:40.000000000 +0100
+++ new/hwinfo-25.3/changelog   2026-05-20 17:42:52.000000000 +0200
@@ -1,3 +1,8 @@
+2026-05-20:    25.3
+       - merge gh#openSUSE/hwinfo#178
+       - fix memory leaks in pci and pppoe modules (bsc#1265908)
+       - avoid NULL pointer in ADD2LOG() call
+
 2026-02-04:    25.2
        - merge gh#openSUSE/hwinfo#171
        - resolve memory leaks in net, monitor and hddb
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hwinfo-25.2/src/hd/pci.c new/hwinfo-25.3/src/hd/pci.c
--- old/hwinfo-25.2/src/hd/pci.c        2026-02-04 12:44:40.000000000 +0100
+++ new/hwinfo-25.3/src/hd/pci.c        2026-05-20 17:42:52.000000000 +0200
@@ -179,7 +179,10 @@
       hd_sysfs_id(sf_dev)
     );
 
-    if(sscanf(sf_bus_e->str, "%x:%x:%x.%x", &u0, &u1, &u2, &u3) != 4) continue;
+    if(sscanf(sf_bus_e->str, "%x:%x:%x.%x", &u0, &u1, &u2, &u3) != 4) {
+      free_mem(sf_dev);
+      continue;
+    }
 
     pci = add_pci_entry(hd_data, new_mem(sizeof *pci));
 
@@ -806,6 +809,11 @@
       free_mem(s);
     }
 
+    free_mem(macio_name);
+    free_mem(macio_type);
+    free_mem(macio_compat);
+    free_mem(macio_modalias);
+
     free_mem(sf_dev);
   }
 
@@ -901,7 +909,7 @@
         str_printf(&hd->device.name, 0, "Virtual SCSI %d", hd->slot);
       }
 
-      hd->rom_id = new_str(vio_devspec ? vio_devspec + 1 : 0); /* skip leading 
'/' */
+      hd->rom_id = new_str(vio_devspec && *vio_devspec ? vio_devspec + 1 : 0); 
/* skip leading '/' */
 
       hd->sysfs_id = new_str(hd_sysfs_id(sf_dev));
       hd->sysfs_bus_id = new_str(sf_bus_e->str);
@@ -909,6 +917,10 @@
       if(s) add_str_list(&hd->drivers, s);
     }
 
+    free_mem(vio_devspec);
+    free_mem(vio_name);
+    free_mem(vio_modalias);
+
     free_mem(sf_dev);
   }
 
@@ -948,7 +960,7 @@
 void hd_read_platform(hd_data_t *hd_data)
 {
   char *s, *platform_type, *device_type, *driver;
-  str_list_t *sf_bus, *sf_bus_e, *sf_bus_canonical, *sf_eth_dev = NULL;
+  str_list_t *sf_bus, *sf_bus_e, *sf_bus_canonical;
   char *sf_dev;
   int mv643xx_eth_seen = 0;
   int is_net, is_storage, is_usb, is_xhci, is_ehci;
@@ -956,13 +968,14 @@
   char *sysfs_device_dir = "/sys/bus/platform/devices";
 
   sf_bus = read_dir(sysfs_device_dir, 'l');
-  sf_bus_canonical = read_dir_canonical(sysfs_device_dir, 'l');
 
   if(!sf_bus) {
     ADD2LOG("sysfs: no such bus: platform\n");
     return;
   }
 
+  sf_bus_canonical = read_dir_canonical(sysfs_device_dir, 'l');
+
   /* list of network interfaces */
   str_list_t *net_list = read_dir_canonical("/sys/class/net", 'l');
 
@@ -997,7 +1010,7 @@
        *   - there's no other device that is actually a subdevice of this one 
and would match the network device
        */
       is_net = 0;
-      sf_eth_dev = netdevice_list(net_list, sf_bus_canonical, sf_dev);
+      str_list_t *sf_eth_dev = netdevice_list(net_list, sf_bus_canonical, 
sf_dev);
       is_net = !!sf_eth_dev;
 
       is_storage =
@@ -1126,7 +1139,7 @@
   }
 
   free_str_list(net_list);
-
+  free_str_list(sf_bus_canonical);
   free_str_list(sf_bus);
 }
 
@@ -1284,7 +1297,9 @@
         hd->unix_dev_name = new_str(sf_eth_dev_e->str);                /* this 
is needed to correctly link to interfaces later */
 
         /* ethernet and wireless differ only by directory "wireless" so check 
for it */
-        sf_eth_wireless = hd_read_sysfs_link(hd_read_sysfs_link(sf_eth_net, 
sf_eth_dev_e->str), "wireless");
+        char *tmp_link = new_str(hd_read_sysfs_link(sf_eth_net, 
sf_eth_dev_e->str));
+        sf_eth_wireless = hd_read_sysfs_link(tmp_link, "wireless");
+        free_mem(tmp_link);
         if(sf_eth_wireless) {
           hd->sub_class.id = 0x82;     /* wireless */
           str_printf(&hd->device.name, 0, "PS3 Wireless card %d", wlan_cnt++);
@@ -2286,13 +2301,15 @@
       "  nvme ctrl: name = %s\n    path = %s\n    transport = %s\n",
       sf_class_e->str,
       hd_sysfs_id(sf_dev),
-      transport
+      transport ?: ""
     );
 
     int transport_id = 0;
-    if(!strcmp(transport, "tcp")) transport_id = 1;
-    if(!strcmp(transport, "fc")) transport_id = 2;
-    if(!strcmp(transport, "rdma")) transport_id = 3;
+    if(transport) {
+      if(!strcmp(transport, "tcp")) transport_id = 1;
+      if(!strcmp(transport, "fc")) transport_id = 2;
+      if(!strcmp(transport, "rdma")) transport_id = 3;
+    }
 
     if(transport_id) {
       ADD2LOG("  added nvmeof ctrl: sf_dev = %s\n", sf_dev);
@@ -2490,6 +2507,8 @@
     if(ok) add_str_list(&final_list, sl_c->str);
   }
 
+  free_str_list(candidates);
+
   return final_list;
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hwinfo-25.2/src/hd/pppoe.c 
new/hwinfo-25.3/src/hd/pppoe.c
--- old/hwinfo-25.2/src/hd/pppoe.c      2026-02-04 12:44:40.000000000 +0100
+++ new/hwinfo-25.3/src/hd/pppoe.c      2026-05-20 17:42:52.000000000 +0200
@@ -641,6 +641,8 @@
       );
     }
   }
+
+  free_mem(conn);
 }
 
 /** @} */

Reply via email to