Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37851501
en ru br
Репозитории ALT

Группа :: Сети/Мгновенные сообщения
Пакет: purple-plugin-lurch

 Главная   Изменения   Спек   Патчи   Sources   Загрузить   Gear   Bugs and FR  Repocop 

Патч: 0001-SUSE-libomemo-fix-dino-compat.patch
Скачать


From 3de86316c9e0317fabf00114b840c192f02901a4 Mon Sep 17 00:00:00 2001
From: "Vladimir D. Seleznev" <vseleznv@altlinux.org>
Date: Sat, 5 Oct 2019 19:26:19 +0300
Subject: [PATCH] SUSE: libomemo fix dino compat
---
 lurch/lib/libomemo/src/libomemo.c | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/lurch/lib/libomemo/src/libomemo.c b/lurch/lib/libomemo/src/libomemo.c
index 5c8add1..577b69a 100644
--- a/lurch/lib/libomemo/src/libomemo.c
+++ b/lurch/lib/libomemo/src/libomemo.c
@@ -1356,9 +1356,9 @@ int omemo_message_get_encrypted_key(omemo_message * msg_p, uint32_t own_device_i
   const char * key_b64 = (void *) 0;
   size_t key_len = 0;
 
-
-  ret_val = expect_next_node(msg_p->header_node_p, mxmlGetFirstChild, KEY_NODE_NAME, &key_node_p);
-  if (ret_val) {
+  key_node_p = mxmlFindElement(msg_p->header_node_p, msg_p->header_node_p, KEY_NODE_NAME, NULL, NULL, MXML_DESCEND);
+  if (!key_node_p) {
+    // if there is not at least one key, skip the rest of the function
     ret_val = 0;
     *key_pp = (void *) 0;
     goto cleanup;
@@ -1430,8 +1430,9 @@ int omemo_message_export_decrypted(omemo_message * msg_p, uint8_t * key_p, size_
   }
   payload_p = g_base64_decode(payload_b64, &payload_len);
 
-  ret_val = expect_next_node(msg_p->header_node_p, mxmlGetLastChild, IV_NODE_NAME, &iv_node_p);
-  if (ret_val) {
+  iv_node_p = mxmlFindElement(msg_p->header_node_p, msg_p->header_node_p, IV_NODE_NAME, NULL, NULL, MXML_DESCEND);
+  if (!iv_node_p) {
+    ret_val = OMEMO_ERR_MALFORMED_XML;
     goto cleanup;
   }
 
-- 
2.29.2
 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin