diff options
author | Lev Walkin <vlm@lionet.info> | 2004-10-25 22:58:49 +0000 |
---|---|---|
committer | Lev Walkin <vlm@lionet.info> | 2004-10-25 22:58:49 +0000 |
commit | 451af473ed769bfc325c0551594ca4fd36ec6279 (patch) | |
tree | 86c0ff2b7f1278c469eb5b4b3295f114d62d59fb | |
parent | eeab25b4d3b406116186829d53d15dae651cc3fa (diff) |
Removed confusion between &xNN; and &#xNN; in enber and unber.
-rw-r--r-- | ChangeLog | 3 | ||||
-rw-r--r-- | asn1c/enber.c | 11 | ||||
-rw-r--r-- | asn1c/unber.c | 8 |
3 files changed, 14 insertions, 8 deletions
@@ -1,5 +1,5 @@ -0.9.8: 2004-Oct-20 +0.9.8: 2004-Oct-25 * Initial XER (XML) decoding implementation. * -X command line option added to asn1c to generate XML DTD. @@ -7,6 +7,7 @@ * Code compiled and tested on Sun Solaris 9 @ sparc. Improved includes/defines of/for system headers. * ber_dec_rval_t renamed into asn_dec_rval_t: more generality. + * Removed confusion between &xNN; and &#xNN; in enber and unber. 0.9.7.1: 2004-Oct-12 diff --git a/asn1c/enber.c b/asn1c/enber.c index c6cadf7b..2a2c8fb3 100644 --- a/asn1c/enber.c +++ b/asn1c/enber.c @@ -353,8 +353,13 @@ process_line(const char *fname, char *line, int lineno) { continue; } cl++; + if(*cl != '#') { + fputc(*cl, stdout); + continue; + } + cl++; if(*cl != 'x') { - fprintf(stderr, "%s: Expected \"&xNN;\" at line %d\n", + fprintf(stderr, "%s: Expected \"&#xNN;\" at line %d\n", fname, lineno); exit(EX_DATAERR); } @@ -373,7 +378,7 @@ process_line(const char *fname, char *line, int lineno) { v |= clv - 'a' + 10; break; default: fprintf(stderr, - "%s: Expected \"&xNN;\" at line %d (%c)\n", + "%s: Expected \"&#xNN;\" at line %d (%c)\n", fname, lineno, clv); exit(EX_DATAERR); } @@ -381,7 +386,7 @@ process_line(const char *fname, char *line, int lineno) { cl++; if(*cl != ';') { fprintf(stderr, - "%s: Expected \"&xNN;\" at line %d\n", + "%s: Expected \"&#xNN;\" at line %d\n", fname, lineno); exit(EX_DATAERR); } diff --git a/asn1c/unber.c b/asn1c/unber.c index 627c8bde..ba0ae309 100644 --- a/asn1c/unber.c +++ b/asn1c/unber.c @@ -480,14 +480,14 @@ print_V(const char *fname, FILE *fp, ber_tlv_tag_t tlv_tag, ber_tlv_len_t tlv_le } /* Fall through */ case '<': case '>': case '&': - printf("&x%02x;", ch); + printf("&#x%02x;", ch); } break; case ASN_BASIC_BOOLEAN: switch(ch) { case 0: printf("<false/>"); break; case 0xff: printf("<true/>"); break; - default: printf("<true value=\"&x%02x\"/>", ch); + default: printf("<true value=\"&#x%02x\"/>", ch); } break; case ASN_BASIC_INTEGER: @@ -499,7 +499,7 @@ print_V(const char *fname, FILE *fp, ber_tlv_tag_t tlv_tag, ber_tlv_len_t tlv_le if(vbuf) { vbuf[i] = ch; } else { - printf("&x%02x;", ch); + printf("&#x%02x;", ch); } } } @@ -582,7 +582,7 @@ print_V(const char *fname, FILE *fp, ber_tlv_tag_t tlv_tag, ber_tlv_len_t tlv_le printf(">"); for(i = 0; i < tlv_len; i++) { if(binary > 0 || vbuf[i] < 0x20 || (vbuf[i] & 0x80)) - printf("&x%02x;", vbuf[i]); + printf("&#x%02x;", vbuf[i]); else printf("%c", vbuf[i]); } |