[xmlsec] xmlsec-nss patch

Tejkumar Arora tej@netscape.com
Sun, 20 Jul 2003 17:47:20 -0700


This is a multi-part message in MIME format.
--------------090100030305010309080608
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit

Hi Aleksey,

This xmlsec-nss patch is based on the XMLSEC_NSS_030714 branch.
It includes bug fixes & new code for xmlsec-nss, and 1 bug fix
in generic code, and enhancement of test scripts to use pkcs12
file format.

As for the legal issues, I'm still waiting to hear back from legal.

Here's a description of changes:

1 style changes, compiler warning fixes, copyright in xmlsec-nss
2 bug fixes from running valgrind
3 changes to test scripts to read private keys from PKCS12 files
ONLY. I've include instructions in tests/keys/README on how
to convert existing private keys to a pkcs12 file
4 changes to support crypto-specific commands in the test scripts
5 implementation of rsapkcs1 key transport transform in xmlsec-nss
6 implementation of custom keysstore in xmlsec-nss
7 pkcs12 implementation in xmlsec-nss
8 a crude, simple perl script to help parse valgrind mem leak output
(works but needs improvement, I don't know perl very well)
9 valgrind suppression file for nss (nss.supp)
10 new PKCS12 file containing private keys previously in der/p8-der
files
11 bug fix in keys.c.
function xmlSecKeysMngrGetKey invokes xmlSecKeyInfoNodeRead. On
return from xmlSecKeyInfoNodeRead, it returns key if
xmlSecKeyGetValue(key) != NULL

That is incorrect because in xmlSecKeyInfoNodeRead, it is possible
to have a key value even if xmlSecKeyMatch fails (see the for loop).

I think the better way to fix it is to put a check in
xmlSecKeyInfoNodeRead itself before returning. This will
require adjusting the callers too. I'll let you decide :)

cheers,

-Tej







--------------090100030305010309080608
Content-Type: application/x-gzip;
 name="nsschanges.tar.gz"
Content-Transfer-Encoding: base64
Content-Disposition: inline;
 filename="nsschanges.tar.gz"

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
J9qGv/5i3uyhwZrOC4ynm2Z8PWb+SuvajjsaJWZOb3yt19KfC1f/vnfLtZ+zflk8cnTHAatv
dGy+9fCp1MP/13V5hDEu+eCaQzv6/hgSHdXl3MglrfMt72V0c2RGR/6gvb34vUXXFn6YM3D6
71fnbHi0Wdqi4QX5rWV9LTlBy+Ov523eqa4698qzI9sOO6z8e7uYr6aWnam8MfVg864/RS3I
/fSjJ2abHx99rol+5HfTo8sTl3VV/DT4rHF21Im5jyxb0yyk6IW94e+Htn+2/dnta1YumalN
tF/Mm9Zw2Sr1lJVVhdqlHeZVh+24PX5U+ybJnw0JSZClV2y4vfzPecdcO7ZPzLt6oGiDbsDm
fi9OHp+hafLdMzde+VL93DtXS4bNtS6fF7PXObPfqrcs01rc3b5/4Z3udy/s33w9fuj1Vt9l
9HxRtjqs4cIGo+aPDAjND3n78Pnfp258ZfX5P/d3Kxg9XVbwreHgxldbfNs6qezTuI8vzpq5
5Y4mN0n5XIuAo+aBr7WN1r0/6rMrLTvrg6Yfy9Du+6nlhYWdjxe98cs1Red1h96ujpzTN/94
1O79nSqNO8qbNO10rWDVqc2Ljj/9R6ub4dbHvzi6Yvfemb+NNrWxufrefTRy0I1t1dmzX28Y
0WFLUEDxBNuB4og9n3/+6+R2JY3kYaE/vz3AlPhO4dFTeYftq8/Pvv3Yncnj44OnrtrabM1X
yi3zd3V2Xuw86KvZt/pZ5vc5Py6vcPy46ltXpi0rP3cjefsYbcu35gdN2RZ50rLkSLBq19Iz
r0W/pAsf4uj54+Hb756+FOto1abj5ac0FYG3eFInsCq4IvA78Pkb8P9MSBMqTkIDg0DiTPCx
gidlGkApowlf/q4678IXUMoA8KeaTn3yN/2Z27l9n+68cVZE6a9vdMmxtJ4+Yd/yUyvWuoYk
fR9+a0V+asWuZ+c5RyoyQ14ecTpp+/6yOUFJ2veHjq76/nbLpbNuBiSuW3yi0+W1I2fHvdTO
edEw65XVQ97pcLdT4pToXdVn7jzUetGEMdrnn9JOShjSZn/x0gFHO+4p/7gsoUOv8y2mPr/u
cKtt9qt7jq17rtni7klNC9Z8NWZDwZ2GK6ZeH/+vdUueb3Fnacyqf3Z7beHbmc2r28ieHHzl
lCH739e+2LqnxeGyZdvvHr7i3Hk668SJiOYVP2QtPrLqzi71LeP+pplH7Ec3787a1/Pg7X9W
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
uAEA
--------------090100030305010309080608--