diff options
author | Lev Walkin <vlm@lionet.info> | 2017-08-04 01:38:41 -0700 |
---|---|---|
committer | Lev Walkin <vlm@lionet.info> | 2017-08-04 01:38:41 -0700 |
commit | da997b1ea17f2bf45281d94cb876b3b71a3bdf20 (patch) | |
tree | 145ee8d1520563c08ca8be7af348adf124b3976e /libasn1fix | |
parent | 2b290bef16a01beebb4bbf7212f789241d973d7e (diff) |
work in 128-bit integer values while compiling
Diffstat (limited to 'libasn1fix')
-rw-r--r-- | libasn1fix/asn1fix_crange.c | 6 | ||||
-rw-r--r-- | libasn1fix/asn1fix_enum.c | 17 | ||||
-rw-r--r-- | libasn1fix/asn1fix_misc.c | 3 |
3 files changed, 14 insertions, 12 deletions
diff --git a/libasn1fix/asn1fix_crange.c b/libasn1fix/asn1fix_crange.c index 5b854646..fc61a972 100644 --- a/libasn1fix/asn1fix_crange.c +++ b/libasn1fix/asn1fix_crange.c @@ -157,7 +157,7 @@ _edge_value(const asn1cnst_edge_t *edge) { case ARE_MIN: strcpy(buf, "MIN"); break; case ARE_MAX: strcpy(buf, "MAX"); break; case ARE_VALUE: - snprintf(buf, sizeof(buf), "%" PRIdASN, edge->value); + snprintf(buf, sizeof(buf), "%s", asn1p_itoa(edge->value)); break; default: assert(!"edge->type"); @@ -258,9 +258,9 @@ static int _range_fill(asn1p_value_t *val, const asn1cnst_range_t *minmax, asn1c switch(val->type) { case ATV_INTEGER: if(type != ACT_EL_RANGE && type != ACT_CT_SIZE) { - FATAL("Integer %" PRIdASN " value invalid " + FATAL("Integer %s value invalid " "for %s constraint at line %d", - val->value.v_integer, + asn1p_itoa(val->value.v_integer), asn1p_constraint_type2str(type), lineno); return -1; } diff --git a/libasn1fix/asn1fix_enum.c b/libasn1fix/asn1fix_enum.c index 399cb625..ac543f20 100644 --- a/libasn1fix/asn1fix_enum.c +++ b/libasn1fix/asn1fix_enum.c @@ -115,16 +115,19 @@ asn1f_fix_enum(arg_t *arg) { if (eval > max_value_ext) { max_value_ext = eval; } else { - FATAL( + char max_value_buf[128]; + asn1p_itoa_s(max_value_buf, sizeof(max_value_buf), + max_value_ext); + FATAL( "Enumeration %s at line %d: " - "Explicit value \"%s(%" PRIdASN ")\" " + "Explicit value \"%s(%s)\" " "is not greater " - "than previous values (max %" PRIdASN ")", + "than previous values (max %s)", expr->Identifier, ev->_lineno, ev->Identifier, - eval, - max_value_ext); + asn1p_itoa(eval), + max_value_buf); rvalue = -1; } } @@ -143,12 +146,12 @@ asn1f_fix_enum(arg_t *arg) { if (used_vals[uv_idx] == eval) { FATAL( "Enumeration %s at line %d: " - "Explicit value \"%s(%" PRIdASN ")\" " + "Explicit value \"%s(%s)\" " "collides with previous values", expr->Identifier, ev->_lineno, ev->Identifier, - eval); + asn1p_itoa(eval)); rvalue = -1; unique = 0; } diff --git a/libasn1fix/asn1fix_misc.c b/libasn1fix/asn1fix_misc.c index 88e8d18a..e5f4f797 100644 --- a/libasn1fix/asn1fix_misc.c +++ b/libasn1fix/asn1fix_misc.c @@ -50,8 +50,7 @@ asn1f_printable_value(asn1p_value_t *v) { memcpy(buf + sizeof(buf) - 4, "...", 4); return buf; case ATV_INTEGER: - ret = snprintf(buf, sizeof(buf), "%" PRIdASN, - v->value.v_integer); + ret = snprintf(buf, sizeof(buf), "%s", asn1p_itoa(v->value.v_integer)); if(ret >= (ssize_t)sizeof(buf)) memcpy(buf + sizeof(buf) - 4, "...", 4); return buf; |