diff options
author | manu <manu@pkgsrc.org> | 2018-05-24 09:27:46 +0000 |
---|---|---|
committer | manu <manu@pkgsrc.org> | 2018-05-24 09:27:46 +0000 |
commit | 4df5ff85f057658b7ffe28e2b343451615ab3edf (patch) | |
tree | 36e4c30ed163edbb1d0a61b3f4855d69616a7fff /security | |
parent | b26211f57debb0e439f5fd6c09d22c873c4ed35c (diff) | |
download | pkgsrc-4df5ff85f057658b7ffe28e2b343451615ab3edf.tar.gz |
Build fix from upstream: https://dev.entrouvert.org/issues/18771
replace use of <xmlsec/soap.h> which is deprecated
Diffstat (limited to 'security')
-rw-r--r-- | security/lasso/distinfo | 3 | ||||
-rw-r--r-- | security/lasso/patches/patch-18771 | 168 |
2 files changed, 170 insertions, 1 deletions
diff --git a/security/lasso/distinfo b/security/lasso/distinfo index 28f0ffb6561..c4fcef8ec31 100644 --- a/security/lasso/distinfo +++ b/security/lasso/distinfo @@ -1,7 +1,8 @@ -$NetBSD: distinfo,v 1.21 2017/12/18 15:33:59 jperkin Exp $ +$NetBSD: distinfo,v 1.22 2018/05/24 09:27:46 manu Exp $ SHA1 (lasso-2.5.1.tar.gz) = fe0e68010bab6e11383003b5cf869c0447ed7a6e RMD160 (lasso-2.5.1.tar.gz) = 8cc0506fe8cbac770e952fdb0f067c7e58f5bb43 SHA512 (lasso-2.5.1.tar.gz) = f20bea62c04f3082d5c423f658bafe1bdde0012321c43092ed5d5a2c3ec7b21ec27d88d9fc630743fd7c99e767d9fd92b98de5d4f7d98c3a9e680717483daae1 Size (lasso-2.5.1.tar.gz) = 4552152 bytes +SHA1 (patch-18771) = 6bc6bbec14969d1927dded67044ce4ea1890c678 SHA1 (patch-configure) = fe5650cfe939d8c4de66d185c36936840958e5d1 diff --git a/security/lasso/patches/patch-18771 b/security/lasso/patches/patch-18771 new file mode 100644 index 00000000000..d1d6119caa2 --- /dev/null +++ b/security/lasso/patches/patch-18771 @@ -0,0 +1,168 @@ +$NetBSD: patch-18771,v 1.1 2018/05/24 09:27:46 manu Exp $ + +From upstream: https://dev.entrouvert.org/issues/18771 + +commit 1d56cd1e31ce993ad17f4b4bbc31c12ffff1311f +Author: Benjamin Dauvergne <bdauvergne@entrouvert.com> +Date: Fri Oct 6 10:28:22 2017 +0200 + + replace use of <xmlsec/soap.h> which is deprecated (fixes #18771) + +diff --git a/lasso/id-wsf/wsf_profile.c b/lasso/id-wsf/wsf_profile.c +index 8cfe5a2..0aca204 100644 +--- ./lasso/id-wsf/wsf_profile.c ++++ ./lasso/id-wsf/wsf_profile.c +@@ -29,7 +29,6 @@ + #include <xmlsec/xmldsig.h> + #include <xmlsec/templates.h> + #include <xmlsec/crypto.h> +-#include <xmlsec/soap.h> + + #include "../utils.h" + +@@ -60,6 +59,7 @@ + #include "../id-ff/providerprivate.h" + #include "../id-ff/sessionprivate.h" + #include "../xml/misc_text_node.h" ++#include <../xml/xmlsec_soap.h> + + /** + * SECTION:wsf_profile +diff --git a/lasso/xml/tools.c b/lasso/xml/tools.c +index ade6d66..81e75b5 100644 +--- ./lasso/xml/tools.c ++++ ./lasso/xml/tools.c +@@ -57,7 +57,6 @@ + #include <xmlsec/errors.h> + #include <xmlsec/openssl/x509.h> + #include <xmlsec/openssl/crypto.h> +-#include <xmlsec/soap.h> + + #include <zlib.h> + +@@ -71,6 +70,7 @@ + #include <stdarg.h> + #include <ctype.h> + #include "../lasso_config.h" ++#include <lasso/xml/xmlsec_soap.h> + + /** + * SECTION:tools +diff --git a/lasso/xml/xmlsec_soap.h b/lasso/xml/xmlsec_soap.h +new file mode 100644 +index 0000000..11fc3db +--- /dev/null ++++ ./lasso/xml/xmlsec_soap.h +@@ -0,0 +1,112 @@ ++/* $Id: patch-18771,v 1.1 2018/05/24 09:27:46 manu Exp $ ++ * ++ * Lasso - A free implementation of the Liberty Alliance specifications. ++ * ++ * Copyright (C) 2004-2007 Entr'ouvert ++ * http://lasso.entrouvert.org ++ * ++ * Authors: See AUTHORS file in top-level directory. ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License as published by ++ * the Free Software Foundation; either version 2 of the License, or ++ * (at your option) any later version. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * You should have received a copy of the GNU General Public License ++ * along with this program; if not, see <http://www.gnu.org/licenses/>. ++ */ ++ ++#ifndef __LASSO_XMLSEC_SOAP_H__ ++#define __LASSO_XMLSEC_SOAP_H__ ++ ++#ifdef __cplusplus ++extern "C" { ++#endif /* __cplusplus */ ++ ++#include <libxml/tree.h> ++ ++#include <xmlsec/xmlsec.h> ++#include <xmlsec/xmltree.h> ++#include <xmlsec/errors.h> ++ ++ ++/** Replacement for xmlsec/soap.h */ ++ ++#define xmlSecSoap11Ns ((xmlChar*)"http://schemas.xmlsoap.org/soap/envelope/") ++#define xmlSecSoap12Ns ((xmlChar*)"http://www.w3.org/2003/05/soap-envelope") ++ ++static inline xmlNodePtr ++xmlSecSoap11GetHeader(xmlNodePtr envNode) { ++ xmlNodePtr cur; ++ ++ xmlSecAssert2(envNode != NULL, NULL); ++ ++ /* optional Header node is first */ ++ cur = xmlSecGetNextElementNode(envNode->children); ++ if((cur != NULL) && xmlSecCheckNodeName(cur, xmlSecNodeHeader, xmlSecSoap11Ns)) { ++ return(cur); ++ } ++ ++ return(NULL); ++} ++ ++static inline xmlNodePtr ++xmlSecSoap11GetBody(xmlNodePtr envNode) { ++ xmlNodePtr cur; ++ ++ xmlSecAssert2(envNode != NULL, NULL); ++ ++ /* optional Header node first */ ++ cur = xmlSecGetNextElementNode(envNode->children); ++ if((cur != NULL) && xmlSecCheckNodeName(cur, xmlSecNodeHeader, xmlSecSoap11Ns)) { ++ cur = xmlSecGetNextElementNode(cur->next); ++ } ++ ++ /* Body node is next */ ++ if((cur == NULL) || !xmlSecCheckNodeName(cur, xmlSecNodeBody, xmlSecSoap11Ns)) { ++ xmlSecError(XMLSEC_ERRORS_HERE, ++ NULL, ++ xmlSecErrorsSafeString(xmlSecNodeBody), ++ XMLSEC_ERRORS_R_NODE_NOT_FOUND, ++ XMLSEC_ERRORS_NO_MESSAGE); ++ return(NULL); ++ } ++ ++ return(cur); ++} ++ ++static inline xmlNodePtr ++xmlSecSoap12GetBody(xmlNodePtr envNode) { ++ xmlNodePtr cur; ++ ++ xmlSecAssert2(envNode != NULL, NULL); ++ ++ /* optional Header node first */ ++ cur = xmlSecGetNextElementNode(envNode->children); ++ if((cur != NULL) && xmlSecCheckNodeName(cur, xmlSecNodeHeader, xmlSecSoap12Ns)) { ++ cur = xmlSecGetNextElementNode(cur->next); ++ } ++ ++ /* Body node is next */ ++ if((cur == NULL) || !xmlSecCheckNodeName(cur, xmlSecNodeBody, xmlSecSoap12Ns)) { ++ xmlSecError(XMLSEC_ERRORS_HERE, ++ NULL, ++ xmlSecErrorsSafeString(xmlSecNodeBody), ++ XMLSEC_ERRORS_R_NODE_NOT_FOUND, ++ XMLSEC_ERRORS_NO_MESSAGE); ++ return(NULL); ++ } ++ ++ return(cur); ++} ++ ++#ifdef __cplusplus ++} ++#endif /* __cplusplus */ ++ ++#endif /* __LASSO_XMLSEC_SOAP_H__ */ |