## START: Set by rpmautospec
## (rpmautospec version 0.6.0)
## RPMAUTOSPEC: autorelease, autochangelog
%define autorelease(e:s:pb:n) %{?-p:0.}%{lua:
    release_number = 2;
    base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}"));
    print(release_number + base_release_number - 1);
}%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}}
## END: Set by rpmautospec

%global _hardened_build 1

Summary: Bidirectional data relay between two data channels ('netcat++')
Name: socat
Version: 1.8.0.0
Release: %autorelease
License: GPL-2.0-only
Url:  http://www.dest-unreach.org/socat/
Source: http://www.dest-unreach.org/socat/download/%{name}-%{version}.tar.gz

BuildRequires: make
BuildRequires:  gcc
BuildRequires: openssl-devel readline-devel ncurses-devel
BuildRequires: autoconf kernel-headers > 2.6.18
# for make test
BuildRequires: iproute net-tools coreutils procps-ng openssl iputils

%description
Socat is a relay for bidirectional data transfer between two independent data
channels. Each of these data channels may be a file, pipe, device (serial line
etc. or a pseudo terminal), a socket (UNIX, IP4, IP6 - raw, UDP, TCP), an
SSL socket, proxy CONNECT connection, a file descriptor (stdin etc.), the GNU
line editor (readline), a program, or a combination of two of these.


%prep
%setup -q
iconv -f iso8859-1 -t utf-8 CHANGES > CHANGES.utf8
mv CHANGES.utf8 CHANGES
%autopatch -p1

%build
# avoid warning on stderr disrupting tests
sed -i "s/FGREP=fgrep/FGREP='grep -F'/" configure
sed -i "s/fgrep/grep -F/" test.sh
sed -i "s/egrep/egrep -E/" test.sh
%configure  \
        --enable-help --enable-stdio \
        --enable-fdnum --enable-file --enable-creat \
        --enable-gopen --enable-pipe --enable-termios \
        --enable-unix --enable-ip4 --enable-ip6 \
        --enable-rawip --enable-tcp --enable-udp \
        --enable-listen --enable-proxy --enable-exec \
        --enable-system --enable-pty --enable-readline \
        --enable-openssl --enable-sycls --enable-filan \
        --enable-retry # --enable-fips

%make_build

%install
 %make_install
install -d %{buildroot}/%{_docdir}/socat
install -m 0644 *.sh %{buildroot}/%{_docdir}/socat/
echo ".so man1/socat.1" | gzip > %{buildroot}/%{_mandir}/man1/filan.1.gz
cp -a %{buildroot}/%{_mandir}/man1/filan.1.gz %{buildroot}/%{_mandir}/man1/procan.1.gz

%check
%ifarch x86_64
export TERM=ansi
export OD_C=/usr/bin/od
# intermittently, some tests fail and just hang
# FAILED on all arches:  146 478 528
# FAILED on i686: 311 313 513
# FAILED on 390s: 202 493
# FAILED:  146 (DSA algo disallowed?)
sed -i 's/NUMCOND=true/NUMCOND="test \\$N -ne 146 -a \\$N -ne 478 -a \\$N -ne 528"/' test.sh
make test
%endif

%files
%doc BUGREPORTS CHANGES DEVELOPMENT EXAMPLES FAQ PORTING
%doc COPYING* README SECURITY
%doc %{_docdir}/socat/*.sh
%{_bindir}/socat*
%{_bindir}/filan
%{_bindir}/procan
%doc %{_mandir}/man1/*

%changelog
## START: Generated by rpmautospec
* Tue Feb 20 2024 Paul Wouters <paul.wouters@aiven.io> - 1.8.0.0-2
- Update to 1.8.0.0

* Tue Feb 20 2024 Paul Wouters <paul.wouters@aiven.io> - 1.8.0.0-1
- Update to 1.8.0.0

* Sat Jan 27 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.4.4-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild

* Mon Oct 02 2023 Martin Osvald <mosvald@redhat.com> - 1.7.4.4-6
- Migrate License field to SPDX format

* Sat Jul 22 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.4.4-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild

* Sat Jan 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.4.4-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild

* Tue Jan 17 2023 Paul Wouters <paul.wouters@aiven.io> - 1.7.4.4-3
- use make macros

* Tue Jan 17 2023 Paul Wouters <paul.wouters@aiven.io> - 1.7.4.4-2
- pull up date :P

* Tue Jan 17 2023 Clemens Lang <cllang@redhat.com> - 1.7.4.4-1
- Resolves: rhbz#2038615 socat-1.7.4.4 is available

* Mon Dec 12 2022 Florian Weimer <fweimer@redhat.com> - 1.7.4.2-4
- Port configure script to C99 (#2152488)

* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.4.2-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild

* Sat Jan 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.4.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild

* Thu Nov 04 2021 Davide Cavalca <dcavalca@fedoraproject.org> - 1.7.4.2-1
- Resolves: rhbz#2018835 socat-1.7.4.2 is available

* Tue Sep 14 2021 Sahana Prasad <sahana@redhat.com> - 1.7.4.1-4
- Rebuilt with OpenSSL 3.0.0

* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.4.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild

* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.4.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild

* Mon Jan 11 2021 Paul Wouters <pwouters@redhat.com> - 1.7.4.1-1
- Resolves: rhbz#1914653 socat-1.7.4.1 is available

* Fri Jan 08 2021 Tom Stellard <tstellar@redhat.com> - 1.7.4.0-3
- Add BuildRequires: make

* Tue Jan 05 2021 Paul Wouters <pwouters@redhat.com> - 1.7.4.0-2
- add socat-1.7.4.0-uint64_t.patch

* Tue Jan 05 2021 Paul Wouters <pwouters@redhat.com> - 1.7.4.0-1
- Resolves: rhbz#1912161 socat-1.7.4.0 is available

* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.3.4-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild

* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.3.4-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild

* Mon Jan 06 2020 Paul Wouters <pwouters@redhat.com> - 1.7.3.4-2
- RPMAUTOSPEC: unresolvable merge
## END: Generated by rpmautospec