Name:           libssh
Version:        0.99.0
Release:        1
Summary:        A library implementing the SSH protocol
License:        LGPL-2.1-or-later
URL:            https://www.libssh.org

Source0:        https://www.libssh.org/files/0.12/%{name}-%{version}.tar.xz

BuildRequires:  cmake gcc-c++ gnupg2 openssl-devel pkgconfig zlib-devel
BuildRequires:  krb5-devel libcmocka-devel openssh-clients openssh-server
BuildRequires:  nmap-ncat

Recommends:     crypto-policies

Provides: libssh_threads.so.4()(64bit)

%description
The ssh library was designed to be used by programmers needing a working SSH
implementation by the mean of a library. The complete control of the client is
made by the programmer. With libssh, you can remotely execute programs, transfer
files, use a secure and transparent tunnel for your remote programs. With its
Secure FTP implementation, you can play with remote files easily, without
third-party programs others than libcrypto (from openssl).

%package devel
Summary:        Development files for %{name}
Requires:       %{name}%{?_isa} = %{version}-%{release}

%description devel
The %{name}-devel package contains libraries and header files for developing
applications that use %{name}.

%package_help

%prep
%autosetup -p1

%build
%cmake \
    -DUNIT_TESTING=ON \

%cmake_build

%install
%cmake_install
install -d -m755 %{buildroot}%{_sysconfdir}/libssh

pushd %{buildroot}%{_libdir}
for i in libssh.so*;
do
    _target="${i}"
    _link_name="${i%libssh*}libssh_threads${i##*libssh}"
    if [ -L "${i}" ]; then
        _target="$(readlink ${i})"
    fi
    ln -s "${_target}" "${_link_name}"
done;
popd

%check
%ctest -E "torture_forwarded_tcpip_callback|torture_server_direct_tcpip"

