diff options
-rw-r--r-- | user/tigervnc/APKBUILD | 20 | ||||
-rw-r--r-- | user/tigervnc/endian.patch | 51 | ||||
-rw-r--r-- | user/tigervnc/ensure-throw.patch | 59 | ||||
-rw-r--r-- | user/tigervnc/initialise-var.patch | 24 | ||||
-rw-r--r-- | user/tigervnc/null-termination.patch | 39 |
5 files changed, 5 insertions, 188 deletions
diff --git a/user/tigervnc/APKBUILD b/user/tigervnc/APKBUILD index 3acea2e2d..7e088b1eb 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.10.1 +pkgrel=0 pkgdesc="High-performance, platform-neutral VNC remote desktop application" url="https://tigervnc.org/" arch="all" @@ -15,15 +15,10 @@ makedepends="cmake fltk-dev fontconfig-dev gnutls-dev intltool 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 " build() { - cd "$builddir" if [ "$CBUILD" != "$CHOST" ]; then CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux" fi @@ -34,19 +29,14 @@ 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 +sha512sums="3486ff772d39217feb8c075860cae58e1021bdb8095443d8b5c383929cc6c622b57ea61c31d06ff0bd48c7e6889db4b6a99d0742bdd60edf323fb2a3ad328705 tigervnc-1.10.1.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" +f95328f6b669e6608b9971de3db25d5eb26a733fbe32f13291c309ed57eacba6c86461a516c3b8cdc12ff7482ee0249a45189864d473d52df81df0a3541d95b9 0001-CSecurityTLS-Use-size_t-as-argument-for-new.patch" 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) |