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