Merge branch 'rawhide' into epel8

This commit is contained in:
Nick Bebout 2021-06-21 14:32:34 -05:00
commit c53ad981ac
4 changed files with 108 additions and 8 deletions

23
patch-src_common_types.h Normal file
View File

@ -0,0 +1,23 @@
Fix with Qt5-5.14
Obtained from:
https://github.com/quassel/quassel/commit/579e559a6322209df7cd51c34801fecff5fe734b
--- src/common/types.h.orig 2020-04-04 10:50:56 UTC
+++ src/common/types.h
@@ -140,6 +140,7 @@ Q_DECLARE_METATYPE(QHostAddress)
typedef QList<MsgId> MsgIdList;
typedef QList<BufferId> BufferIdList;
+#if QT_VERSION < QT_VERSION_CHECK(5, 14, 0)
/**
* Catch-all stream serialization operator for enum types.
*
@@ -169,6 +170,7 @@ QDataStream &operator>>(QDataStream &in, T &value) {
value = static_cast<T>(v);
return in;
}
+#endif
// Exceptions

39
quassel-gcc11.patch Normal file
View File

@ -0,0 +1,39 @@
diff --git a/src/common/protocols/datastream/datastreampeer.cpp b/src/common/protocols/datastream/datastreampeer.cpp
index 033639e..8c65f79 100644
--- src/common/protocols/datastream/datastreampeer.cpp
+++ src/common/protocols/datastream/datastreampeer.cpp
@@ -18,6 +18,8 @@
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
***************************************************************************/
+#include <limits>
+
#include <QtEndian>
#include <QDataStream>
#include <QHostAddress>
diff --git a/src/common/remotepeer.cpp b/src/common/remotepeer.cpp
index bc9f9d0..89bee40 100644
--- src/common/remotepeer.cpp
+++ src/common/remotepeer.cpp
@@ -18,6 +18,8 @@
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
***************************************************************************/
+#include <limits>
+
#include <QtEndian>
#include <QHostAddress>
diff --git a/src/core/coretransfer.cpp b/src/core/coretransfer.cpp
index cf12088..031aaa0 100644
--- src/core/coretransfer.cpp
+++ src/core/coretransfer.cpp
@@ -18,6 +18,8 @@
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
***************************************************************************/
+#include <limits>
+
#include <QtEndian>
#include <QCoreApplication>

View File

@ -4,12 +4,18 @@
Name: quassel
Summary: A modern distributed IRC system
Version: 0.13.1
Release: 4%{?dist}
Release: 8%{?dist}
License: GPLv2 or GPLv3
URL: http://quassel-irc.org/
Source0: http://quassel-irc.org/pub/quassel-%{version}.tar.bz2
# patch from freebsd ports treee
#https://github.com/freebsd/freebsd-ports/blob/b6c49e02ef34b163293e453c7245093cb7668a40/irc/quassel/files/patch-src_common_types.h
Patch0: https://raw.githubusercontent.com/freebsd/freebsd-ports/b6c49e02ef34b163293e453c7245093cb7668a40/irc/quassel/files/patch-src_common_types.h
Patch1: %{name}-gcc11.patch
Patch2: quassel_0.13.1_CVE-2021-34825.patch
BuildRequires: cmake
BuildRequires: dbusmenu-qt5-devel
BuildRequires: desktop-file-utils
@ -93,18 +99,16 @@ Quassel client
%prep
%setup -q -n %{name}-%{version}
%autosetup -p0 -n %{name}-%{version}
%build
mkdir build
pushd build
%{cmake_kf5} .. -DWANT_MONO=1 -DUSE_QT5=1 -DWITH_KDE=1 -DHAVE_SSL=1
popd
%cmake_kf5 \
-DWANT_MONO=1 -DUSE_QT5=1 -DWITH_KDE=1 -DHAVE_SSL=1
make %{?_smp_mflags} -C build
%cmake_build
%install
make install/fast DESTDIR=%{buildroot} -C build
%cmake_install
# unpackaged files
rm -f %{buildroot}/%{_datadir}/pixmaps/quassel.png
@ -171,6 +175,22 @@ exit 0
%changelog
* Thu Jun 17 2021 Chris Egeland <chris@chrisegeland.com> - 0.13.1-8
- Added security fix for CVE-2021-34825
* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 0.13.1-7
- Rebuilt for updated systemd-rpm-macros
See https://pagure.io/fesco/issue/2583.
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.13.1-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Fri Oct 16 2020 Jeff Law <law@redhat.com> - 0.13.1-6
- Fix missing #include for gcc-11
* Mon Jul 13 2020 Marie Loise Nolden <loise@kde.org> - 0.13.1-5
- Fix for Qt 5.14.2 from FreeBSD ports tree
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.13.1-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild

View File

@ -0,0 +1,18 @@
diff --git src/core/sslserver.cpp src/core/sslserver.cpp
index de420bd8..e4fcbc32 100644
--- src/core/sslserver.cpp
+++ src/core/sslserver.cpp
@@ -52,6 +52,13 @@ SslServer::SslServer(QObject *parent)
// Initialize the certificates for first-time usage
if (!loadCerts()) {
+ // If the core is unable to load a certificate, and "--require-ssl" is specified,
+ // do not proceed, throw an exception and quit. This prevents the core from falling
+ // back to a plaintext-only core when they should be expecting SSL/TLS only.
+ if (Quassel::isOptionSet("require-ssl")) {
+ throw ExitException{EXIT_FAILURE, tr("--require-ssl is set, but no SSL certificate is available. Exiting.\n"
+ "Please see https://quassel-irc.org/faq/cert to learn how to enable SSL support.")};
+ }
if (!sslWarningShown) {
quWarning()
<< "SslServer: Unable to set certificate file\n"