105 lines
3.7 KiB
Diff
105 lines
3.7 KiB
Diff
From 5f57f2eac756df213e83a2fdb452057909e2dd21 Mon Sep 17 00:00:00 2001
|
|
From: David Adamec <david.adamec@airship.com>
|
|
Date: Fri, 15 Sep 2023 17:49:15 -0700
|
|
Subject: [PATCH 1/3] Add compatibility for xmlsec 1.3
|
|
|
|
---
|
|
doc/source/modules/constants.rst | 6 ------
|
|
src/constants.c | 2 --
|
|
src/enc.c | 7 +++++++
|
|
src/xmlsec/constants.pyi | 2 --
|
|
4 files changed, 7 insertions(+), 10 deletions(-)
|
|
|
|
diff --git a/src/constants.c b/src/constants.c
|
|
index 34c81b2..72ae217 100644
|
|
--- a/src/constants.c
|
|
+++ b/src/constants.c
|
|
@@ -316,8 +316,6 @@ int PyXmlSec_ConstantsModule_Init(PyObject* package) {
|
|
PYXMLSEC_ADD_NS_CONSTANT(XPathNs, "XPATH");
|
|
PYXMLSEC_ADD_NS_CONSTANT(XPath2Ns, "XPATH2");
|
|
PYXMLSEC_ADD_NS_CONSTANT(XPointerNs, "XPOINTER");
|
|
- PYXMLSEC_ADD_NS_CONSTANT(Soap11Ns, "SOAP11");
|
|
- PYXMLSEC_ADD_NS_CONSTANT(Soap12Ns, "SOAP12");
|
|
PYXMLSEC_ADD_NS_CONSTANT(NsExcC14N, "EXC_C14N");
|
|
PYXMLSEC_ADD_NS_CONSTANT(NsExcC14NWithComments, "EXC_C14N_WITH_COMMENT");
|
|
|
|
diff --git a/src/enc.c b/src/enc.c
|
|
index aaf35ae..475cd2d 100644
|
|
--- a/src/enc.c
|
|
+++ b/src/enc.c
|
|
@@ -50,6 +50,13 @@ static int PyXmlSec_EncryptionContext__init__(PyObject* self, PyObject* args, Py
|
|
}
|
|
ctx->manager = manager;
|
|
PYXMLSEC_DEBUGF("%p: init enc context - ok, manager - %p", self, manager);
|
|
+
|
|
+ // xmlsec 1.3 changed the key search to strict mode, causing various examples
|
|
+ // in the docs to fail. For backwards compatibility, this changes it back to
|
|
+ // lax mode for now.
|
|
+ ctx->handle->keyInfoReadCtx.flags = XMLSEC_KEYINFO_FLAGS_LAX_KEY_SEARCH;
|
|
+ ctx->handle->keyInfoWriteCtx.flags = XMLSEC_KEYINFO_FLAGS_LAX_KEY_SEARCH;
|
|
+
|
|
return 0;
|
|
ON_FAIL:
|
|
PYXMLSEC_DEBUGF("%p: init enc context - failed", self);
|
|
diff --git a/src/xmlsec/constants.pyi b/src/xmlsec/constants.pyi
|
|
index 3430a02..9fd24e5 100644
|
|
--- a/src/xmlsec/constants.pyi
|
|
+++ b/src/xmlsec/constants.pyi
|
|
@@ -85,8 +85,6 @@ NodeX509Data: Final[str]
|
|
Ns: Final[str]
|
|
NsExcC14N: Final[str]
|
|
NsExcC14NWithComments: Final[str]
|
|
-Soap11Ns: Final[str]
|
|
-Soap12Ns: Final[str]
|
|
TransformAes128Cbc: Final[__Transform]
|
|
TransformAes128Gcm: Final[__Transform]
|
|
TransformAes192Cbc: Final[__Transform]
|
|
|
|
From 0e7c5e718e8d221331b0a5f851094a5b4181eeae Mon Sep 17 00:00:00 2001
|
|
From: David Adamec <david.adamec@airship.com>
|
|
Date: Fri, 15 Sep 2023 18:07:07 -0700
|
|
Subject: [PATCH 2/3] fix 1.2 compatibility
|
|
|
|
---
|
|
src/enc.c | 5 +++++
|
|
1 file changed, 5 insertions(+)
|
|
|
|
diff --git a/src/enc.c b/src/enc.c
|
|
index 475cd2d..5453ef9 100644
|
|
--- a/src/enc.c
|
|
+++ b/src/enc.c
|
|
@@ -17,6 +17,11 @@
|
|
#include <xmlsec/xmlenc.h>
|
|
#include <xmlsec/xmltree.h>
|
|
|
|
+// Backwards compatibility with xmlsec 1.2
|
|
+#ifndef XMLSEC_KEYINFO_FLAGS_LAX_KEY_SEARCH
|
|
+#define XMLSEC_KEYINFO_FLAGS_LAX_KEY_SEARCH 0x00008000
|
|
+#endif
|
|
+
|
|
typedef struct {
|
|
PyObject_HEAD
|
|
xmlSecEncCtxPtr handle;
|
|
|
|
From 40c14c45a352f2812e796a071ef7d12f5a70be58 Mon Sep 17 00:00:00 2001
|
|
From: David Adamec <david.adamec@airship.com>
|
|
Date: Fri, 15 Sep 2023 19:40:04 -0700
|
|
Subject: [PATCH 3/3] update isort to fix poetry error in pre-commit
|
|
|
|
---
|
|
.pre-commit-config.yaml | 2 +-
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
|
|
index 0545b12..bf877f3 100644
|
|
--- a/.pre-commit-config.yaml
|
|
+++ b/.pre-commit-config.yaml
|
|
@@ -31,7 +31,7 @@ repos:
|
|
exclude: ^setup.py$
|
|
additional_dependencies: [flake8-docstrings, flake8-bugbear, flake8-logging-format, flake8-builtins, flake8-eradicate, flake8-fixme, pep8-naming, flake8-pep3101, flake8-annotations-complexity,flake8-pyi]
|
|
- repo: https://github.com/PyCQA/isort
|
|
- rev: 5.10.1
|
|
+ rev: 5.12.0
|
|
hooks:
|
|
- id: isort
|
|
- repo: https://github.com/pre-commit/mirrors-mypy
|