summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Tsoy <alexander@tsoy.me>2020-06-29 10:52:36 +0300
committerAaron Bauman <bman@gentoo.org>2020-06-29 13:29:20 -0400
commit3cc06e5fd4889a3fd2d77d6a411efe0f82f37777 (patch)
tree0f119d4890e2eb677c9ceb9550d6e14612f3c63d /net-libs/libvncserver/files/libvncserver-0.9.12-sparc-unaligned.patch
parentdev-ruby/asciimath: add missing test dep (diff)
downloadgentoo-3cc06e5fd4889a3fd2d77d6a411efe0f82f37777.tar.gz
gentoo-3cc06e5fd4889a3fd2d77d6a411efe0f82f37777.tar.bz2
gentoo-3cc06e5fd4889a3fd2d77d6a411efe0f82f37777.zip
net-libs/libvncserver: Security cleanup
Bug: https://bugs.gentoo.org/728594 Signed-off-by: Alexander Tsoy <alexander@tsoy.me> Closes: https://github.com/gentoo/gentoo/pull/16483 Signed-off-by: Aaron Bauman <bman@gentoo.org>
Diffstat (limited to 'net-libs/libvncserver/files/libvncserver-0.9.12-sparc-unaligned.patch')
-rw-r--r--net-libs/libvncserver/files/libvncserver-0.9.12-sparc-unaligned.patch40
1 files changed, 0 insertions, 40 deletions
diff --git a/net-libs/libvncserver/files/libvncserver-0.9.12-sparc-unaligned.patch b/net-libs/libvncserver/files/libvncserver-0.9.12-sparc-unaligned.patch
deleted file mode 100644
index dce787f1295a..000000000000
--- a/net-libs/libvncserver/files/libvncserver-0.9.12-sparc-unaligned.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From 0cf1400c61850065de590d403f6d49e32882fd76 Mon Sep 17 00:00:00 2001
-From: Rolf Eike Beer <eike@sf-mail.de>
-Date: Tue, 28 May 2019 18:30:46 +0200
-Subject: [PATCH] fix crash because of unaligned accesses in
- hybiReadAndDecode()
-
----
- libvncserver/ws_decode.c | 7 ++++---
- 1 file changed, 4 insertions(+), 3 deletions(-)
-
-diff --git a/libvncserver/ws_decode.c b/libvncserver/ws_decode.c
-index 441ebc7..10c44d1 100644
---- a/libvncserver/ws_decode.c
-+++ b/libvncserver/ws_decode.c
-@@ -327,7 +327,6 @@ hybiReadAndDecode(ws_ctx_t *wsctx, char *dst, int len, int *sockRet, int nInBuf)
- int bufsize;
- int nextRead;
- unsigned char *data;
-- uint32_t *data32;
-
- /* if data was carried over, copy to start of buffer */
- memcpy(wsctx->writePos, wsctx->carryBuf, wsctx->carrylen);
-@@ -383,10 +382,12 @@ hybiReadAndDecode(ws_ctx_t *wsctx, char *dst, int len, int *sockRet, int nInBuf)
- /* for a possible base64 decoding, we decode multiples of 4 bytes until
- * the whole frame is received and carry over any remaining bytes in the carry buf*/
- data = (unsigned char *)(wsctx->writePos - toDecode);
-- data32= (uint32_t *)data;
-
- for (i = 0; i < (toDecode >> 2); i++) {
-- data32[i] ^= wsctx->header.mask.u;
-+ uint32_t tmp;
-+ memcpy(&tmp, data + i * sizeof(tmp), sizeof(tmp));
-+ tmp ^= wsctx->header.mask.u;
-+ memcpy(data + i * sizeof(tmp), &tmp, sizeof(tmp));
- }
- ws_dbg("mask decoding; i=%d toDecode=%d\n", i, toDecode);
-
---
-2.16.4
-