blob: d09d52c292a6540151412b54ce1dfc422ea576c1 [file] [log] [blame]
From c2aaac0083f58d285b8feb24f13fe347d7f726fe Mon Sep 17 00:00:00 2001
From: Rolf Eike Beer <eike@sf-mail.de>
Date: Sat, 17 Mar 2018 10:28:00 +0000
Subject: [PATCH] WebSockets: Avoid unaligned memory access
This is causing test failures in SPARC architectures.
https://bugzilla.gnome.org/show_bug.cgi?id=794421
---
libsoup/soup-websocket-connection.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/libsoup/soup-websocket-connection.c b/libsoup/soup-websocket-connection.c
index 0258a22c..35eee6a6 100644
--- a/libsoup/soup-websocket-connection.c
+++ b/libsoup/soup-websocket-connection.c
@@ -401,9 +401,10 @@ send_message (SoupWebsocketConnection *self,
* probably a client somewhere that's not expecting it.
*/
if (self->pv->connection_type == SOUP_WEBSOCKET_CONNECTION_CLIENT) {
+ guint32 rnd = g_random_int ();
outer[1] |= 0x80;
mask = outer + bytes->len;
- * ((guint32 *)mask) = g_random_int ();
+ memcpy (mask, &rnd, sizeof (rnd));
bytes->len += 4;
}