Blame SPECS/libvncserver.spec

Packit 6fbed6
Summary:    Library to make writing a VNC server easy
Packit 6fbed6
Name:       libvncserver
Packit 6fbed6
Version:    0.9.11
Packit 6fbed6
Release:    15%{?dist}.1
Packit 6fbed6
Packit 6fbed6
# NOTE: --with-filetransfer => GPLv2
Packit 6fbed6
License:    GPLv2+
Packit 6fbed6
URL:        http://libvnc.github.io/
Packit 6fbed6
Source0:    https://github.com/LibVNC/libvncserver/archive/LibVNCServer-%{version}.tar.gz
Packit 6fbed6
Packit 6fbed6
## upstream patches
Packit 6fbed6
Patch4: 0040-Ensure-compatibility-with-gtk-vnc-0.7.0.patch
Packit 6fbed6
Packit 6fbed6
## TLS security type enablement patches
Packit 6fbed6
# https://github.com/LibVNC/libvncserver/pull/234
Packit 6fbed6
Patch10: 0001-libvncserver-Add-API-to-add-custom-I-O-entry-points.patch
Packit 6fbed6
Patch11: 0002-libvncserver-Add-channel-security-handlers.patch
Packit 6fbed6
Packit 6fbed6
## Add API needed by gnome-remote-desktop to handle settings changes
Packit 6fbed6
# rhbz#1684729
Packit 6fbed6
Patch12: 0001-auth-Add-API-to-unregister-built-in-security-handler.patch
Packit 6fbed6
Packit 6fbed6
## downstream patches
Packit 6fbed6
Patch100:     libvncserver-0.9.11-system_minilzo.patch
Packit 6fbed6
Patch101:     libvncserver-0.9.1-multilib.patch
Packit 6fbed6
Patch102:     LibVNCServer-0.9.10-system-crypto-policy.patch
Packit 6fbed6
# revert soname bump
Packit 6fbed6
Patch103:     libvncserver-0.9.11-soname.patch
Packit 6fbed6
# 1/2 Fix CVE-2018-7225, bug #1546860
Packit 6fbed6
Patch104:     libvncserver-0.9.11-Validate-client-cut-text-length.patch
Packit 6fbed6
# 2/2 Fix CVE-2018-7225, bug #1546860
Packit 6fbed6
Patch105:     libvncserver-0.9.11-Limit-client-cut-text-length-to-1-MB.patch
Packit 6fbed6
# Fix CVE-2018-15127 (Heap out-of-bounds write in
Packit 6fbed6
# rfbserver.c:rfbProcessFileTransferReadBuffer()), bug #1662997, upstream bugs
Packit 6fbed6
# <https://github.com/LibVNC/libvncserver/issues/243>
Packit 6fbed6
# <https://github.com/LibVNC/libvncserver/issues/273>
Packit 6fbed6
# <https://github.com/LibVNC/libvncserver/issues/276>
Packit 6fbed6
# fixed in upstream after 0.9.12
Packit 6fbed6
Patch106:     libvncserver-0.9.11-Fix-CVE-2018-15127-Heap-out-of-bounds-write-in-rfbse.patch
Packit 6fbed6
# Fix CVE-2019-15690 (an integer overflow in HandleCursorShape() in a client),
Packit 6fbed6
# bug #1814343, <https://github.com/LibVNC/libvncserver/issues/275>,
Packit 6fbed6
# in upstream after 0.9.12
Packit 6fbed6
Patch107:     libvncserver-0.9.11-libvncclient-cursor-limit-width-height-input-values.patch
Packit 6fbed6
# https://github.com/LibVNC/libvncserver/commit/aac95a9dcf4bbba87b76c72706c3221a842ca433
Packit 6fbed6
Patch108:     libvncserver-0.9.11-CVE-2017-18922.patch
Packit 6fbed6
# https://github.com/LibVNC/libvncserver/pull/308
Packit 6fbed6
Patch109:     libvncserver-0.9.11-CVE-2019-20840.patch
Packit 6fbed6
Packit 6fbed6
BuildRequires:  autoconf
Packit 6fbed6
BuildRequires:  automake
Packit 6fbed6
BuildRequires:  libgcrypt-devel
Packit 6fbed6
BuildRequires:  libjpeg-devel
Packit 6fbed6
BuildRequires:  libtool
Packit 6fbed6
BuildRequires:  lzo-devel
Packit 6fbed6
BuildRequires:  lzo-minilzo
Packit 6fbed6
BuildRequires:  pkgconfig(gnutls)
Packit 6fbed6
BuildRequires:  pkgconfig(libcrypto)
Packit 6fbed6
BuildRequires:  pkgconfig(libpng)
Packit 6fbed6
BuildRequires:  pkgconfig(libssl)
Packit 6fbed6
# Additional deps for --with-x11vnc, see https://bugzilla.redhat.com/show_bug.cgi?id=864947
Packit 6fbed6
BuildRequires:  pkgconfig(avahi-client)
Packit 6fbed6
BuildRequires:  pkgconfig(ice)
Packit 6fbed6
BuildRequires:  pkgconfig(x11)
Packit 6fbed6
BuildRequires:  pkgconfig(xdamage)
Packit 6fbed6
BuildRequires:  pkgconfig(xext)
Packit 6fbed6
BuildRequires:  pkgconfig(xfixes)
Packit 6fbed6
BuildRequires:  pkgconfig(xi)
Packit 6fbed6
BuildRequires:  pkgconfig(xinerama)
Packit 6fbed6
BuildRequires:  pkgconfig(xrandr)
Packit 6fbed6
BuildRequires:  pkgconfig(xtst)
Packit 6fbed6
Packit 6fbed6
# For %%check
Packit 6fbed6
BuildRequires:  xorg-x11-xauth
Packit 6fbed6
BuildRequires:  zlib-devel
Packit 6fbed6
Packit 6fbed6
%description
Packit 6fbed6
LibVNCServer makes writing a VNC server (or more correctly, a program exporting
Packit 6fbed6
a frame-buffer via the Remote Frame Buffer protocol) easy.
Packit 6fbed6
Packit 6fbed6
It hides the programmer from the tedious task of managing clients and
Packit 6fbed6
compression schemata.
Packit 6fbed6
Packit 6fbed6
%package devel
Packit 6fbed6
Summary:    Development files for %{name}
Packit 6fbed6
Requires:   %{name}%{?_isa} = %{version}-%{release}
Packit 6fbed6
# libvncserver-config deps
Packit 6fbed6
Requires:   coreutils
Packit 6fbed6
Packit 6fbed6
%description devel
Packit 6fbed6
The %{name}-devel package contains libraries and header files for
Packit 6fbed6
developing applications that use %{name}.
Packit 6fbed6
Packit 6fbed6
Packit 6fbed6
%prep
Packit 6fbed6
%setup -q -n %{name}-LibVNCServer-%{version}
Packit 6fbed6
Packit 6fbed6
%patch4 -p1 -b .0004
Packit 6fbed6
Packit 6fbed6
%patch10 -p1
Packit 6fbed6
%patch11 -p1
Packit 6fbed6
Packit 6fbed6
%patch12 -p1
Packit 6fbed6
Packit 6fbed6
%patch100 -p1 -b .system_minilzo
Packit 6fbed6
# Nuke bundled minilzo
Packit 6fbed6
#rm -fv common/lzodefs.h common/lzoconf.h commmon/minilzo.h common/minilzo.c
Packit 6fbed6
Packit 6fbed6
%patch101 -p1 -b .multilib
Packit 6fbed6
%patch102 -p1
Packit 6fbed6
%if 0%{?fedora} < 26
Packit 6fbed6
%patch103 -p1 -b .soname
Packit 6fbed6
%global soname 0
Packit 6fbed6
%else
Packit 6fbed6
%global soname 1
Packit 6fbed6
%endif
Packit 6fbed6
%patch104 -p1
Packit 6fbed6
%patch105 -p1
Packit 6fbed6
%patch106 -p1
Packit 6fbed6
%patch107 -p1
Packit 6fbed6
%patch108 -p1
Packit 6fbed6
%patch109 -p1
Packit 6fbed6
Packit 6fbed6
# Fix encoding
Packit 6fbed6
for file in ChangeLog ; do
Packit 6fbed6
    mv ${file} ${file}.OLD && \
