static int xmlSecBase64Initialize(xmlSecTransformPtr transform) { xmlSecBase64CtxPtr ctx; int ret; xmlSecAssert2(xmlSecTransformCheckId(transform, xmlSecTransformBase64Id), -1); ctx = xmlSecBase64GetCtx(transform); xmlSecAssert2(ctx != NULL, -1); transform->operation = xmlSecTransformOperationDecode; ret = xmlSecBase64CtxInitialize(ctx, 0, xmlSecBase64GetDefaultLineSize()); if(ret < 0) { xmlSecInternalError("xmlSecBase64CtxInitialize", xmlSecTransformGetName(transform)); return(-1); } return(0); }
static int xmlSecBase64Initialize(xmlSecTransformPtr transform) { xmlSecBase64CtxPtr ctx; int ret; xmlSecAssert2(xmlSecTransformCheckId(transform, xmlSecTransformBase64Id), -1); ctx = xmlSecBase64GetCtx(transform); xmlSecAssert2(ctx != NULL, -1); transform->operation = xmlSecTransformOperationDecode; ret = xmlSecBase64CtxInitialize(ctx, 0, xmlSecBase64GetDefaultLineSize()); if(ret < 0) { xmlSecError(XMLSEC_ERRORS_HERE, xmlSecErrorsSafeString(xmlSecTransformGetName(transform)), "xmlSecBase64CtxInitialize", XMLSEC_ERRORS_R_XMLSEC_FAILED, XMLSEC_ERRORS_NO_MESSAGE); return(-1); } return(0); }
/** * xmlSecBnSetNodeValue: * @bn: the pointer to BN. * @cur: the poitner to an XML node. * @format: the BN format. * @reverse: the flag that indicates whether to reverse the buffer before writing. * @addLineBreaks: the flag; it is equal to 1 then linebreaks will be added before and after new buffer content. * * Converts the @bn and sets it to node content. * * Returns: 0 on success and a negative values if an error occurs. */ int xmlSecBnSetNodeValue(xmlSecBnPtr bn, xmlNodePtr cur, xmlSecBnFormat format, int reverse, int addLineBreaks) { xmlChar* content; int ret; xmlSecAssert2(bn != NULL, -1); xmlSecAssert2(cur != NULL, -1); if(reverse != 0) { ret = xmlSecBnReverse(bn); if(ret < 0) { xmlSecError(XMLSEC_ERRORS_HERE, NULL, "xmlSecBnReverse", XMLSEC_ERRORS_R_XMLSEC_FAILED, XMLSEC_ERRORS_NO_MESSAGE); return(-1); } } if(addLineBreaks) { xmlNodeAddContent(cur, xmlSecStringCR); } switch(format) { case xmlSecBnBase64: ret = xmlSecBufferBase64NodeContentWrite(bn, cur, xmlSecBase64GetDefaultLineSize()); if(ret < 0) { xmlSecError(XMLSEC_ERRORS_HERE, NULL, "xmlSecBufferBase64NodeContentWrite", XMLSEC_ERRORS_R_XMLSEC_FAILED, XMLSEC_ERRORS_NO_MESSAGE); return(-1); } break; case xmlSecBnHex: content = xmlSecBnToHexString(bn); if(content == NULL) { xmlSecError(XMLSEC_ERRORS_HERE, NULL, "xmlSecBnToHexString", XMLSEC_ERRORS_R_XMLSEC_FAILED, XMLSEC_ERRORS_NO_MESSAGE); xmlFree(content); return(-1); } xmlNodeSetContent(cur, content); xmlFree(content); break; case xmlSecBnDec: content = xmlSecBnToDecString(bn); if(content == NULL) { xmlSecError(XMLSEC_ERRORS_HERE, NULL, "xmlSecBnToDecString", XMLSEC_ERRORS_R_XMLSEC_FAILED, XMLSEC_ERRORS_NO_MESSAGE); xmlFree(content); return(-1); } xmlNodeSetContent(cur, content); xmlFree(content); break; } if(addLineBreaks) { xmlNodeAddContent(cur, xmlSecStringCR); } return(0); }