%files
%doc AUTHORS BSD
%license COPYING
%{_libdir}/*.so.4*

%files devel
%{_includedir}/libssh/
%{_libdir}/cmake/libssh/
%{_libdir}/pkgconfig/libssh.pc
%{_libdir}/*.so

%files help
%doc CHANGELOG README

%changelog
* Fri Aug 08 2026 zhangbinqin <zhangbinqin@h-partners.com> - 0.12.2-2
- Type:test
- Id:NA
- SUG:NA
- DESC:test CI with version bump (expect FAIL)

* Tue Jul 28 2026 Funda Wang <fundawang@yeah.net> - 0.12.2-1
- update to 0.12.2

* Wed Mar 11 2026 zhangbinqin <zhangbinqin@h-partners.com> - 0.11.3-3
- Type:CVE
- Id:CVE-2026-3731
- SUG:NA
- DESC:fix CVE-2026-3731

* Wed Mar 4 2026 zhangbinqin <zhangbinqin@h-partners.com> - 0.11.3-2
- Type:CVE
- Id:CVE-2026-0968 CVE-2026-0967 CVE-2026-0966 CVE-2026-0965 CVE-2026-0964 CVE-2025-14821
- SUG:NA
- DESC:fix CVE-2026-0968 CVE-2026-0967 CVE-2026-0966 CVE-2026-0965 CVE-2026-0964 CVE-2025-14821

* Fri Oct 03 2025 Funda Wang <fundawang@yeah.net> - 0.11.3-1
- update to 0.11.3

* Wed Sep 24 2025 zhangbinqin <zhangbinqin@h-partners.com> - 0.10.5-9
- Type:bugfix
- Id:NA
- SUG:NA
- DESC:fix CVE number in changelog

* Thu Sep 18 2025 zhangbinqin <zhangbinqin@h-partners.com> - 0.10.5-8
- Type:CVE
- Id:CVE-2025-8277
- SUG:NA
- DESC:fix CVE-2025-8277

* Mon Sep 15 2025 zhangbinqin <zhangbinqin@h-partners.com> - 0.10.5-7
- Type:CVE
- Id:CVE-2025-8114
- SUG:NA
- DESC:fix CVE-2025-8114

* Mon Aug 18 2025 zhangbinqin <zhangbinqin@h-partners.com> - 0.10.5-6
- Type:CVE
- Id:CVE-2025-4877 CVE-2025-4878 CVE-2025-5351 CVE-2025-5987 CVE-2025-5372
- SUG:NA
- DESC:fix CVE-2025-4877 CVE-2025-4878 CVE-2025-5351 CVE-2025-5987 CVE-2025-5372

* Wed Jul 2 2025 zhangbinqin <zhangbinqin@h-partners.com> - 0.10.5-5
- Type:CVE
- Id:CVE-2025-5318
- SUG:NA
- DESC:fix CVE-2025-5318

* Tue Nov 19 2024 Funda Wang <fundawang@yeah.net> - 0.10.5-4
- adopt to new cmake macro

* Tue Oct 29 2024 bitianyuan <bitianyuan@huawei.com> - 0.10.5-3
- Type:bugfix
- Id:NA
- SUG:NA
- DESC:Fix regression in IPv6 addresses in hostname parsing

* Thu Jan 4 2024 renmingshuai <renmingshuai@huawei.com> - 0.10.5-2
- Type:CVE
- Id:CVE-2023-6004,CVE-2023-48795,CVE-2023-6918
- SUG:NA
- DESC:fix CVE-2023-6004,CVE-2023-48795 and CVE-2023-6918

* Mon Aug 7 2023 renmingshuai <renmingshuai@huawei.com> - 0.10.5-1
- Type:requirement
- Id:NA
- SUG:NA
- DESC:update to 0.10.5

* Wed May 24 2023 renmingshuai <renmingshuai@huawei.com> - 0.10.4-4
- Type:CVE
- Id:CVE-2023-1667,CVE-2023-2283
- SUG:NA
- DESC:fix CVE-2023-1667 and CVE-2023-2283

* Mon Apr 3 2023 Chenxi Mao <chenxi.mao@suse.com> - 0.10.4-3
- Type:bugfix
- Id:NA
- SUG:NA
- DESC:Backport patches to fix build error if compiler switch to clang.

* Sat Mar 18 2023 renmingshuai <renmingshuai@huawei.com> - 0.10.4-2
- Type:bugfix
- Id:NA
- SUG:NA
- DESC:config: Escape brackets in ProxyCommand build from ProxyJump
       packet: do not enqueue outgoing packets after sending

* Thu Oct 20 2022 zengweifeng<zwfeng@huawei.com> - 0.10.4-1
- Type:requirement
- Id:NA
- SUG:NA
- DESC:update to 0.10.4

* Thu Oct 20 2022 zengweifeng<zwfeng@huawei.com> - 0.9.6-5
- Type:bugfix
- Id:NA
- SUG:NA
- DESC:avoid false positive report from Coveritt CID 1470006
       kdf: Avoid endianess issues
       misc: Fix format truncation in ssh_path_expand_escape()
       misc: Fix expanding port numbers
       misc: rename gettimeofday symbol
       session: Initialize the port with the standard port (22)
       session->socket_callbacks.data will be set to ssh_packet_socket_callback
       socket: Add error message if execv fails
       tests: Add test for expanding port numbers

* Thu Oct 13 2022 xinghe <xinghe2@h-partners.com> - 0.9.6-4
- Type:bugfix
- Id:NA
- SUG:NA
- DESC:options: Parse hostname by last '@'
       torture_options: Add test for '@' in login name
       session: Initialize pointers
       tests: Ensure the mode of the created file is what we set

* Fri Sep 02 2022 gaihuiying <eaglegai@163.com> - 0.9.6-3
- Type:bugfix
- Id:NA
- SUG:NA
- DESC:backport upstream patches

* Wed Mar 16 2022 xihaochen <xihaochen@h-partners.com> - 0.9.6-2
- Type:bugfix
- Id:NA
- SUG:NA
- DESC:remove obsolete lib

* Fri Dec 03 2021 gaihuiying <gaihuiying1@huawei.com> - 0.9.6-1
- Type:requirement
- Id:NA
- SUG:NA
- DESC:update libssh to 0.9.6

* Mon Sep 13 2021 heyaohua<heyaohua1@huawei.com> - 0.9.5-2
- Type:CVE
- Id:CVE-2021-3634
- SUG:NA
- DESC:fix CVE-2021-3634

* Fri Jan 29 2021 xihaochen <xihaochen@huawei.com> - 0.9.5-1
- Type:requirements                                                                                                                                            
- Id:NA
- SUG:NA
- DESC:update libssh to 0.9.5

* Thu Aug 6 2020 zhaowei <zhaowei23@huawei.com> - 0.9.4-2
- Type:CVE
- Id:CVE-2020-16135
- SUG:NA
- DESC:fix CVE-2020-16135

* Mon Apr 20 2020 openEuler Buildteam <buildteam@openeuler.org> - 0.9.4-1
- Type:bugfix
- Id:NA
- SUG:NA
- DESC:update to 0.9.4

* Sun Jan 12 2020 openEuler Buildteam <buildteam@openeuler.org> - 0.8.3-7
- Type:bugfix
- Id:NA
- SUG:NA
- DESC:bugfix in build process

* Sun Jan 12 2020 openEuler Buildteam <buildteam@openeuler.org> - 0.8.3-6
- Type:bugfix
- Id:NA
- SUG:NA
- DESC: fixes cves

* Sat Dec 21 2019 openEuler Buildteam <buildteam@openeuler.org> - 0.8.3-5
- Type:bugfix
- Id:NA
- SUG:NA
- DESC: fixes the oss fuzz bug

* Thu Sep 12 2019 openEuler Buildteam <buildteam@openeuler.org> - 0.8.3-4
- Package init