summaryrefslogtreecommitdiff
path: root/src/io.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/io.c')
-rw-r--r--src/io.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/io.c b/src/io.c
index ee538d3d..dcebfc01 100644
--- a/src/io.c
+++ b/src/io.c
@@ -33,6 +33,8 @@
#include <xmlsec/io.h>
#include <xmlsec/errors.h>
+#define ERR_BUF_SIZE 1024
+
/*******************************************************************
*
* Input I/O callback sets
@@ -419,6 +421,7 @@ xmlSecTransformInputURIOpen(xmlSecTransformPtr transform, const xmlChar *uri) {
}
}
+ char buf[ERR_BUF_SIZE];
if((ctx->clbks == NULL) || (ctx->clbksCtx == NULL)) {
xmlSecError(XMLSEC_ERRORS_HERE,
xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
@@ -426,7 +429,7 @@ xmlSecTransformInputURIOpen(xmlSecTransformPtr transform, const xmlChar *uri) {
XMLSEC_ERRORS_R_IO_FAILED,
"uri=%s;error=%s",
xmlSecErrorsSafeString(uri),
- strerror(errno));
+ strerror_r(errno, buf, sizeof(buf)));
return(-1);
}
@@ -519,11 +522,12 @@ xmlSecTransformInputURIPopBin(xmlSecTransformPtr transform, xmlSecByte* data,
if((ctx->clbksCtx != NULL) && (ctx->clbks != NULL) && (ctx->clbks->readcallback != NULL)) {
ret = (ctx->clbks->readcallback)(ctx->clbksCtx, (char*)data, (int)maxDataSize);
if(ret < 0) {
+ char buf[ERR_BUF_SIZE];
xmlSecError(XMLSEC_ERRORS_HERE,
xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
"readcallback",
XMLSEC_ERRORS_R_IO_FAILED,
- "error=%s", strerror(errno));
+ "error=%s", strerror_r(errno, buf, sizeof(buf)));
return(-1);
}
(*dataSize) = ret;