Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit b6a5322

Browse files
metadata_tostring_fix handle and return only strings
1 parent ca0696c commit b6a5322

File tree

2 files changed

+12
-5
lines changed

2 files changed

+12
-5
lines changed

‎src/saml2/metadata.py‎

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,14 +65,12 @@
6565
def metadata_tostring_fix(desc, nspair, xmlstring=""):
6666
if not xmlstring:
6767
xmlstring = desc.to_string(nspair)
68-
6968
try:
7069
if "\"xs:string\"" in xmlstring and XMLNSXS not in xmlstring:
7170
xmlstring = xmlstring.replace(MDNS, MDNS + XMLNSXS)
7271
except TypeError:
7372
if b"\"xs:string\"" in xmlstring and bXMLNSXS not in xmlstring:
7473
xmlstring = xmlstring.replace(bMDNS, bMDNS + bXMLNSXS)
75-
7674
return xmlstring
7775

7876

‎tools/make_metadata.py‎

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,12 @@
3434
help="xmlsec binaries to be used for the signing")
3535
parser.add_argument('-w', dest='wellknown',
3636
help="Use wellknown namespace prefixes")
37+
parser.add_argument('-S', dest='signalg',
38+
default='http://www.w3.org/2000/09/xmldsig#rsa-sha1',
39+
help="Algorithm to sign the metadata")
40+
parser.add_argument('-D', dest='digestalg',
41+
default='http://www.w3.org/2000/09/xmldsig#sha1',
42+
help="Algorithm to compute the digest of the metadata")
3743
parser.add_argument(dest="config", nargs="+")
3844
args = parser.parse_args()
3945

@@ -70,16 +76,19 @@
7076
args.sign, secc)
7177
valid_instance(desc)
7278
xmldoc = metadata_tostring_fix(desc, nspair, xmldoc)
73-
print(xmldoc.decode("utf-8"))
79+
print(xmldoc)
7480
else:
7581
for eid in eds:
7682
if args.sign:
7783
assert conf.key_file
7884
assert conf.cert_file
79-
eid, xmldoc = sign_entity_descriptor(eid, args.id, secc)
85+
sign_alg = args.signalg
86+
digest_alg = args.digestalg
87+
eid, xmldoc = sign_entity_descriptor(eid, args.id, secc, sign_alg,
88+
digest_alg)
8089
else:
8190
xmldoc = None
8291

8392
valid_instance(eid)
8493
xmldoc = metadata_tostring_fix(eid, nspair, xmldoc)
85-
print(xmldoc.decode("utf-8"))
94+
print(xmldoc)

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /