summaryrefslogtreecommitdiff
path: root/user/tigervnc
diff options
context:
space:
mode:
Diffstat (limited to 'user/tigervnc')
-rw-r--r--user/tigervnc/0001-CSecurityTLS-Use-size_t-as-argument-for-new.patch66
-rw-r--r--user/tigervnc/APKBUILD27
-rw-r--r--user/tigervnc/endian.patch51
-rw-r--r--user/tigervnc/ensure-throw.patch59
-rw-r--r--user/tigervnc/initialise-var.patch24
-rw-r--r--user/tigervnc/null-termination.patch39
-rw-r--r--user/tigervnc/use-intltool.patch32
7 files changed, 6 insertions, 292 deletions
diff --git a/user/tigervnc/0001-CSecurityTLS-Use-size_t-as-argument-for-new.patch b/user/tigervnc/0001-CSecurityTLS-Use-size_t-as-argument-for-new.patch
deleted file mode 100644
index 1c608048c..000000000
--- a/user/tigervnc/0001-CSecurityTLS-Use-size_t-as-argument-for-new.patch
+++ /dev/null
@@ -1,66 +0,0 @@
-From 065a471d16636c3fba5da8aed86ffa30dcfd489b Mon Sep 17 00:00:00 2001
-From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
-Date: Wed, 20 Mar 2019 13:22:51 -0500
-Subject: [PATCH 1/2] CSecurityTLS: Use size_t as argument for new
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Using an 'int' is invalid, and produces the following output under GCC 8.3.0:
-
-tigervnc-1.9.0/common/rfb/CSecurityTLS.cxx: In member function ‘void rfb::CSecurityTLS::checkSession()’:
-tigervnc-1.9.0/common/rfb/CSecurityTLS.cxx:384:11: error: specified bound range [18446744071562067968, 18446744073709551615] exceeds ‘INT_MAX’ [-Werror=format-truncation=]
- snprintf(certinfo, len, "This certificate has been signed by an unknown "
- ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- "authority:\n\n%s\n\nDo you want to save it and "
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- "continue? ", info.data);
- ~~~~~~~~~~~~~~~~~~~~~~~~
-tigervnc-1.9.0/common/rfb/CSecurityTLS.cxx:380:26: error: argument 1 range [18446744071562067968, 18446744073709551615] exceeds maximum object size 9223372036854775807 [-Werror=alloc-size-larger-than=]
- certinfo = new char[len];
- ^
-In file included from /usr/include/c++/8.3.0/ext/new_allocator.h:33,
- from /usr/include/c++/8.3.0/powerpc64-foxkit-linux-musl/bits/c++allocator.h:33,
- from /usr/include/c++/8.3.0/bits/allocator.h:46,
- from /usr/include/c++/8.3.0/bits/stl_tree.h:64,
- from /usr/include/c++/8.3.0/set:60,
- from tigervnc-1.9.0/common/rfb/ConnParams.h:26,
- from tigervnc-1.9.0/common/rfb/SMsgHandler.h:28,
- from tigervnc-1.9.0/common/rfb/SConnection.h:29,
- from tigervnc-1.9.0/common/rfb/SSecurity.h:47,
- from tigervnc-1.9.0/common/rfb/SSecurityStack.h:23,
- from tigervnc-1.9.0/common/rfb/SSecurityVeNCrypt.h:32,
- from tigervnc-1.9.0/common/rfb/CSecurityTLS.h:34,
- from tigervnc-1.9.0/common/rfb/CSecurityTLS.cxx:36:
-/usr/include/c++/8.3.0/new:122:7: note: in a call to allocation function ‘void* operator new [](std::size_t)’ declared here
- void* operator new[](std::size_t) _GLIBCXX_THROW (std::bad_alloc)
- ^~~~~~~~
----
- common/rfb/CSecurityTLS.cxx | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/common/rfb/CSecurityTLS.cxx b/common/rfb/CSecurityTLS.cxx
-index c6d1e310..235df45d 100644
---- a/common/rfb/CSecurityTLS.cxx
-+++ b/common/rfb/CSecurityTLS.cxx
-@@ -383,7 +383,7 @@ void CSecurityTLS::checkSession()
- size_t out_size = 0;
- char *out_buf = NULL;
- char *certinfo = NULL;
-- int len = 0;
-+ size_t len = 0;
-
- vlog.debug("certificate issuer unknown");
-
-@@ -403,7 +403,7 @@ void CSecurityTLS::checkSession()
- "authority:\n\n%s\n\nDo you want to save it and "
- "continue? ", info.data);
-
-- for (int i = 0; i < len - 1; i++)
-+ for (size_t i = 0; i < len - 1; i++)
- if (certinfo[i] == ',' && certinfo[i + 1] == ' ')
- certinfo[i] = '\n';
-
---
-2.19.2
-
diff --git a/user/tigervnc/APKBUILD b/user/tigervnc/APKBUILD
index 3acea2e2d..cc4406240 100644
--- a/user/tigervnc/APKBUILD
+++ b/user/tigervnc/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: A. Wilcox <awilfox@adelielinux.org>
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=tigervnc
-pkgver=1.9.0
-pkgrel=4
+pkgver=1.13.1
+pkgrel=0
pkgdesc="High-performance, platform-neutral VNC remote desktop application"
url="https://tigervnc.org/"
arch="all"
@@ -11,19 +11,11 @@ license="GPL-2.0"
depends=""
makedepends="cmake fltk-dev fontconfig-dev gnutls-dev intltool
libjpeg-turbo-dev libx11-dev libxcursor-dev libxfixes-dev libxft-dev
- libxrender-dev libxtst-dev linux-pam-dev zlib-dev"
+ libxrender-dev libxtst-dev linux-pam-dev pixman-dev zlib-dev"
subpackages="$pkgname-lang $pkgname-doc"
-source="tigervnc-$pkgver.tar.gz::https://github.com/TigerVNC/tigervnc/archive/v$pkgver.tar.gz
- use-intltool.patch
- endian.patch
- 0001-CSecurityTLS-Use-size_t-as-argument-for-new.patch
- null-termination.patch
- initialise-var.patch
- ensure-throw.patch
- "
+source="tigervnc-$pkgver.tar.gz::https://github.com/TigerVNC/tigervnc/archive/v$pkgver.tar.gz"
build() {
- cd "$builddir"
if [ "$CBUILD" != "$CHOST" ]; then
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
fi
@@ -34,19 +26,12 @@ build() {
-DCMAKE_CXX_FLAGS="$CXXFLAGS -faligned-new -Wno-c++11-compat -Wno-maybe-uninitialized" \
-DCMAKE_C_FLAGS="$CFLAGS" \
-Wno-dev \
- ${CMAKE_CROSSOPTS}
+ ${CMAKE_CROSSOPTS} .
make
}
package() {
- cd "$builddir"
make DESTDIR="$pkgdir" install
}
-sha512sums="333910f567e6b5e4a5a22d898b2d4c3f4b834cb4cc8fc13ff55d31401894c0d5122a127692ec5eb51e412c945ff3ea5b8146f9ab22cbe1e47541e09239ec8c9d tigervnc-1.9.0.tar.gz
-5c1cee98b7ba41c7cf121480fdfe16d5ef17c9562ff2ba3ea4e74235161fc63e2e3ed63e788c0aa999610b660b394c1269d6fdcc9716c5563651fd67d723f619 use-intltool.patch
-189a51a542b368e4db22174d09f5b656848e94577bbf93b2388f54529f1c7c2d32e5b5283551b3fb067ba21f6464f60989e22d4cd11ed3d87d5c931301555b49 endian.patch
-f95328f6b669e6608b9971de3db25d5eb26a733fbe32f13291c309ed57eacba6c86461a516c3b8cdc12ff7482ee0249a45189864d473d52df81df0a3541d95b9 0001-CSecurityTLS-Use-size_t-as-argument-for-new.patch
-82566734e5288e899048b918ce47f5abc3b94196e88d54fa0b0ef68c20d1fcd9d5854f36a0043d28f81dc6213c9ee8cf55fb187aeeb8add5fc31765f6a5b23bb null-termination.patch
-a7fb612d7e3625b66db66ffc7e3f28f2e47f79b858ff1fd9e403576ef2b8ff7bc8cf83a6f67439de6242e4a11a0144119d040f8f9e917e17a8af512b47067360 initialise-var.patch
-4656a617dcb2bd28b653932fa034b7d46c49a08be4ba90501a9d1ddfad2130209664abf7bf5227f0afc926a568eb83e8e5f25e73887bf2561b2077fb1dab84c9 ensure-throw.patch"
+sha512sums="9190dbcd3b57ba52286c158c0675104d68463d7e3ea8e23493514b64451ddb511f3daf0f177339bc231155daea376d9c8dc58216663e10aa12f67468f4559da5 tigervnc-1.13.1.tar.gz"
diff --git a/user/tigervnc/endian.patch b/user/tigervnc/endian.patch
deleted file mode 100644
index e09edf9c5..000000000
--- a/user/tigervnc/endian.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-diff --git a/vncviewer/Surface_X11.cxx b/vncviewer/Surface_X11.cxx
-index 3523da3d..6562634d 100644
---- a/vncviewer/Surface_X11.cxx
-+++ b/vncviewer/Surface_X11.cxx
-@@ -109,6 +109,7 @@ void Surface::blend(Surface* dst, int src_x, int src_y, int x, int y, int w, int
-
- void Surface::alloc()
- {
-+ XRenderPictFormat templ;
- XRenderPictFormat* format;
-
- // Might not be open at this point
-@@ -117,7 +118,37 @@ void Surface::alloc()
- pixmap = XCreatePixmap(fl_display, XDefaultRootWindow(fl_display),
- width(), height(), 32);
-
-- format = XRenderFindStandardFormat(fl_display, PictStandardARGB32);
-+ // Our code assumes a BGRA byte order, regardless of what the endian
-+ // of the machine is or the native byte order of XImage, so make sure
-+ // we find such a format
-+ templ.type = PictTypeDirect;
-+ templ.depth = 32;
-+#if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
-+ templ.direct.alpha = 0;
-+ templ.direct.red = 8;
-+ templ.direct.green = 16;
-+ templ.direct.blue = 24;
-+#else
-+ templ.direct.alpha = 24;
-+ templ.direct.red = 16;
-+ templ.direct.green = 8;
-+ templ.direct.blue = 0;
-+#endif
-+ templ.direct.alphaMask = 0xff;
-+ templ.direct.redMask = 0xff;
-+ templ.direct.greenMask = 0xff;
-+ templ.direct.blueMask = 0xff;
-+
-+ format = XRenderFindFormat(fl_display, PictFormatType | PictFormatDepth |
-+ PictFormatRed | PictFormatRedMask |
-+ PictFormatGreen | PictFormatGreenMask |
-+ PictFormatBlue | PictFormatBlueMask |
-+ PictFormatAlpha | PictFormatAlphaMask,
-+ &templ, 0);
-+
-+ if (!format)
-+ throw rdr::Exception("XRenderFindFormat");
-+
- picture = XRenderCreatePicture(fl_display, pixmap, format, 0, NULL);
-
- visFormat = XRenderFindVisualFormat(fl_display, fl_visual->visual);
diff --git a/user/tigervnc/ensure-throw.patch b/user/tigervnc/ensure-throw.patch
deleted file mode 100644
index da873fe21..000000000
--- a/user/tigervnc/ensure-throw.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-From 78bdd1700c4e42b492286a2af25bea0825848f99 Mon Sep 17 00:00:00 2001
-From: Pierre Ossman <ossman@cendio.se>
-Date: Tue, 26 Mar 2019 11:10:28 +0100
-Subject: [PATCH] Add missing throws for exception
-
-It is not enough to create an exception object, you need to throw
-it as well.
----
- common/rfb/CSecurityTLS.cxx | 10 +++++-----
- win/rfb_win32/Registry.cxx | 2 +-
- 2 files changed, 6 insertions(+), 6 deletions(-)
-
-diff --git a/common/rfb/CSecurityTLS.cxx b/common/rfb/CSecurityTLS.cxx
-index c6d1e3103..aa1910909 100644
---- a/common/rfb/CSecurityTLS.cxx
-+++ b/common/rfb/CSecurityTLS.cxx
-@@ -391,7 +391,7 @@ void CSecurityTLS::checkSession()
- "authority:\n\n%s\n\nDo you want to save it and "
- "continue?\n ", info.data);
- if (len < 0)
-- AuthFailureException("certificate decoding error");
-+ throw AuthFailureException("certificate decoding error");
-
- vlog.debug("%s", info.data);
-
-@@ -417,16 +417,16 @@ void CSecurityTLS::checkSession()
-
- if (gnutls_x509_crt_export(crt, GNUTLS_X509_FMT_PEM, NULL, &out_size)
- == GNUTLS_E_SHORT_MEMORY_BUFFER)
-- AuthFailureException("Out of memory");
-+ throw AuthFailureException("Out of memory");
-
- // Save cert
- out_buf = new char[out_size];
- if (out_buf == NULL)
-- AuthFailureException("Out of memory");
-+ throw AuthFailureException("Out of memory");
-
- if (gnutls_x509_crt_export(crt, GNUTLS_X509_FMT_PEM, out_buf, &out_size) < 0)
-- AuthFailureException("certificate issuer unknown, and certificate "
-- "export failed");
-+ throw AuthFailureException("certificate issuer unknown, and certificate "
-+ "export failed");
-
- char *homeDir = NULL;
- if (getvnchomedir(&homeDir) == -1)
-diff --git a/win/rfb_win32/Registry.cxx b/win/rfb_win32/Registry.cxx
-index 963a36a29..9cd501842 100644
---- a/win/rfb_win32/Registry.cxx
-+++ b/win/rfb_win32/Registry.cxx
-@@ -254,7 +254,7 @@ TCHAR* RegKey::getRepresentation(const TCHAR* valname) const {
- TCharArray result(required);
- length = ExpandEnvironmentStrings(str.buf, result.buf, required);
- if (required<length)
-- rdr::Exception("unable to expand environment strings");
-+ throw rdr::Exception("unable to expand environment strings");
- return result.takeBuf();
- } else {
- return tstrDup(_T(""));
diff --git a/user/tigervnc/initialise-var.patch b/user/tigervnc/initialise-var.patch
deleted file mode 100644
index f58a4dadc..000000000
--- a/user/tigervnc/initialise-var.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From 44cf1d64ecf80c061c0a2b0f0167094e58782102 Mon Sep 17 00:00:00 2001
-From: Pierre Ossman <ossman@cendio.se>
-Date: Mon, 25 Mar 2019 16:14:49 +0100
-Subject: [PATCH] Don't use un-initialized stride to base constructor
-
-We can use a dummy value here as we set up the buffer and stride
-further down in the constructor.
----
- vncviewer/PlatformPixelBuffer.cxx | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/vncviewer/PlatformPixelBuffer.cxx b/vncviewer/PlatformPixelBuffer.cxx
-index 1e9803eb2..ff1935e74 100644
---- a/vncviewer/PlatformPixelBuffer.cxx
-+++ b/vncviewer/PlatformPixelBuffer.cxx
-@@ -36,7 +36,7 @@ static rfb::LogWriter vlog("PlatformPixelBuffer");
- PlatformPixelBuffer::PlatformPixelBuffer(int width, int height) :
- FullFramePixelBuffer(rfb::PixelFormat(32, 24, false, true,
- 255, 255, 255, 16, 8, 0),
-- width, height, 0, stride),
-+ width, height, NULL, 0),
- Surface(width, height)
- #if !defined(WIN32) && !defined(__APPLE__)
- , shminfo(NULL), xim(NULL)
diff --git a/user/tigervnc/null-termination.patch b/user/tigervnc/null-termination.patch
deleted file mode 100644
index e80a4f62d..000000000
--- a/user/tigervnc/null-termination.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From 7240f62ddc06643f982456c05c11d8afe5422069 Mon Sep 17 00:00:00 2001
-From: Pierre Ossman <ossman@cendio.se>
-Date: Tue, 26 Mar 2019 11:11:20 +0100
-Subject: [PATCH] Handle server name overflow properly
-
-We need to make sure it is null terminated on truncation. We also
-need to avoid giving a too large size argument or modern gcc will
-complain.
----
- vncviewer/vncviewer.cxx | 9 ++++++---
- 1 file changed, 6 insertions(+), 3 deletions(-)
-
-diff --git a/vncviewer/vncviewer.cxx b/vncviewer/vncviewer.cxx
-index d7cbd6e36..4a8370b95 100644
---- a/vncviewer/vncviewer.cxx
-+++ b/vncviewer/vncviewer.cxx
-@@ -411,7 +411,8 @@ potentiallyLoadConfigurationFile(char *vncServerName)
- newServerName = loadViewerParameters(vncServerName);
- // This might be empty, but we still need to clear it so we
- // don't try to connect to the filename
-- strncpy(vncServerName, newServerName, VNCSERVERNAMELEN);
-+ strncpy(vncServerName, newServerName, VNCSERVERNAMELEN-1);
-+ vncServerName[VNCSERVERNAMELEN-1] = '\0';
- } catch (rfb::Exception& e) {
- vlog.error("%s", e.str());
- if (alertOnFatalError)
-@@ -541,8 +542,10 @@ int main(int argc, char** argv)
- try {
- const char* configServerName;
- configServerName = loadViewerParameters(NULL);
-- if (configServerName != NULL)
-- strncpy(defaultServerName, configServerName, VNCSERVERNAMELEN);
-+ if (configServerName != NULL) {
-+ strncpy(defaultServerName, configServerName, VNCSERVERNAMELEN-1);
-+ defaultServerName[VNCSERVERNAMELEN-1] = '\0';
-+ }
- } catch (rfb::Exception& e) {
- vlog.error("%s", e.str());
- if (alertOnFatalError)
diff --git a/user/tigervnc/use-intltool.patch b/user/tigervnc/use-intltool.patch
deleted file mode 100644
index 930bf21eb..000000000
--- a/user/tigervnc/use-intltool.patch
+++ /dev/null
@@ -1,32 +0,0 @@
---- tigervnc-1.9.0/vncviewer/CMakeLists.txt.old 2018-07-16 14:08:55.000000000 +0000
-+++ tigervnc-1.9.0/vncviewer/CMakeLists.txt 2018-07-25 05:43:25.670000000 +0000
-@@ -66,14 +66,7 @@
-
- configure_file(vncviewer.desktop.in.in vncviewer.desktop.in)
- find_program(INTLTOOL_MERGE_EXECUTABLE intltool-merge)
-- if("${GETTEXT_VERSION_STRING}" VERSION_GREATER 0.18.99)
-- add_custom_command(OUTPUT vncviewer.desktop
-- COMMAND ${GETTEXT_MSGFMT_EXECUTABLE}
-- --desktop --template vncviewer.desktop.in
-- -d ${CMAKE_SOURCE_DIR}/po -o vncviewer.desktop
-- DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/vncviewer.desktop.in
-- )
-- elseif(INTLTOOL_MERGE_EXECUTABLE)
-+ if(INTLTOOL_MERGE_EXECUTABLE)
- add_custom_command(OUTPUT vncviewer.desktop
- COMMAND sed -e 's/^Name/_Name/'
- -e 's/^GenericName/_GenericName/'
-@@ -84,6 +77,13 @@
- vncviewer.desktop.intl vncviewer.desktop
- DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/vncviewer.desktop.in
- )
-+ elseif("${GETTEXT_VERSION_STRING}" VERSION_GREATER 0.18.99)
-+ add_custom_command(OUTPUT vncviewer.desktop
-+ COMMAND ${GETTEXT_MSGFMT_EXECUTABLE}
-+ --desktop --template vncviewer.desktop.in
-+ -d ${CMAKE_SOURCE_DIR}/po -o vncviewer.desktop
-+ DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/vncviewer.desktop.in
-+ )
- else()
- add_custom_command(OUTPUT vncviewer.desktop
- COMMAND cp vncviewer.desktop.in vncviewer.desktop