Packit 6fbed6
    iconv -f ISO_8859-1 -t UTF8 ${file}.OLD > ${file} && \
Packit 6fbed6
    touch --reference ${file}.OLD $file
Packit 6fbed6
done
Packit 6fbed6
Packit 6fbed6
# Needed by patch 1 (and to nuke rpath's)
Packit 6fbed6
autoreconf -vif
Packit 6fbed6
Packit 6fbed6
Packit 6fbed6
%build
Packit 6fbed6
%configure \
Packit 6fbed6
  --disable-silent-rules \
Packit 6fbed6
  --disable-static \
Packit 6fbed6
  --without-filetransfer \
Packit 6fbed6
  --with-gcrypt \
Packit 6fbed6
  --with-png \
Packit 6fbed6
  --with-x11vnc
Packit 6fbed6
Packit 6fbed6
# Hack to omit unused-direct-shlib-dependencies
Packit 6fbed6
sed -i -e 's! -shared ! -Wl,--as-needed\0!g' libtool
Packit 6fbed6
Packit 6fbed6
make %{?_smp_mflags}
Packit 6fbed6
Packit 6fbed6
Packit 6fbed6
%install
Packit 6fbed6
%make_install
Packit 6fbed6
Packit 6fbed6
# Unpackaged files
Packit 6fbed6
rm -fv %{buildroot}%{_bindir}/linuxvnc
Packit 6fbed6
rm -fv %{buildroot}%{_libdir}/lib*.a
Packit 6fbed6
rm -fv %{buildroot}%{_libdir}/lib*.la
Packit 6fbed6
Packit 6fbed6
Packit 6fbed6
%check
Packit 6fbed6
make -C test test ||:
Packit 6fbed6
Packit 6fbed6
Packit 6fbed6
%post -p /sbin/ldconfig
Packit 6fbed6
%postun -p /sbin/ldconfig
Packit 6fbed6
Packit 6fbed6
%files
Packit 6fbed6
%license COPYING
Packit 6fbed6
%doc AUTHORS ChangeLog NEWS README TODO
Packit 6fbed6
%{_libdir}/libvncclient.so.%{soname}*
Packit 6fbed6
%{_libdir}/libvncserver.so.%{soname}*
Packit 6fbed6
Packit 6fbed6
%files devel
Packit 6fbed6
%{_bindir}/libvncserver-config
Packit 6fbed6
%{_includedir}/rfb/
Packit 6fbed6
%{_libdir}/libvncclient.so
Packit 6fbed6
%{_libdir}/libvncserver.so
Packit 6fbed6
%{_libdir}/pkgconfig/libvncclient.pc
Packit 6fbed6
%{_libdir}/pkgconfig/libvncserver.pc
Packit 6fbed6
Packit 6fbed6
Packit 6fbed6
%changelog
Packit 6fbed6
* Tue Jul 28 2020 Michael Catanzaro <mcatanzaro@redhat.com> - 0.9.11-15.1
Packit 6fbed6
- Fix NVR
Packit 6fbed6
  Related: #1852356
