Greetings!

On Thu, 15 Dec 2005, Aleksey Sanin wrote:

> Oh... Sorry. Yes, in this case you have to add these nodes
> manually... Or create a small path and add these two functions
> and I'll be happy to apply it :)

The patch is attached. Thank you!

> Aleksey
>
>
> Dmitry Belyavsky wrote:
> > Greetings!
> >
> > On Thu, 15 Dec 2005, Aleksey Sanin wrote:
> >
> > > > So after creating this node should I add X509IssuerName and
> > > > X509SerialNumber manually?
> > > No. Everything will be done by xmlsec automatically.
> >
> > Sorry, I don't understand. I want to specify X509IssuerName and
> > X509SerialNumber to find a key I will use to sign a document. What
> > should I do after xmlSecTmplX509DataAddIssuerSerial?
> >
> > Thank you!
> >
>
>

-- 
SY, Dmitry Belyavsky (ICQ UIN 11116575)
Index: src/templates.c
===================================================================
RCS file: /cvs/xmlsec/src/templates.c,v
retrieving revision 1.1.1.1
retrieving revision 1.3
diff -r1.1.1.1 -r1.3
1453a1454,1539
>  * xmlSecTmplX509IssuerSerialAddIssuerName:
>  * @x509IssuerSerialNode:     the pointer to <dsig:X509IssuerSerial/> node.
>  * @issuerName:               the issuer name (optional).     
>  *
>  * Adds <dsig:X509IssuerName/> node to the <dsig:X509IssuerSerial/> node 
> @x509IssuerSerialNode.
>  *
>  * Returns the pointer to the newly created <dsig:X509IssuerName/> node or
>  * NULL if an error occurs.
>  */
> xmlNodePtr
> xmlSecTmplX509IssuerSerialAddIssuerName(xmlNodePtr x509IssuerSerialNode, 
> const xmlChar* issuerName) {
>       xmlNodePtr res;
>       
>       xmlSecAssert2(x509IssuerSerialNode != NULL, NULL);
>       
>   if(xmlSecFindChild(x509IssuerSerialNode, xmlSecNodeX509IssuerName,
>                               xmlSecDSigNs) != NULL) {
>       xmlSecError(XMLSEC_ERRORS_HERE,
>                   NULL,
>                   xmlSecErrorsSafeString(xmlSecNodeX509IssuerName),
>                   XMLSEC_ERRORS_R_NODE_ALREADY_PRESENT,
>                   XMLSEC_ERRORS_NO_MESSAGE);
>       return(NULL);
>       }
> 
>       res = xmlSecAddChild(x509IssuerSerialNode, xmlSecNodeX509IssuerName, 
> xmlSecDSigNs);
>     if(res == NULL) {
>       xmlSecError(XMLSEC_ERRORS_HERE,
>                   NULL,
>                   "xmlSecAddChild",
>                   XMLSEC_ERRORS_R_XMLSEC_FAILED,
>                   "node=%s",
>                   xmlSecErrorsSafeString(xmlSecNodeX509IssuerName));
>       return(NULL);   
>     }
> 
>               if (issuerName != NULL) {
>                       xmlNodeSetContent(res, issuerName);
>               }
>               return(res);
> }
> 
> /**
>  * xmlSecTmplX509IssuerSerialAddIssuerName:
>  * @x509IssuerSerialNode:     the pointer to <dsig:X509IssuerSerial/> node.
>  * @serial:           the serial number (optional).   
>  *
>  * Adds <dsig:X509SerialNumber/> node to the <dsig:X509IssuerSerial/> node 
> @x509IssuerSerialNode.
>  *
>  * Returns the pointer to the newly created <dsig:X509SerialNumber/> node or
>  * NULL if an error occurs.
>  */
> xmlNodePtr
> xmlSecTmplX509IssuerSerialAddSerialNumber(xmlNodePtr x509IssuerSerialNode, 
> const xmlChar* serial) {
>       xmlNodePtr res;
> 
>       xmlSecAssert2(x509IssuerSerialNode != NULL, NULL);
> 
>       if(xmlSecFindChild(x509IssuerSerialNode, xmlSecNodeX509SerialNumber,
>                               xmlSecDSigNs) != NULL) {
>               xmlSecError(XMLSEC_ERRORS_HERE,
>                               NULL,
>                               
> xmlSecErrorsSafeString(xmlSecNodeX509SerialNumber),
>                               XMLSEC_ERRORS_R_NODE_ALREADY_PRESENT,
>                               XMLSEC_ERRORS_NO_MESSAGE);
>               return(NULL);
>       }
> 
>       res = xmlSecAddChild(x509IssuerSerialNode, xmlSecNodeX509SerialNumber, 
> xmlSecDSigNs);
>       if(res == NULL) {
>               xmlSecError(XMLSEC_ERRORS_HERE,
>                               NULL,
>                               "xmlSecAddChild",
>                               XMLSEC_ERRORS_R_XMLSEC_FAILED,
>                               "node=%s",
>                               
> xmlSecErrorsSafeString(xmlSecNodeX509SerialNumber));
>               return(NULL);   
>       }
> 
>       if (serial != NULL) {
>               xmlNodeSetContent(res, serial);
>       }
>       return(res);
> }
> 
> /**
Index: include/xmlsec/templates.h
===================================================================
RCS file: /cvs/xmlsec/include/xmlsec/templates.h,v
retrieving revision 1.1.1.1
retrieving revision 1.3
diff -r1.1.1.1 -r1.3
119a120,121
> XMLSEC_EXPORT xmlNodePtr xmlSecTmplX509IssuerSerialAddIssuerName(xmlNodePtr 
> x509IssuerSerialNode, const xmlChar* issuerName);
> XMLSEC_EXPORT xmlNodePtr xmlSecTmplX509IssuerSerialAddSerialNumber(xmlNodePtr 
> x509IssuerSerialNode, const xmlChar* serial);
_______________________________________________
xmlsec mailing list
[email protected]
http://www.aleksey.com/mailman/listinfo/xmlsec

Reply via email to