commit 5fc607e9c23d44ba9341f9cb5aa23f77a0ca700a Author: MSVSphere Packaging Team Date: Tue Nov 26 17:07:23 2024 +0300 import libmbim-1.30.0-5.el10 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..70c5c23 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/libmbim-1.30.0.tar.bz2 diff --git a/.libmbim.metadata b/.libmbim.metadata new file mode 100644 index 0000000..ecf59d5 --- /dev/null +++ b/.libmbim.metadata @@ -0,0 +1 @@ +c10386242ec180d06174b52cfd69393e3b876b00 SOURCES/libmbim-1.30.0.tar.bz2 diff --git a/SOURCES/0001-mbimcli-intel-tools-parse-trace-command-value-in-a-m.patch b/SOURCES/0001-mbimcli-intel-tools-parse-trace-command-value-in-a-m.patch new file mode 100644 index 0000000..1116172 --- /dev/null +++ b/SOURCES/0001-mbimcli-intel-tools-parse-trace-command-value-in-a-m.patch @@ -0,0 +1,53 @@ +From 87e606a20037b5730aeac6971c6a9a6c2de3cbf8 Mon Sep 17 00:00:00 2001 +From: Lubomir Rintel +Date: Thu, 23 May 2024 00:03:53 +0200 +Subject: [PATCH 1/2] mbimcli-intel-tools: parse trace command & value in a + more straightforward way + +Don't conditionalize setting trace_command and trace_value on split +substrings being non-NULL. It makes a static analysis tool think they +might be used uninitialized. That can-not happen, because the substrings +can in fact never be NULL. + +Let's keep the check in form of an assert (perhaps to guard against +a possible glib bug, etc.). + +(cherry picked from commit 65d02fc647c42b7c743690c769d4bc2c6f2a69c9) +--- + src/mbimcli/mbimcli-intel-tools.c | 18 ++++++++---------- + 1 file changed, 8 insertions(+), 10 deletions(-) + +diff --git a/src/mbimcli/mbimcli-intel-tools.c b/src/mbimcli/mbimcli-intel-tools.c +index 9faab2b..8ab47c7 100644 +--- a/src/mbimcli/mbimcli-intel-tools.c ++++ b/src/mbimcli/mbimcli-intel-tools.c +@@ -203,18 +203,16 @@ mbimcli_intel_tools_run (MbimDevice *device, + return; + } + +- if (split[0]) { +- if (!mbimcli_read_trace_command_from_string (split[0], &trace_command)) { +- g_printerr ("error: couldn't parse input string, invalid trace command '%s'\n", split[0]); +- return; +- } ++ g_return_if_fail (split[0] && split[1]); ++ ++ if (!mbimcli_read_trace_command_from_string (split[0], &trace_command)) { ++ g_printerr ("error: couldn't parse input string, invalid trace command '%s'\n", split[0]); ++ return; + } + +- if (split[1]) { +- if (!mbimcli_read_uint_from_string (split[1], &trace_value)) { +- g_printerr ("error: couldn't parse input string, invalid trace value '%s'\n", split[1]); +- return; +- } ++ if (!mbimcli_read_uint_from_string (split[1], &trace_value)) { ++ g_printerr ("error: couldn't parse input string, invalid trace value '%s'\n", split[1]); ++ return; + } + + g_debug ("Asynchronously setting trace info..."); +-- +2.45.2 + diff --git a/SOURCES/0002-mbimcli-intel-thermal-rf-fix-a-potential-mem-leak-in.patch b/SOURCES/0002-mbimcli-intel-thermal-rf-fix-a-potential-mem-leak-in.patch new file mode 100644 index 0000000..e3c0f4a --- /dev/null +++ b/SOURCES/0002-mbimcli-intel-thermal-rf-fix-a-potential-mem-leak-in.patch @@ -0,0 +1,45 @@ +From 63be2092ffb232fc646d4237e52fd1f0cf99e07f Mon Sep 17 00:00:00 2001 +From: Lubomir Rintel +Date: Wed, 22 May 2024 17:49:17 +0200 +Subject: [PATCH 2/2] mbimcli-intel-thermal-rf: fix a potential mem leak in + query_rfim_ready() + +These were autofree'd on function return, but can actually be assigned +new allocations on each inner loop interation. Move them inside the +loop. + +(cherry picked from commit 9c42e9d1d6d124907dc17e77a97d2a3023552f1e) +--- + src/mbimcli/mbimcli-intel-thermal-rf.c | 9 +++++---- + 1 file changed, 5 insertions(+), 4 deletions(-) + +diff --git a/src/mbimcli/mbimcli-intel-thermal-rf.c b/src/mbimcli/mbimcli-intel-thermal-rf.c +index 04f477e..901e7aa 100644 +--- a/src/mbimcli/mbimcli-intel-thermal-rf.c ++++ b/src/mbimcli/mbimcli-intel-thermal-rf.c +@@ -125,10 +125,6 @@ query_rfim_ready (MbimDevice *device, + g_autoptr(GError) error = NULL; + guint32 element_count; + MbimIntelRfimFrequencyValueArray *rfim_frequency; +- g_autofree gchar *rssi_str = NULL; +- g_autofree gchar *sinr_str = NULL; +- g_autofree gchar *rsrq_str = NULL; +- g_autofree gchar *rsrp_str = NULL; + + response = mbim_device_command_finish (device, res, &error); + if (!response || !mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error)) { +@@ -151,6 +147,11 @@ query_rfim_ready (MbimDevice *device, + element_count); + + for (i = 0; i < element_count; i++) { ++ g_autofree gchar *rssi_str = NULL; ++ g_autofree gchar *sinr_str = NULL; ++ g_autofree gchar *rsrq_str = NULL; ++ g_autofree gchar *rsrp_str = NULL; ++ + if (rfim_frequency[i]->rssi <= 31) + rssi_str = g_strdup_printf ("%d dBm", -113 + (2 * rfim_frequency[i]->rssi)); + else +-- +2.45.2 + diff --git a/SPECS/libmbim.spec b/SPECS/libmbim.spec new file mode 100644 index 0000000..42e2908 --- /dev/null +++ b/SPECS/libmbim.spec @@ -0,0 +1,256 @@ +Name: libmbim +Version: 1.30.0 +Release: 5%{?dist} +Summary: Support library for the Mobile Broadband Interface Model protocol +License: LGPL-2.1-or-later +URL: https://gitlab.freedesktop.org/mobile-broadband/libmbim/ +Source: https://gitlab.freedesktop.org/mobile-broadband/libmbim/-/archive/%{version}/%{name}-%{version}.tar.bz2 + +# Both of these are picked from upstream mbim-1-30 branch post 1.30.0. +# Will be dropped when we rebase to a later version. +Patch0: 0001-mbimcli-intel-tools-parse-trace-command-value-in-a-m.patch +Patch1: 0002-mbimcli-intel-thermal-rf-fix-a-potential-mem-leak-in.patch + +BuildRequires: meson >= 0.53 +BuildRequires: gcc +BuildRequires: glib2-devel >= 2.56 +BuildRequires: gobject-introspection-devel +BuildRequires: gtk-doc +BuildRequires: pkgconfig +BuildRequires: python3 +BuildRequires: help2man + + +%description +This package contains the libraries that make it easier to use MBIM +functionality from applications that use glib. + + +%package devel +Summary: Header files for adding MBIM support to applications that use glib +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: glib2-devel%{?_isa} +Requires: pkgconfig + +%description devel +This package contains the header and pkg-config files for developing +applications using MBIM functionality from applications that use glib. + +%package utils +Summary: Utilities to use the MBIM protocol from the command line +Requires: %{name}%{?_isa} = %{version}-%{release} +License: GPL-2.0-or-later + +%description utils +This package contains the utilities that make it easier to use MBIM +functionality from the command line. + + +%prep +%autosetup -p1 + + +%build +# Let's avoid BuildRequiring bash-completion because it changes behavior +# of shell, at least until the .pc file gets into the -devel subpackage. +# We'll just install the bash-completion file ourselves. +%meson -Dgtk_doc=true -Dbash_completion=false +%meson_build + + +%install +%meson_install +find %{buildroot}%{_datadir}/gtk-doc |xargs touch --reference meson.build +mkdir -p %{buildroot}%{_datadir}/bash-completion/completions +cp -a src/mbimcli/mbimcli %{buildroot}%{_datadir}/bash-completion/completions/ + + +%check +%meson_test + + +%ldconfig_scriptlets + + +%files +%license LICENSES/LGPL-2.1-or-later.txt +%doc NEWS AUTHORS README.md +%{_libdir}/libmbim-glib.so.4* +%{_libdir}/girepository-1.0/Mbim-1.0.typelib + + +%files devel +%{_includedir}/libmbim-glib/ +%{_libdir}/pkgconfig/mbim-glib.pc +%{_libdir}/libmbim-glib.so +%{_datadir}/gtk-doc/html/libmbim-glib/ +%{_datadir}/gir-1.0/Mbim-1.0.gir + + +%files utils +%license LICENSES/GPL-2.0-or-later.txt +%{_bindir}/mbimcli +%{_bindir}/mbim-network +%{_datadir}/bash-completion +%{_libexecdir}/mbim-proxy +%{_mandir}/man1/mbim* + + +%changelog +* Tue Jun 25 2024 Lubomir Rintel - 1.30.0-5 +- Add patches for a pair of bugs that make static analysis unhappy (RHEL-38475) + +* Mon Jun 24 2024 Troy Dawson - 1.30.0-4 +- Bump release for June 2024 mass rebuild + +* Thu Jan 25 2024 Fedora Release Engineering - 1.30.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Sun Jan 21 2024 Fedora Release Engineering - 1.30.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Tue Jan 09 2024 Dennis Gilmore - 1.30.0-1 +- update to 1.30.0 + +* Thu Nov 2 2023 Íñigo Huguet - 1.28.4-3 +- migrate to SPDX license + +* Thu Jul 20 2023 Fedora Release Engineering - 1.28.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Fri Mar 31 2023 Lubomir Rintel - 1.28.4-1 +- Update to 1.28.4 + +* Thu Jan 19 2023 Fedora Release Engineering - 1.28.2-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Sun Jan 08 2023 Lubomir Rintel - 1.28.2-2 +- Fix location of completions file +- Enable support for Dell DW5931e & DW5823e WWAN 5G + +* Tue Nov 22 2022 Lubomir Rintel - 1.28.2-1 +- Update to 1.28.2 + +* Thu Jul 21 2022 Fedora Release Engineering - 1.26.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Sat May 14 2022 Peter Robinson - 1.26.4-1 +- Update to 1.26.4 + +* Sat Feb 12 2022 Peter Robinson - 1.26.2-1 +- Update to 1.26.2 + +* Thu Jan 20 2022 Fedora Release Engineering - 1.26.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Wed Aug 04 2021 Peter Robinson - 1.26.0-1 +- Update to 1.26.0 + +* Thu Jul 22 2021 Fedora Release Engineering - 1.24.8-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Sat Jun 05 2021 Peter Robinson - 1.24.8-1 +- Update to 1.24.8 + +* Tue Feb 23 2021 Peter Robinson - 1.24.6-1 +- Update tp 1.24.6 + +* Tue Jan 26 2021 Fedora Release Engineering - 1.24.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Tue Nov 3 2020 Peter Robinson - 1.24.4-1 +- Update to 1.24.4 + +* Mon Jul 27 2020 Peter Robinson - 1.24.2-1 +- Update to 1.24.2 + +* Thu Mar 5 2020 Peter Robinson 1.22.0-1 +- Update to 1.22.0 release +- Fix shipped license, use %%license +- Spec cleanups + +* Wed Jan 29 2020 Fedora Release Engineering - 1.20.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Fri Nov 29 2019 Lubomir Rintel - 1.20.2 +- Update to 1.20.2 release + +* Mon Sep 23 2019 Lubomir Rintel - 1.20.0 +- Update to 1.20.0 release + +* Thu Jul 25 2019 Fedora Release Engineering - 1.18.2-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Thu May 23 2019 Lubomir Rintel - 1.18.2-2 +- Regenerate manuals that are broken in dist + +* Mon May 06 2019 Lubomir Rintel - 1.18.2-1 +- Update to 1.18.2 release + +* Fri Feb 01 2019 Fedora Release Engineering - 1.18.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Tue Jan 15 2019 Lubomir Rintel - 1.18.0-1 +- Update to 1.18.0 release + +* Fri Jul 13 2018 Fedora Release Engineering - 1.16.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Thu Mar 15 2018 Iryna Shcherbina - 1.16.0-3 +- Update Python 2 dependency declarations to new packaging standards + (See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3) + +* Wed Feb 07 2018 Fedora Release Engineering - 1.16.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Mon Jan 22 2018 Lubomir Rintel - 1.16.0-1 +- Update to 1.16.0 release + +* Tue Aug 29 2017 Lubomir Rintel - 1.14.2-1 +- Update to 1.14.2 release + +* Thu Aug 03 2017 Fedora Release Engineering - 1.14.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 1.14.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Fri Feb 10 2017 Fedora Release Engineering - 1.14.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Fri Jul 08 2016 Lubomir Rintel - 1.14.0-1 +- Update to 1.14.0 release + +* Mon Mar 21 2016 Lubomir Rintel - 1.12.4-1 +- Update to 1.12.2 release + +* Thu Feb 04 2016 Fedora Release Engineering - 1.12.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Tue Aug 18 2015 Lubomir Rintel - 1.12.2-1 +- Update to 1.12.2 release + +* Wed Jun 17 2015 Fedora Release Engineering - 1.12.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Thu Jan 15 2015 Dan Williams - 1.12.0-1 +- Update to 1.12.0 release + +* Sun Aug 17 2014 Fedora Release Engineering - 1.10.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Tue Aug 5 2014 Dan Williams - 1.10.0-1 +- Update to 1.10.0 release + +* Sat Jun 07 2014 Fedora Release Engineering - 1.8.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Sat Mar 8 2014 Dan Williams - 1.8.0-1 +- Update to 1.8.0 release + +* Sat Feb 1 2014 poma - 1.6.0-1 +- Update to 1.6.0 release + +* Thu Aug 15 2013 Dan Williams - 1.5.0-1.20130815git +- Initial Fedora release +