Packit 6fbed6
Packit 6fbed6
* Mon Jul 27 2020 Michael Catanzaro <mcatanzaro@redhat.com> - 0.9.11-15
Packit 6fbed6
- Fix CVE-2017-18922
Packit 6fbed6
  Resolves: #1852356
Packit 6fbed6
Packit 6fbed6
* Wed Mar 18 2020 Petr Pisar <ppisar@redhat.com> - 0.9.11-14
Packit 6fbed6
- Fix CVE-2019-15690 (an integer overflow in HandleCursorShape() in a client)
Packit 6fbed6
  (bug #1814343)
Packit 6fbed6
Packit 6fbed6
* Thu Nov 28 2019 Jonas Ådahl <jadahl@redhat.com> - 0.9.11-13
Packit 6fbed6
- Manually apply new patch
Packit 6fbed6
  Resolves: #1684729
Packit 6fbed6
Packit 6fbed6
* Wed Nov 27 2019 Jonas Ådahl <jadahl@redhat.com> - 0.9.11-12
Packit 6fbed6
- Add API needed by gnome-remote-desktop to handle settings changes
Packit 6fbed6
  Resolves: #1684729
Packit 6fbed6
Packit 6fbed6
* Wed Nov 27 2019 Tomas Pelka <tpelka@redhat.com> - 0.9.11-11
Packit 6fbed6
- Enable gating through gnome-remote-desktop for now
Packit 6fbed6
  Resolves: #1765448
Packit 6fbed6
Packit 6fbed6
* Wed Nov 27 2019 Jonas Ådahl <jadahl@redhat.com> - 0.9.11-10
Packit 6fbed6
- Update TLS security type enablement patches
Packit 6fbed6
  Resolves: #1765448
Packit 6fbed6
Packit 6fbed6
* Thu Jan 10 2019 Petr Pisar <ppisar@redhat.com> - 0.9.11-9
Packit 6fbed6
- Fix CVE-2018-15127 (Heap out-of-bounds write in
Packit 6fbed6
  rfbserver.c:rfbProcessFileTransferReadBuffer()) (bug #1662997)
Packit 6fbed6
Packit 6fbed6
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.9.11-8
Packit 6fbed6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
Packit 6fbed6
Packit 6fbed6
* Tue Jun 19 2018 Jonas Ådahl <jadahl@redhat.com> - 0.9.11-7
Packit 6fbed6
- Add API to enable implementing TLS security type
Packit 6fbed6
Packit 6fbed6
* Mon Feb 26 2018 Petr Pisar <ppisar@redhat.com> - 0.9.11-6
Packit 6fbed6
- Fix CVE-2018-7225 (bug #1546860)
Packit 6fbed6
Packit 6fbed6
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.9.11-5.1
Packit 6fbed6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
Packit 6fbed6
Packit 6fbed6
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.9.11-4.1
Packit 6fbed6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
Packit 6fbed6
Packit 6fbed6
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.9.11-3.1
Packit 6fbed6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
Packit 6fbed6
Packit 6fbed6
* Wed May 17 2017 Rex Dieter <rdieter@fedoraproject.org> - 0.9.11-2.1
Packit 6fbed6
- revert soname bump for < f26
Packit 6fbed6
Packit 6fbed6
* Tue May 16 2017 Rex Dieter <rdieter@fedoraproject.org> - 0.9.11-2
Packit 6fbed6
- libvncclient sets +SRP in priority string (#1449605)
Packit 6fbed6
- libvncserver blocks gtk-vnc clients >= 0.7.0 (#1451321)
Packit 6fbed6
Packit 6fbed6
* Tue Feb 14 2017 Rex Dieter <rdieter@fedoraproject.org> - 0.9.11-1
Packit 6fbed6
- 0.9.11 (#1421948)
Packit 6fbed6
Packit 6fbed6
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.9.10-6
Packit 6fbed6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
Packit 6fbed6
Packit 6fbed6
* Thu Feb 18 2016 Than Ngo <than@redhat.com> - 0.9.10-5
Packit 6fbed6
- fix conflict with max() macro with gcc6, which causes build failure in KDE/Qt
Packit 6fbed6
  like krfb
Packit 6fbed6
Packit 6fbed6
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0.9.10-4
Packit 6fbed6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
Packit 6fbed6
Packit 6fbed6
* Thu Dec 17 2015 Simone Caronni <negativo17@gmail.com> - 0.9.10-3
Packit 6fbed6
- Update crypto policies patch.
Packit 6fbed6
Packit 6fbed6
* Sat Dec 12 2015 Simone Caronni <negativo17@gmail.com> - 0.9.10-2
Packit 6fbed6
- Add patch for using system crypto policies (#1179318).
Packit 6fbed6
Packit 6fbed6
* Fri Dec 11 2015 Simone Caronni <negativo17@gmail.com> - 0.9.10-1
Packit 6fbed6
- Update to official 0.9.10 release, update configure parameters and remove
Packit 6fbed6
  upstreamed patches.
Packit 6fbed6
- Trim changelog.
Packit 6fbed6
- Clean up SPEC file.
Packit 6fbed6
- Add license macro.
Packit 6fbed6
- Remove very old obsolete/provides on pacakge with camel case (LibVNCServer).
Packit 6fbed6
Packit 6fbed6
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.10-0.7.20140718git9453be42
Packit 6fbed6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
Packit 6fbed6
Packit 6fbed6
* Thu Sep 25 2014 Rex Dieter <rdieter@fedoraproject.org> 0.9.10-0.6.20140718git9453be42
Packit 6fbed6
- Security fixes (#1145878) ...
Packit 6fbed6
- CVE-2014-6051 (#1144287)
Packit 6fbed6
- CVE-2014-6052 (#1144288)
Packit 6fbed6
- CVE-2014-6053 (#1144289)
Packit 6fbed6
- CVE-2014-6054 (#1144291)
Packit 6fbed6
- CVE-2014-6055 (#1144293)
Packit 6fbed6
Packit 6fbed6
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.10-0.5.20140718git9453be42
Packit 6fbed6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
Packit 6fbed6
Packit 6fbed6
* Sun Aug 03 2014 Rex Dieter <rdieter@fedoraproject.org> 0.9.10-0.4.20140718git9453be42
Packit 6fbed6
- 20140718git9453be42 snapshot
Packit 6fbed6
Packit 6fbed6
* Sun Aug 03 2014 Rex Dieter <rdieter@fedoraproject.org> 0.9.10-0.3.20140405git646f844f
Packit 6fbed6
- include krfb patches (upstream pull request #16)
Packit 6fbed6
Packit 6fbed6
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.10-0.2.20140405git646f844f
Packit 6fbed6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
Packit 6fbed6
Packit 6fbed6
* Tue Apr 29 2014 Rex Dieter <rdieter@fedoraproject.org> 0.9.10-0.1.20140405git646f844f
Packit 6fbed6
- Update to the latest git commit 646f844 (#1092245)
Packit 6fbed6
Packit 6fbed6
* Mon Mar 31 2014 Rex Dieter <rdieter@fedoraproject.org> 0.9.9-11
Packit 6fbed6
- x11vnc crash when client connect (#972618)
Packit 6fbed6
  pull in some upstream commits that may help
Packit 6fbed6
Packit 6fbed6
* Sat Dec 21 2013 Rex Dieter <rdieter@fedoraproject.org> - 0.9.9-10
Packit 6fbed6
- include additional dependencies for x11vnc (#864947)
Packit 6fbed6
- %%build: --disable-silent-rules
Packit 6fbed6
- cleanup spec, drop support for old rpm (el5)
Packit 6fbed6
Packit 6fbed6
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.9-9
Packit 6fbed6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
Packit 6fbed6
Packit 6fbed6
* Tue Jul 23 2013 Rex Dieter <rdieter@fedoraproject.org> 0.9.9-8
Packit 6fbed6
- Automagic dependencies, explitictly build --with-gcrypt --with-png (#852660)
Packit 6fbed6
Packit 6fbed6
* Thu Feb 14 2013 Rex Dieter <rdieter@fedoraproject.org> 0.9.9-7
Packit 6fbed6
- pkgconfig love (#854111)
Packit 6fbed6
Packit 6fbed6
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.9-6
Packit 6fbed6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
Packit 6fbed6
Packit 6fbed6
* Fri Jan 18 2013 Adam Tkac <atkac redhat com> - 0.9.9-5
Packit 6fbed6
- rebuild due to "jpeg8-ABI" feature drop
Packit 6fbed6
Packit 6fbed6
* Fri Dec 21 2012 Adam Tkac <atkac redhat com> - 0.9.9-4
Packit 6fbed6
- rebuild against new libjpeg
Packit 6fbed6
Packit 6fbed6
* Thu Jul 26 2012 Rex Dieter <rdieter@fedoraproject.org> 0.9.9-3
Packit 6fbed6
- libvncserver fails to build in mock with selinux enabled (#843603)
Packit 6fbed6
Packit 6fbed6
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.9-2
Packit 6fbed6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
Packit 6fbed6
Packit 6fbed6
* Mon May 07 2012 Rex Dieter <rdieter@fedoraproject.org> 0.9.9-1
Packit 6fbed6
- 0.9.9