diff options
Diffstat (limited to 'meta-openembedded/meta-multimedia/recipes-connectivity/gupnp')
4 files changed, 157 insertions, 2 deletions
diff --git a/meta-openembedded/meta-multimedia/recipes-connectivity/gupnp/gupnp-av/0001-all-Drop-xmlRecoverMemory.patch b/meta-openembedded/meta-multimedia/recipes-connectivity/gupnp/gupnp-av/0001-all-Drop-xmlRecoverMemory.patch new file mode 100644 index 0000000000..92b52ad98a --- /dev/null +++ b/meta-openembedded/meta-multimedia/recipes-connectivity/gupnp/gupnp-av/0001-all-Drop-xmlRecoverMemory.patch @@ -0,0 +1,44 @@ +From d99f71a4a52da7582d5e26992a1ab303b280d28a Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Fri, 30 Jun 2023 03:23:12 -0700 +Subject: [PATCH] Drop xmlRecoverMemory + +newer libxml has deprecated xmlRecoverMemory therefore replace it with xmlReadMemory + +Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/gupnp/-/commit/80e68995b745a5900eaaa1d0c424d3a9d354e42d] + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + gupnp-didl-lite-parser.c | 2 +- + gupnp-feature-list-parser.c | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/gupnp-didl-lite-parser.c b/gupnp-didl-lite-parser.c +index 3a5727f..840d718 100644 +--- a/libgupnp-av/gupnp-didl-lite-parser.c ++++ b/libgupnp-av/gupnp-didl-lite-parser.c +@@ -230,7 +230,7 @@ gupnp_didl_lite_parser_parse_didl_recursive (GUPnPDIDLLiteParser *parser, + GUPnPAVXMLDoc *xml_doc = NULL; + gboolean result; + +- doc = xmlRecoverMemory (didl, strlen (didl)); ++ doc = xmlReadMemory (didl, strlen (didl), NULL, NULL, XML_PARSE_NONET | XML_PARSE_RECOVER); + if (doc == NULL) { + g_set_error (error, + G_MARKUP_ERROR, +diff --git a/gupnp-feature-list-parser.c b/gupnp-feature-list-parser.c +index 16208b5..f804fe7 100644 +--- a/libgupnp-av/gupnp-feature-list-parser.c ++++ b/libgupnp-av/gupnp-feature-list-parser.c +@@ -114,7 +114,7 @@ gupnp_feature_list_parser_parse_text + xmlNode *element; + GList *feature_list = NULL; + +- doc = xmlRecoverMemory (text, strlen (text)); ++ doc = xmlReadMemory (text, strlen (text), NULL, NULL, XML_PARSE_NONET | XML_PARSE_RECOVER); + if (doc == NULL) { + g_set_error (error, + G_MARKUP_ERROR, +-- +2.41.0 + diff --git a/meta-openembedded/meta-multimedia/recipes-connectivity/gupnp/gupnp-av_0.14.0.bb b/meta-openembedded/meta-multimedia/recipes-connectivity/gupnp/gupnp-av_0.14.0.bb index b253c54d92..48de5868de 100644 --- a/meta-openembedded/meta-multimedia/recipes-connectivity/gupnp/gupnp-av_0.14.0.bb +++ b/meta-openembedded/meta-multimedia/recipes-connectivity/gupnp/gupnp-av_0.14.0.bb @@ -8,5 +8,7 @@ DEPENDS = "gupnp" inherit meson pkgconfig gobject-introspection vala -SRC_URI = "${GNOME_MIRROR}/${BPN}/0.14/${BPN}-${PV}.tar.xz" +SRC_URI = "${GNOME_MIRROR}/${BPN}/0.14/${BPN}-${PV}.tar.xz \ + file://0001-all-Drop-xmlRecoverMemory.patch \ + " SRC_URI[sha256sum] = "20aed546fc882e78a3f186a0c8bce5c841cc3a44b7ea528298fbdc82596fb156" diff --git a/meta-openembedded/meta-multimedia/recipes-connectivity/gupnp/gupnp/0001-all-Drop-xmlRecoverMemory.patch b/meta-openembedded/meta-multimedia/recipes-connectivity/gupnp/gupnp/0001-all-Drop-xmlRecoverMemory.patch new file mode 100644 index 0000000000..a3941f345f --- /dev/null +++ b/meta-openembedded/meta-multimedia/recipes-connectivity/gupnp/gupnp/0001-all-Drop-xmlRecoverMemory.patch @@ -0,0 +1,107 @@ +From 46f13d9929c81ec2340a1a5d48f596b1892c5a81 Mon Sep 17 00:00:00 2001 +From: Jens Georg <mail@jensge.org> +Date: Thu, 4 May 2023 19:14:29 +0200 +Subject: [PATCH] all: Drop xmlRecoverMemory + +use xmlReadMemory, also use NONET flat + +Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> +Upstream-Status: Backport [https://github.com/GNOME/gupnp/commit/80e68995b745a5900eaaa1d0c424d3a9d354e42d] +--- + libgupnp/gupnp-control-point.c | 7 +++++-- + libgupnp/gupnp-service-info.c | 7 +++++-- + libgupnp/gupnp-service-proxy-action.c | 7 +++++-- + libgupnp/gupnp-service-proxy.c | 7 +++++-- + libgupnp/gupnp-service.c | 7 +++++-- + 5 files changed, 25 insertions(+), 10 deletions(-) + +diff --git a/libgupnp/gupnp-control-point.c b/libgupnp/gupnp-control-point.c +index dc04732..99ebda5 100644 +--- a/libgupnp/gupnp-control-point.c ++++ b/libgupnp/gupnp-control-point.c +@@ -608,8 +608,11 @@ got_description_url (SoupSession *session, + xmlDoc *xml_doc; + + /* Parse response */ +- xml_doc = xmlRecoverMemory (msg->response_body->data, +- msg->response_body->length); ++ xml_doc = xmlReadMemory (msg->response_body->data, ++ msg->response_body->length, ++ NULL, ++ NULL, ++ XML_PARSE_NONET | XML_PARSE_RECOVER); + if (xml_doc) { + doc = gupnp_xml_doc_new (xml_doc); + +diff --git a/libgupnp/gupnp-service-info.c b/libgupnp/gupnp-service-info.c +index 9a9f4de..d468801 100644 +--- a/libgupnp/gupnp-service-info.c ++++ b/libgupnp/gupnp-service-info.c +@@ -592,8 +592,11 @@ got_scpd_url (G_GNUC_UNUSED SoupSession *session, + if (SOUP_STATUS_IS_SUCCESSFUL (msg->status_code)) { + xmlDoc *scpd; + +- scpd = xmlRecoverMemory (msg->response_body->data, +- msg->response_body->length); ++ scpd = xmlReadMemory (msg->response_body->data, ++ msg->response_body->length, ++ NULL, ++ NULL, ++ XML_PARSE_NONET | XML_PARSE_RECOVER); + if (scpd) { + introspection = gupnp_service_introspection_new (scpd); + +diff --git a/libgupnp/gupnp-service-proxy-action.c b/libgupnp/gupnp-service-proxy-action.c +index 4d9336c..ef8a808 100644 +--- a/libgupnp/gupnp-service-proxy-action.c ++++ b/libgupnp/gupnp-service-proxy-action.c +@@ -86,8 +86,11 @@ check_action_response (G_GNUC_UNUSED GUPnPServiceProxy *proxy, + } + + /* Parse response */ +- response = xmlRecoverMemory (action->msg->response_body->data, +- action->msg->response_body->length); ++ response = xmlReadMemory (action->msg->response_body->data, ++ action->msg->response_body->length, ++ NULL, ++ NULL, ++ XML_PARSE_NONET | XML_PARSE_RECOVER); + + if (!response) { + if (action->msg->status_code == SOUP_STATUS_OK) { +diff --git a/libgupnp/gupnp-service-proxy.c b/libgupnp/gupnp-service-proxy.c +index 25d5ef6..af2fd46 100644 +--- a/libgupnp/gupnp-service-proxy.c ++++ b/libgupnp/gupnp-service-proxy.c +@@ -1560,8 +1560,11 @@ server_handler (G_GNUC_UNUSED SoupServer *soup_server, + } + + /* Parse the actual XML message content */ +- doc = xmlRecoverMemory (msg->request_body->data, +- msg->request_body->length); ++ doc = xmlReadMemory (msg->request_body->data, ++ msg->request_body->length, ++ NULL, ++ NULL, ++ XML_PARSE_NONET | XML_PARSE_RECOVER); + if (doc == NULL) { + /* Failed */ + g_warning ("Failed to parse NOTIFY message body"); +diff --git a/libgupnp/gupnp-service.c b/libgupnp/gupnp-service.c +index 67b3d43..0ebfb26 100644 +--- a/libgupnp/gupnp-service.c ++++ b/libgupnp/gupnp-service.c +@@ -985,8 +985,11 @@ control_server_handler (SoupServer *server, + *end = '\0'; + + /* Parse action_node */ +- doc = xmlRecoverMemory (msg->request_body->data, +- msg->request_body->length); ++ doc = xmlReadMemory (msg->request_body->data, ++ msg->request_body->length, ++ NULL, ++ NULL, ++ XML_PARSE_NONET | XML_PARSE_RECOVER); + if (doc == NULL) { + soup_message_set_status (msg, SOUP_STATUS_BAD_REQUEST); + diff --git a/meta-openembedded/meta-multimedia/recipes-connectivity/gupnp/gupnp_1.4.1.bb b/meta-openembedded/meta-multimedia/recipes-connectivity/gupnp/gupnp_1.4.1.bb index 708e3844ff..c21e7a05bf 100644 --- a/meta-openembedded/meta-multimedia/recipes-connectivity/gupnp/gupnp_1.4.1.bb +++ b/meta-openembedded/meta-multimedia/recipes-connectivity/gupnp/gupnp_1.4.1.bb @@ -7,7 +7,9 @@ DEPENDS = "e2fsprogs gssdp libsoup-2.4 libxml2" inherit meson pkgconfig vala gobject-introspection -SRC_URI = "${GNOME_MIRROR}/${BPN}/1.4/${BPN}-${PV}.tar.xz" +SRC_URI = "${GNOME_MIRROR}/${BPN}/1.4/${BPN}-${PV}.tar.xz \ + file://0001-all-Drop-xmlRecoverMemory.patch \ +" SRC_URI[sha256sum] = "899196b5e66f03b8e25f046a7a658cd2a6851becb83f2d55345ab3281655dc0c" SYSROOT_PREPROCESS_FUNCS += "gupnp_sysroot_preprocess" |