diff --git a/.gitignore b/.gitignore index 06183e6..18dbbc6 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,11 @@ OpenIPMI-2.0.18.tar.gz /OpenIPMI-2.0.23.tar.gz /OpenIPMI-2.0.24.tar.gz /OpenIPMI-2.0.25.tar.gz +/OpenIPMI-2.0.27.tar.gz +/OpenIPMI-2.0.28.tar.gz +/OpenIPMI-2.0.29.tar.gz +/OpenIPMI-2.0.31.tar.gz +/OpenIPMI-2.0.32.tar.gz +/OpenIPMI-2.0.34.tar.gz +/OpenIPMI-2.0.35.tar.gz +/OpenIPMI-2.0.36.tar.gz diff --git a/0001-Apply-OpenIPMI-2.0.18-pthread-pkgconfig.patch.patch b/0001-Apply-OpenIPMI-2.0.18-pthread-pkgconfig.patch.patch deleted file mode 100644 index 5c92eb9..0000000 --- a/0001-Apply-OpenIPMI-2.0.18-pthread-pkgconfig.patch.patch +++ /dev/null @@ -1,26 +0,0 @@ -From d058bc9be5ef521882e3226a27e81cca8aded5ce Mon Sep 17 00:00:00 2001 -From: Boris Ranto -Date: Thu, 2 Jun 2016 12:46:39 +0200 -Subject: [PATCH] Apply 'OpenIPMI-2.0.18-pthread-pkgconfig.patch' - -Signed-off-by: Boris Ranto ---- - OpenIPMIpthread.pc.in | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/OpenIPMIpthread.pc.in b/OpenIPMIpthread.pc.in -index 59b52e5..fffa0d0 100644 ---- a/OpenIPMIpthread.pc.in -+++ b/OpenIPMIpthread.pc.in -@@ -6,6 +6,6 @@ includedir=@includedir@ - Name: OpenIPMIpthread - Description: Pthread OS handler for OpenIPMI - Version: @VERSION@ --Requires: OpenIPMI pthread -+Requires: OpenIPMI - Libs: -L${libdir} -lOpenIPMIutils -lOpenIPMIpthread --Cflags: -I${includedir} -+Cflags: -I${includedir} -pthread --- -2.7.4 - diff --git a/0002-nobundle.patch b/0002-nobundle.patch deleted file mode 100644 index 2515e0e..0000000 --- a/0002-nobundle.patch +++ /dev/null @@ -1,59 +0,0 @@ ---- a/Makefile.am -+++ b/Makefile.am -@@ -1,10 +1,10 @@ - RPM = rpmbuild - RPMFLAGS = -ta - --SUBDIRS = include utils lib unix $(GLIB_DIR) $(TCL_DIR) libedit cmdlang \ -+SUBDIRS = include utils lib unix $(GLIB_DIR) $(TCL_DIR) cmdlang \ - ui lanserv sample doc man $(SWIG_DIR) - --DIST_SUBDIRS = include utils lib unix glib tcl libedit cmdlang \ -+DIST_SUBDIRS = include utils lib unix glib tcl cmdlang \ - ui lanserv sample doc man swig - - EXTRA_DIST = FAQ TODO README.Force README.MotorolaMXP OpenIPMI.spec.in \ ---- a/cmdlang/Makefile.am -+++ b/cmdlang/Makefile.am -@@ -4,7 +4,8 @@ LD_VERSION = 0:5:0 - - AM_CFLAGS = -Wall -Wsign-compare -I$(top_builddir)/include \ - -I$(top_srcdir)/include \ -- -I$(top_srcdir)/libedit -DIPMI_CHECK_LOCKS $(GLIB_CFLAGS) \ -+ -DIPMI_CHECK_LOCKS $(GLIB_CFLAGS) \ -+ $(EDIT_CFLAGS) \ - $(TCL_CFLAGS) - - lib_LTLIBRARIES = libOpenIPMIcmdlang.la -@@ -25,7 +26,7 @@ openipmish_LDADD = libOpenIPMIcmdlang.la \ - $(top_builddir)/utils/libOpenIPMIutils.la \ - $(top_builddir)/lib/libOpenIPMI.la \ - $(top_builddir)/unix/libOpenIPMIposix.la \ -- $(top_builddir)/libedit/libedit.a \ -+ $(EDIT_LIBS) \ - $(TERM_LIBS) \ - $(SNMPLIBS) $(GLIB_LIB) $(GLIB_LIBS) \ - $(TCL_LIB) $(TCL_LIBS) \ ---- a/configure.ac -+++ b/configure.ac -@@ -926,7 +926,6 @@ AC_OUTPUT(Makefile - swig/perl/Makefile - swig/python/Makefile - swig/python/openipmigui/Makefile -- libedit/Makefile - cmdlang/Makefile - include/Makefile - include/OpenIPMI/Makefile ---- OpenIPMI-2.0.24/sample/Makefile.am~ 2017-07-27 23:01:19.000000000 +0100 -+++ OpenIPMI-2.0.24/sample/Makefile.am 2017-12-19 07:52:45.368954855 +0000 -@@ -73,7 +73,8 @@ - ipmi_serial_bmc_emu_SOURCES = ipmi_serial_bmc_emu.c - ipmi_serial_bmc_emu_LDADD = $(top_builddir)/libedit/libedit.a $(TERM_LIBS) \ - $(SOCKETLIB) --ipmi_serial_bmc_emu_CFLAGS = -I $(top_srcdir)/libedit -+ipmi_serial_bmc_emu_LDADD = $(EDIT_LIBS) -+ipmi_serial_bmc_emu_CFLAGS = $(EDIT_CFLAGS) - - EXTRA_DIST = example_oem.c - - diff --git a/0003-Python3.patch b/0003-Python3.patch deleted file mode 100644 index 702d976..0000000 --- a/0003-Python3.patch +++ /dev/null @@ -1,149 +0,0 @@ -diff -urNp a/configure b/configure ---- a/configure 2018-04-17 08:47:58.528284066 +0200 -+++ b/configure 2018-04-17 10:00:24.091372864 +0200 -@@ -13406,7 +13406,7 @@ if test "x$pythoncflags" = "x" -o "x$pyt - pythonprog= - if test "x$trypython" != "xno"; then - # Extract the first word of "python", so it can be a program name with args. --set dummy python; ac_word=$2 -+set dummy python3; ac_word=$2 - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 - $as_echo_n "checking for $ac_word... " >&6; } - if ${ac_cv_path_pythonprog+:} false; then : -@@ -13500,12 +13500,12 @@ if test "x$pythonprog" != "x"; then - if test "x$pythonusepthreads" = "x"; then - cat - <<_ACEOF >conftest.py - try: -- import thread -+ import threading - print('yes') - except: - print('no') - _ACEOF -- pythonusepthreads=`python conftest.py` -+ pythonusepthreads=`python3 conftest.py` - rm -f conftest.py - fi - echo "checking for python threads... $pythonusepthreads" -@@ -13537,7 +13537,7 @@ try: - except: - print('no') - _ACEOF -- tkinter=`python conftest.py` -+ tkinter=`python3 conftest.py` - rm -f conftest.py - fi - fi -diff -urNp a/configure.ac b/configure.ac ---- a/configure.ac 2018-04-17 08:47:58.529284062 +0200 -+++ b/configure.ac 2018-04-17 10:01:02.115576922 +0200 -@@ -526,7 +526,7 @@ AC_SUBST(PERL_POSIX_SO) - if test "x$pythoncflags" = "x" -o "x$pythoninstalldir" = "x"; then - pythonprog= - if test "x$trypython" != "xno"; then -- AC_PATH_PROG(pythonprog, python) -+ AC_PATH_PROG(pythonprog, python3) - fi - if test "x$pythonprog" != "x"; then - # Now find a proper installation location. -@@ -578,12 +578,12 @@ if test "x$pythonprog" != "x"; then - if test "x$pythonusepthreads" = "x"; then - cat - <<_ACEOF >conftest.py - try: -- import thread -+ import threading - print('yes') - except: - print('no') - _ACEOF -- pythonusepthreads=`python conftest.py` -+ pythonusepthreads=`python3 conftest.py` - rm -f conftest.py - fi - echo "checking for python threads... $pythonusepthreads" -@@ -615,7 +615,7 @@ try: - except: - print('no') - _ACEOF -- tkinter=`python conftest.py` -+ tkinter=`python3 conftest.py` - rm -f conftest.py - fi - fi -diff -urNp a/swig/python/Makefile.am b/swig/python/Makefile.am ---- a/swig/python/Makefile.am 2018-04-17 08:47:58.547283986 +0200 -+++ b/swig/python/Makefile.am 2018-04-17 14:43:01.703963727 +0200 -@@ -22,19 +22,14 @@ EXTRA_DIST = OpenIPMI_lang.i OpenIPMI.h - OpenIPMI.pyc: OpenIPMI.py _OpenIPMI.la - -PYTHONPATH=$(PYPATH) $(pythonprog) -c 'import OpenIPMI.py' - --OpenIPMI.pyo: OpenIPMI.py _OpenIPMI.la -- -PYTHONPATH=$(PYPATH) $(pythonprog) -O -c 'import OpenIPMI.py' -- - OpenIPMI_wrap.c OpenIPMI.py: $(top_srcdir)/swig/OpenIPMI.i OpenIPMI_lang.i - $(SWIG) $(DEFS) -python -o OpenIPMI_wrap.c -I$(top_srcdir)/swig/python $< - --CLEANFILES = OpenIPMI_wrap.c OpenIPMI.py OpenIPMI.pyo OpenIPMI.pyc -+CLEANFILES = OpenIPMI_wrap.c OpenIPMI.py - --install-exec-local: _OpenIPMI.la OpenIPMI.py OpenIPMI.pyc OpenIPMI.pyo -+install-exec-local: _OpenIPMI.la OpenIPMI.py - $(INSTALL) -d $(DESTDIR)$(PYTHON_INSTALL_DIR) - $(INSTALL_DATA) OpenIPMI.py "$(DESTDIR)$(PYTHON_INSTALL_DIR)" -- $(INSTALL_DATA) OpenIPMI.pyc "$(DESTDIR)$(PYTHON_INSTALL_DIR)" -- $(INSTALL_DATA) OpenIPMI.pyo "$(DESTDIR)$(PYTHON_INSTALL_DIR)" - if test "x$(PYTHON_GUI_DIR)" = "xopenipmigui"; then \ - $(INSTALL) -d $(DESTDIR)$(bindir); \ - $(INSTALL_SCRIPT) $(srcdir)/openipmigui.py "$(DESTDIR)$(bindir)/openipmigui";\ -@@ -43,8 +38,6 @@ install-exec-local: _OpenIPMI.la OpenIPM - uninstall-local: - $(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(PYTHON_INSTALL_LIB_DIR)/_OpenIPMI.so" - rm -f "$(DESTDIR)$(PYTHON_INSTALL_DIR)/OpenIPMI.py" -- rm -f "$(DESTDIR)$(PYTHON_INSTALL_DIR)/OpenIPMI.pyc" -- rm -f "$(DESTDIR)$(PYTHON_INSTALL_DIR)/OpenIPMI.pyo" - rm -f "$(DESTDIR)$(bindir)/openipmigui" - - rungui: -diff -urNp a/swig/python/Makefile.in b/swig/python/Makefile.in ---- a/swig/python/Makefile.in 2018-04-17 08:47:58.547283986 +0200 -+++ b/swig/python/Makefile.in 2018-04-17 14:43:28.969899859 +0200 -@@ -443,7 +443,7 @@ nodist__OpenIPMI_la_SOURCES = OpenIPMI_w - _OpenIPMI_la_LDFLAGS = -module -avoid-version - _OpenIPMI_la_LIBADD = $(OPENIPMI_SWIG_LIBS) $(PYTHON_POSIX_LIB) - EXTRA_DIST = OpenIPMI_lang.i OpenIPMI.h openipmigui.py sample.py sample2.py --CLEANFILES = OpenIPMI_wrap.c OpenIPMI.py OpenIPMI.pyo OpenIPMI.pyc -+CLEANFILES = OpenIPMI_wrap.c OpenIPMI.py - all: all-recursive - - .SUFFIXES: -@@ -837,20 +837,12 @@ uninstall-am: uninstall-local uninstall- - .PRECIOUS: Makefile - - --OpenIPMI.pyc: OpenIPMI.py _OpenIPMI.la -- -PYTHONPATH=$(PYPATH) $(pythonprog) -c 'import OpenIPMI.py' -- --OpenIPMI.pyo: OpenIPMI.py _OpenIPMI.la -- -PYTHONPATH=$(PYPATH) $(pythonprog) -O -c 'import OpenIPMI.py' -- - OpenIPMI_wrap.c OpenIPMI.py: $(top_srcdir)/swig/OpenIPMI.i OpenIPMI_lang.i - $(SWIG) $(DEFS) -python -o OpenIPMI_wrap.c -I$(top_srcdir)/swig/python $< - --install-exec-local: _OpenIPMI.la OpenIPMI.py OpenIPMI.pyc OpenIPMI.pyo -+install-exec-local: _OpenIPMI.la OpenIPMI.py - $(INSTALL) -d $(DESTDIR)$(PYTHON_INSTALL_DIR) - $(INSTALL_DATA) OpenIPMI.py "$(DESTDIR)$(PYTHON_INSTALL_DIR)" -- $(INSTALL_DATA) OpenIPMI.pyc "$(DESTDIR)$(PYTHON_INSTALL_DIR)" -- $(INSTALL_DATA) OpenIPMI.pyo "$(DESTDIR)$(PYTHON_INSTALL_DIR)" - if test "x$(PYTHON_GUI_DIR)" = "xopenipmigui"; then \ - $(INSTALL) -d $(DESTDIR)$(bindir); \ - $(INSTALL_SCRIPT) $(srcdir)/openipmigui.py "$(DESTDIR)$(bindir)/openipmigui";\ -@@ -859,8 +851,6 @@ install-exec-local: _OpenIPMI.la OpenIPM - uninstall-local: - $(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(PYTHON_INSTALL_LIB_DIR)/_OpenIPMI.so" - rm -f "$(DESTDIR)$(PYTHON_INSTALL_DIR)/OpenIPMI.py" -- rm -f "$(DESTDIR)$(PYTHON_INSTALL_DIR)/OpenIPMI.pyc" -- rm -f "$(DESTDIR)$(PYTHON_INSTALL_DIR)/OpenIPMI.pyo" - rm -f "$(DESTDIR)$(bindir)/openipmigui" - - rungui: diff --git a/OpenIPMI-py313compat.patch b/OpenIPMI-py313compat.patch new file mode 100644 index 0000000..fccde75 --- /dev/null +++ b/OpenIPMI-py313compat.patch @@ -0,0 +1,13 @@ +diff --git a/swig/python/OpenIPMI_lang.i b/swig/python/OpenIPMI_lang.i +index 67221fd..d150d81 100644 +--- a/swig/python/OpenIPMI_lang.i ++++ b/swig/python/OpenIPMI_lang.i +@@ -541,7 +541,7 @@ static void OI_put_py_state(int current) + #else + static void init_lang(void) + { +- PyEval_InitThreads(); ++ /* nothing */ + } + #define OI_PY_STATE PyGILState_STATE + #define OI_PY_STATE_GET() PyGILState_Ensure() diff --git a/OpenIPMI.spec b/OpenIPMI.spec index 9bfbc91..7016dc2 100644 --- a/OpenIPMI.spec +++ b/OpenIPMI.spec @@ -1,33 +1,47 @@ %global _hardened_build 1 +%bcond_with python +%bcond_with perl + Summary: IPMI (Intelligent Platform Management Interface) library and tools Name: OpenIPMI -Version: 2.0.25 -Release: 8%{?dist} -License: LGPLv2+ and GPLv2+ or BSD -URL: http://sourceforge.net/projects/openipmi/ -Source: http://downloads.sourceforge.net/openipmi/%{name}-%{version}.tar.gz +Version: 2.0.36 +Release: 5%{?dist} +License: LGPL-2.1-or-later and GPL-2.0-or-later or BSD-3-Clause +URL: https://sourceforge.net/projects/openipmi/ +Source: https://downloads.sourceforge.net/openipmi/%{name}-%{version}.tar.gz Source1: openipmi.sysconf Source2: openipmi-helper Source3: ipmi.service Patch1: 0001-man.patch -Patch2: 0002-nobundle.patch -Patch3: 0003-Python3.patch +Patch2: include-config-h-cmdlang.patch +Patch5: OpenIPMI-py313compat.patch -BuildRequires: gdbm-devel swig glib2-devel net-snmp-devel ncurses-devel -BuildRequires: openssl-devel python3-devel perl-devel perl-generators +BuildRequires: make +BuildRequires: gdbm-devel glib2-devel net-snmp-devel ncurses-devel +%if %{with python} || %{with perl} +BuildRequires: swig +%endif +BuildRequires: openssl-devel +%if %{with python} +BuildRequires: python3-devel +%endif +%if %{with perl} +BuildRequires: perl-devel perl-generators +%endif BuildRequires: pkgconfig -BuildRequires: libedit-devel +BuildRequires: readline-devel BuildRequires: automake BuildRequires: autoconf BuildRequires: libtool %{?systemd_requires} BuildRequires: systemd -Requires: libedit Requires: %{name}-libs%{?_isa} = %{version}-%{release} +# Prevent bogus provides of private libs from perl +%global __provides_exclude_from %{?__provides_exclude_from:%{__provides_exclude_from}|}^%{perl_vendorarch}/auto/.*\\.so$ %description The Open IPMI project aims to develop an open code base to allow access to @@ -41,14 +55,16 @@ Summary: The OpenIPMI runtime libraries The OpenIPMI-libs package contains the runtime libraries for shared binaries and applications. +%if %{with perl} %package perl Summary: IPMI Perl language bindings -Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version)) Requires: %{name}-libs%{?_isa} = %{version}-%{release} %description perl The OpenIPMI-perl package contains the Perl language bindings for OpenIPMI. +%endif +%if %{with python} %package -n python3-openipmi %{?python_provide:%python_provide python3-openipmi} %{?python_provide:%python_provide python3-OpenIPMI} @@ -61,12 +77,14 @@ Requires: %{name}-libs%{?_isa} = %{version}-%{release} %description -n python3-openipmi The OpenIPMI-python package contains the Python language bindings for OpenIPMI. +%endif %package devel Summary: The development environment for the OpenIPMI project Requires: pkgconfig Requires: %{name}%{?_isa} = %{version}-%{release} Requires: %{name}-libs%{?_isa} = %{version}-%{release} +Requires: %{name}-lanserv%{?_isa} = %{version}-%{release} %description devel The OpenIPMI-devel package contains the development libraries and header files @@ -75,6 +93,7 @@ of the OpenIPMI project. %package lanserv Summary: Emulates an IPMI network listener Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: %{name}-libs%{?_isa} = %{version}-%{release} %description lanserv This package contains a network IPMI listener. @@ -82,26 +101,23 @@ This package contains a network IPMI listener. %prep %autosetup -p1 -rm -rf ./libedit %build -export EDIT_CFLAGS=`pkg-config --cflags libedit` -export EDIT_LIBS=`pkg-config --libs libedit` - -# generate new configure script we need this since we removed the libedit directory -%{__libtoolize} --copy --force --automake -%{__aclocal} -%{__autoheader} -%{__automake} --add-missing --copy --foreign --force-missing -%{__autoconf} -# libedit end %configure \ CFLAGS="-fPIC %{optflags} -z now -fno-strict-aliasing" \ LDFLAGS="%{__global_ldflags} -Wl,--as-needed" \ --disable-dependency-tracking \ --disable-static \ +%if %{with python} --with-pythoninstall=%{python3_sitearch} \ + --with-python=%{__python3} \ +%else + --with-python=no \ +%endif +%if %{without perl} + --with-perl=no \ +%endif --with-tcl=no \ --with-tkinter=no @@ -110,7 +126,7 @@ export EDIT_LIBS=`pkg-config --libs libedit` sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool -make # not %{?_smp_mflags} safe +make # not %%{?_smp_mflags} safe %install make install DESTDIR=%{buildroot} @@ -178,13 +194,17 @@ echo ".so man1/openipmish.1" > %{buildroot}%{_mandir}/man1/ipmish.1 %{_mandir}/man7/ipmi_cmdlang* %{_mandir}/man7/openipmi_conparms* +%if %{with perl} %files perl %attr(644,root,root) %{perl_vendorarch}/OpenIPMI.pm %{perl_vendorarch}/auto/OpenIPMI +%endif +%if %{with python} %files -n python3-openipmi %{python3_sitearch}/*OpenIPMI* %{python3_sitearch}/__pycache__/OpenIPMI.*.pyc +%endif %files libs %{_libdir}/libOpenIPMI*.so.* @@ -208,6 +228,149 @@ echo ".so man1/openipmish.1" > %{buildroot}%{_mandir}/man1/ipmish.1 %{_mandir}/man5/ipmi_sim_cmd.5* %changelog +* Fri Jan 16 2026 Fedora Release Engineering - 2.0.36-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild + +* Mon Jan 12 2026 Josef Ridky - 2.0.36-4 +- rebuild for new net-snmp release + +* Wed Jul 23 2025 Fedora Release Engineering - 2.0.36-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Thu Jan 16 2025 Fedora Release Engineering - 2.0.36-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Thu Aug 22 2024 Fedora Release Monitoring - 2.0.36-1 +- Update to 2.0.36 (#2302353) +- Resolves CVE-2024-42934 + +* Wed Jul 17 2024 Fedora Release Engineering - 2.0.35-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Tue May 7 2024 Pavel Cahyna - 2.0.35-1 +- Switch to https +- Update to 2.0.35 (rhbz#2278007) + drop patch integrated upstream + +* Sun Feb 11 2024 Pavel Cahyna - 2.0.34-1 +- Update to 2.0.34 (rhbz#2105023) +- Resolve issues found by rpmdiff + - add a patch to fix getaddrinfo detection to avoid using gethostbyname + - add explicit Requires: on subpackages to avoid the need to test + interoperability between the various combinations of old and new + subpackages +- Conditional Perl & Python module build, by default disabled + +* Mon Jan 22 2024 Fedora Release Engineering - 2.0.32-13 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Fri Jan 19 2024 Fedora Release Engineering - 2.0.32-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Mon Jan 08 2024 Florian Weimer - 2.0.32-11 +- Fix C compatibility issues + +* Wed Jul 19 2023 Fedora Release Engineering - 2.0.32-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Tue Jul 18 2023 Josef Ridky - 2.0.32-9 +- Migrate to SPDX license format + +* Tue Jul 11 2023 Jitka Plesnikova - 2.0.32-8 +- Perl 5.38 rebuild + +* Tue Jun 13 2023 Python Maint - 2.0.32-7 +- Rebuilt for Python 3.12 + +* Wed Jan 18 2023 Fedora Release Engineering - 2.0.32-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Wed Jul 20 2022 Fedora Release Engineering - 2.0.32-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Mon Jun 13 2022 Python Maint - 2.0.32-4 +- Rebuilt for Python 3.11 + +* Tue May 31 2022 Jitka Plesnikova - 2.0.32-3 +- Perl 5.36 rebuild + +* Wed Jan 19 2022 Fedora Release Engineering - 2.0.32-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Mon Jan 10 2022 Josef Ridky - 2.0.32-1 +- new upstream release 2.0.32 (#2020717) + +* Tue Sep 14 2021 Sahana Prasad - 2.0.31-8 +- Rebuilt with OpenSSL 3.0.0 + +* Mon Aug 02 2021 Josef Ridky - 2.0.31-7 +- replace distutils and fix FTBFS (#1948437) +- fix collectd-ipmi crash (#1927022) + +* Wed Jul 21 2021 Fedora Release Engineering - 2.0.31-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Fri Jun 04 2021 Python Maint - 2.0.31-5 +- Rebuilt for Python 3.10 + +* Fri May 21 2021 Jitka Plesnikova - 2.0.31-4 +- Perl 5.34 rebuild + +* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek - 2.0.31-3 +- Rebuilt for updated systemd-rpm-macros + See https://pagure.io/fesco/issue/2583. + +* Mon Jan 25 2021 Fedora Release Engineering - 2.0.31-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Mon Jan 25 2021 Josef Ridky - 2.0.31-1 +- New upstream release 2.0.31 (#1905768) + +* Thu Sep 17 2020 Josef Řídký - 2.0.29-1 +- New upstream release 2.0.29 (#1846675) + +* Thu Aug 27 2020 Josef Řídký - 2.0.28-7 +- Rebuilt for new net-snmp release + +* Mon Jul 27 2020 Fedora Release Engineering - 2.0.28-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Tue Jun 23 2020 Jitka Plesnikova - 2.0.28-5 +- Perl 5.32 rebuild + +* Tue May 26 2020 Miro Hrončok - 2.0.28-4 +- Rebuilt for Python 3.9 + +* Mon Feb 03 2020 Vaclav Dolezal - 2.0.28-3 +- Cleanup of openipmi-helper script; removed no-udev branch (#1579773) + +* Tue Jan 28 2020 Fedora Release Engineering - 2.0.28-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Mon Dec 16 2019 Vaclav Dolezal - 2.0.28-1 +- New upstream release 2.0.28 + +* Thu Oct 03 2019 Miro Hrončok - 2.0.27-5 +- Rebuilt for Python 3.8.0rc1 (#1748018) + +* Mon Aug 19 2019 Miro Hrončok - 2.0.27-4 +- Rebuilt for Python 3.8 + +* Thu Aug 01 2019 Vaclav Dolezal - 2.0.27-3 +- Prevent bogus Provides of libOpenIPMI.so.0 by OpenIPMI-perl (#1734407) + +* Wed Jul 24 2019 Fedora Release Engineering - 2.0.27-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Wed Jun 26 2019 Vaclav Dolezal - 2.0.27-1 +- New upstream release 2.0.27 + +* Fri May 31 2019 Jitka Plesnikova - 2.0.25-10 +- Perl 5.30 rebuild + +* Thu Jan 31 2019 Fedora Release Engineering - 2.0.25-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + * Wed Sep 05 2018 Josef Ridky - 2.0.25-8 - Fix man page self referencing error (#1612159) diff --git a/include-config-h-cmdlang.patch b/include-config-h-cmdlang.patch new file mode 100644 index 0000000..4f9fcab --- /dev/null +++ b/include-config-h-cmdlang.patch @@ -0,0 +1,12 @@ +diff -up OpenIPMI-2.0.32/cmdlang/cmdlang.c~ OpenIPMI-2.0.32/cmdlang/cmdlang.c +--- OpenIPMI-2.0.32/cmdlang/cmdlang.c~ 2021-01-22 19:51:28.000000000 +0100 ++++ OpenIPMI-2.0.32/cmdlang/cmdlang.c 2022-01-28 11:55:42.375470392 +0100 +@@ -32,6 +32,8 @@ + */ + + ++#include ++ + #include + #include + #include diff --git a/openipmi-helper b/openipmi-helper index 4cebfb9..4f3d3d9 100644 --- a/openipmi-helper +++ b/openipmi-helper @@ -4,6 +4,7 @@ # ipmi: OpenIPMI Driver helper script # # Authors: Jan Safranek +# Václav Doležal # # Based on IPMI init script by: # Matt Domsch @@ -30,11 +31,6 @@ INTF_NUM=0 IPMI_SMB_MODULE_NAME="ipmi_smb" IPMI_SI_MODULE_NAME="ipmi_si" -kernel=`uname -r | cut -d. -f1-2` -if [ "${kernel}" == "2.4" ]; then - IPMI_SMB_MODULE_NAME="ipmi_smb_intf" - IPMI_SI_MODULE_NAME="ipmi_si_drv" -fi MODULES_INTERFACES="" [ "${DEV_IPMI}" = "yes" ] && MODULES_INTERFACES="${MODULES_INTERFACES} ipmi_devintf" @@ -55,17 +51,6 @@ RETVAL=0 LOCKFILE=/var/lock/subsys/ipmi DEV_IPMI_TIMEOUT=150 -UDEV_EXISTS=0 -if [ -e /sbin/udev -o -e /sbin/udevd ]; then - UDEV_EXISTS=1 -fi - -############################################################################# -# NOTES: -# * /dev/ipmi0 is unconditionally deleted here on ipmi_devintf unload, -# because SLES9 and RHEL4 kernels don't send a message for udev to delete -# it for us. -# ############################################################################# modules_loaded_verbose() @@ -73,7 +58,7 @@ modules_loaded_verbose() OnePlusLoaded=0 OnePlusUnloaded=0 for m in $@; do - if /sbin/lsmod | grep $m >/dev/null 2>&1 ; then + if /sbin/lsmod | grep -q $m ; then echo "$m module loaded." OnePlusLoaded=1 else @@ -88,7 +73,7 @@ modules_loaded() OnePlusLoaded=0 OnePlusUnloaded=0 for m in $@; do - if /sbin/lsmod | grep $m >/dev/null 2>&1 ; then + if /sbin/lsmod | grep -q $m ; then OnePlusLoaded=1 else OnePlusUnloaded=1 @@ -154,13 +139,6 @@ start_watchdog_common() RETVAL=$((RETVAL | 2)) && echo "Watchdog startup failed: cannot load ipmi_watchdog module" && return - if [ ${UDEV_EXISTS} -eq 0 -a ! -e /dev/watchdog ]; then - mknod -m 0600 /dev/watchdog c 10 130 - [ $? -ne 0 ] && - RETVAL=$((RETVAL | 8)) && - echo "Watchdog startup failed: cannot create /dev/watchdog" && - return - fi } start_watchdog_quiet() @@ -186,10 +164,6 @@ stop_watchdog() if [ ${OnePlusLoaded} -ne 0 ]; then RETVAL=$((RETVAL | 32)) echo "Watchog shutdown failed: cannot unload ipmi_watchdog module" - else - if [ "${IPMI_WATCHDOG}" = "yes" ]; then - [ ${UDEV_EXISTS} -eq 0 ] && rm -f /dev/watchdog - fi fi } @@ -199,10 +173,6 @@ stop_watchdog_quiet() modules_loaded ipmi_watchdog if [ ${OnePlusLoaded} -ne 0 ]; then RETVAL=$((RETVAL | 32)) - else - if [ "${IPMI_WATCHDOG}" = "yes" ]; then - [ ${UDEV_EXISTS} -eq 0 ] && rm -f /dev/watchdog - fi fi } @@ -211,9 +181,9 @@ start_powercontrol_common() local poweroff_opts="" load_hw_modules if [ "${IPMI_POWERCYCLE}" == "yes" ]; then - modinfo ipmi_poweroff 2>/dev/null | grep poweroff_control > /dev/null 2>&1 && \ + modinfo ipmi_poweroff 2>/dev/null | grep -q poweroff_control && \ poweroff_opts="poweroff_control=2" - modinfo ipmi_poweroff 2>/dev/null | grep poweroff_powercycle > /dev/null 2>&1 && \ + modinfo ipmi_poweroff 2>/dev/null | grep -q poweroff_powercycle && \ poweroff_opts="poweroff_powercycle=1" fi modprobe ipmi_poweroff "${poweroff_opts}" > /dev/null 2>&1 @@ -265,9 +235,6 @@ unload_all_ipmi_modules() for m in ${MODULES}; do modprobe -q -r ${m} > /dev/null 2>&1 done - # delete interface node ONLY if ipmi_devintf is unloaded - [ `lsmod | grep -c "ipmi_devintf"` -eq 0 ] && - rm -f "/dev/ipmi${INTF_NUM}" } unload_ipmi_modules_leave_features() @@ -275,10 +242,7 @@ unload_ipmi_modules_leave_features() for m in ${MODULES_INTERFACES}; do modprobe -q -r ${m} > /dev/null 2>&1 done - # delete interface node ONLY if ipmi_devintf is unloaded - [ `lsmod | grep -c "ipmi_devintf"` -eq 0 ] && - rm -f "/dev/ipmi${INTF_NUM}" - lsmod | egrep -q "ipmi_(poweroff|watchdog)" > /dev/null 2>&1 + lsmod | grep -Eq "ipmi_(poweroff|watchdog)" if [ "$?" -ne "0" ]; then stop_watchdog_quiet stop_powercontrol_quiet @@ -302,14 +266,7 @@ load_ipmi_modules () modprobe ipmi_devintf > /dev/null 2>&1 modules_loaded ipmi_devintf RETVAL=$((RETVAL & ~2)) - [ ${OnePlusLoaded} -eq 0 ] && RETVAL=$((RETVAL | 2)) if [ ${OnePlusLoaded} -eq 1 ]; then - if [ ${UDEV_EXISTS} -eq 0 ]; then - DEVMAJOR=`cat /proc/devices | awk '/ipmidev/{print $1}'` - rm -f /dev/ipmi${INTF_NUM} - mknod -m 0600 /dev/ipmi${INTF_NUM} c ${DEVMAJOR} 0 || RETVAL=$((RETVAL | 4)) - fi - # udev can take several seconds to create /dev/ipmi0, # but it happens asynchronously, so delay here locdelay=${DEV_IPMI_TIMEOUT} @@ -317,6 +274,8 @@ load_ipmi_modules () locdelay=$((locdelay - 1)) sleep 0.1 done + else + RETVAL=$((RETVAL | 2)) fi fi diff --git a/sources b/sources index 26a13b2..1870111 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (OpenIPMI-2.0.25.tar.gz) = 5d89deb5d0d0ff44d6f62a9759577dba92aa58c208477e317aecbd01e71ccf7ba0dab138a1d8feff22d523c85d6ceaee9e478e26834ffcd91949b81d2d9c1f86 +SHA512 (OpenIPMI-2.0.36.tar.gz) = a47725308336f200e88a1eb8641ed5ef03fc8bb43ee47f7a99e39df68640ff912b6842c1710d7e767aeb724fc41fa4ed3b244685812ee985e5200003a45f4015