From fb3b3001aa0df4367350e872d232e06aa50c740e Mon Sep 17 00:00:00 2001 From: gitlost Date: Thu, 11 Jul 2024 00:35:13 +0100 Subject: [PATCH] - GS1: fix square brackets treated as FNC1 in GS1PARENS_MODE by changing internal FNC1 marker '[' -> '\x1D' (GS), ticket #319, props Moli Sojet; also fix non-AI square brackets -> round brackets in GS1_128 HRT - BWIPP: update to latest --- ChangeLog | 3 + backend/aztec.c | 4 +- backend/code1.c | 14 +- backend/code128.c | 30 +- backend/code16k.c | 4 +- backend/code49.c | 4 +- backend/composite.c | 12 +- backend/dmatrix.c | 39 ++- backend/dotcode.c | 10 +- backend/general_field.c | 12 +- backend/gs1.c | 16 +- backend/qr.c | 12 +- backend/rss.c | 28 +- backend/tests/test_code128.c | 31 ++- backend/tests/test_composite.c | 27 +- backend/tests/test_dmatrix.c | 10 +- backend/tests/test_gs1.c | 336 ++++++++++++----------- backend/tests/testcommon.c | 24 +- backend/tests/tools/bwipp_dump.ps.tar.xz | Bin 135208 -> 135572 bytes backend/ultra.c | 16 +- docs/manual.html | 5 +- docs/manual.pmd | 5 +- docs/manual.txt | 5 +- frontend_qt/mainWindow.ui | 3 +- frontend_qt/mainwindow.cpp | 2 +- 25 files changed, 352 insertions(+), 300 deletions(-) diff --git a/ChangeLog b/ChangeLog index 2ab27ae0..943b50fe 100644 --- a/ChangeLog +++ b/ChangeLog @@ -174,6 +174,9 @@ Bugs - QRCODE: fix out-of-bounds crash due to incorrect mode costings for GS1 percents in `qr_in_alpha()`; fix incorrect numeric costings (out-by-1) in `qr_in_numeric()`; ticket #300 (#14, #15; #16), props Andre Maute +- GS1: fix square brackets treated as FNC1 in GS1PARENS_MODE by changing + internal FNC1 marker '[' -> '\x1D' (GS), ticket #319, props Moli Sojet; + also fix non-AI square brackets -> round brackets in GS1_128 HRT Version 2.12.0 (2022-12-12) diff --git a/backend/aztec.c b/backend/aztec.c index d98292bf..8e13df22 100644 --- a/backend/aztec.c +++ b/backend/aztec.c @@ -117,6 +117,8 @@ static int aztec_text_process(const unsigned char source[], int src_len, int bp, for (i = 0; i < src_len; i++) { if (source[i] >= 128) { encode_mode[i] = 'B'; + } else if (gs1 && source[i] == '\x1D') { + encode_mode[i] = 'P'; /* For FLG(n) & FLG(0) = FNC1 */ } else { encode_mode[i] = AztecModes[source[i]]; } @@ -634,7 +636,7 @@ static int aztec_text_process(const unsigned char source[], int src_len, int bp, if (!(bp = az_bin_append_posn(AztecSymbolChar[reduced_source[i]], 5, binary_string, bp))) return 0; } } else if ((reduced_encode_mode[i] == 'P') || (reduced_encode_mode[i] == 'p')) { - if (gs1 && (reduced_source[i] == '[')) { + if (gs1 && reduced_source[i] == '\x1D') { if (!(bp = az_bin_append_posn(0, 5, binary_string, bp))) return 0; /* FLG(n) */ if (!(bp = az_bin_append_posn(0, 3, binary_string, bp))) return 0; /* FLG(0) = FNC1 */ } else if (reduced_source[i] == 13) { diff --git a/backend/code1.c b/backend/code1.c index bb09778b..33634536 100644 --- a/backend/code1.c +++ b/backend/code1.c @@ -246,7 +246,7 @@ static int c1_look_ahead_test(const unsigned char source[], const int length, co } /* Step P */ - if (gs1 && (c == '[')) { + if (gs1 && c == '\x1D') { byte_count += C1_MULT_3; /* Step P1 */ } else { byte_count += C1_MULT_1; /* Step P2 */ @@ -453,7 +453,7 @@ static int c1_codewords_remaining(struct zint_symbol *symbol, const int tp) { static int c1_c40text_cnt(const int current_mode, const int gs1, unsigned char input) { int cnt; - if (gs1 && input == '[') { + if (gs1 && input == '\x1D') { return 2; } cnt = 1; @@ -616,7 +616,7 @@ static int c1_encode(struct zint_symbol *symbol, unsigned char source[], int len if (debug_print) printf("ASCDD(%.2s) ", source + sp); sp += 2; } else { - if ((gs1) && (source[sp] == '[')) { + if (gs1 && source[sp] == '\x1D') { if (length - (sp + 1) >= 15 && num_digits[sp + 1] >= 15) { /* Step B4 */ target[tp++] = 236; /* FNC1 and change to Decimal */ @@ -648,7 +648,7 @@ static int c1_encode(struct zint_symbol *symbol, unsigned char source[], int len target[tp++] = 235; /* FNC4 (Upper Shift) */ target[tp++] = (source[sp] - 128) + 1; if (debug_print) printf("UpSh(%d) ", source[sp]); - } else if ((gs1) && (source[sp] == '[')) { + } else if (gs1 && source[sp] == '\x1D') { /* Step B8 */ target[tp++] = 232; /* FNC1 */ if (debug_print) fputs("FNC1 ", stdout); @@ -704,7 +704,7 @@ static int c1_encode(struct zint_symbol *symbol, unsigned char source[], int len cte_buffer[cte_p++] = ct_shift[source[sp] - 128] - 1; } cte_buffer[cte_p++] = ct_value[source[sp] - 128]; - } else if (gs1 && (source[sp] == '[')) { + } else if (gs1 && source[sp] == '\x1D') { cte_buffer[cte_p++] = 1; /* Shift 2 */ cte_buffer[cte_p++] = 27; /* FNC1 */ } else { @@ -826,7 +826,7 @@ static int c1_encode(struct zint_symbol *symbol, unsigned char source[], int len } else if (current_mode == C1_BYTE) { next_mode = C1_BYTE; - if (gs1 && (source[sp] == '[')) { + if (gs1 && source[sp] == '\x1D') { next_mode = C1_ASCII; } else { if (source[sp] <= 127) { @@ -901,7 +901,7 @@ static int c1_encode(struct zint_symbol *symbol, unsigned char source[], int len } else if (source[sp] & 0x80) { target[tp++] = 235; /* FNC4 (Upper Shift) */ target[tp++] = (source[sp] - 128) + 1; - } else if ((gs1) && (source[sp] == '[')) { + } else if (gs1 && source[sp] == '\x1D') { target[tp++] = 232; /* FNC1 */ } else { target[tp++] = source[sp] + 1; diff --git a/backend/code128.c b/backend/code128.c index 081f13a7..f2c9027d 100644 --- a/backend/code128.c +++ b/backend/code128.c @@ -306,7 +306,7 @@ INTERNAL void c128_put_in_set(int list[2][C128_MAX], const int indexliste, char int c_count = 0; for (i = 0; i < read; i++) { if (set[i] == 'C') { - if (source[i] == '[') { + if (source[i] == '\x1D') { if (c_count & 1) { if ((i - c_count) != 0) { set[i - c_count] = 'B'; @@ -799,7 +799,7 @@ INTERNAL int gs1_128_cc(struct zint_symbol *symbol, unsigned char source[], int break; } mode = c128_parunmodd(reduced[indexchaine]); - if (reduced[indexchaine] == '[') { + if (reduced[indexchaine] == '\x1D') { mode = C128_ABORC; } } @@ -829,7 +829,7 @@ INTERNAL int gs1_128_cc(struct zint_symbol *symbol, unsigned char source[], int glyph_count += 2; /* Not reached */ } - if ((set[i] == 'C') && (reduced[i] != '[')) { + if ((set[i] == 'C') && (reduced[i] != '\x1D')) { glyph_count += 1; /* Half a codeword */ } else { glyph_count += 2; @@ -878,7 +878,7 @@ INTERNAL int gs1_128_cc(struct zint_symbol *symbol, unsigned char source[], int values[bar_characters++] = 98; /* Not reached */ } - if (reduced[read] != '[') { + if (reduced[read] != '\x1D') { switch (set[read]) { /* Encode data characters */ case 'A': case 'a': @@ -1012,13 +1012,21 @@ INTERNAL int gs1_128_cc(struct zint_symbol *symbol, unsigned char source[], int } } - for (i = 0; i < length && i < (int) sizeof(symbol->text); i++) { - if (source[i] == '[') { - symbol->text[i] = '('; - } else if (source[i] == ']') { - symbol->text[i] = ')'; - } else { - symbol->text[i] = source[i]; + if (symbol->input_mode & GS1PARENS_MODE) { + i = length < (int) sizeof(symbol->text) ? length : (int) sizeof(symbol->text); + memcpy(symbol->text, source, i); + } else { + int bracket_level = 0; /* Non-compliant closing square brackets may be in text */ + for (i = 0; i < length && i < (int) sizeof(symbol->text); i++) { + if (source[i] == '[') { + symbol->text[i] = '('; + bracket_level++; + } else if (source[i] == ']' && bracket_level) { + symbol->text[i] = ')'; + bracket_level--; + } else { + symbol->text[i] = source[i]; + } } } if (i == sizeof(symbol->text)) { diff --git a/backend/code16k.c b/backend/code16k.c index aa5fe4fc..4f122b8e 100644 --- a/backend/code16k.c +++ b/backend/code16k.c @@ -101,7 +101,7 @@ INTERNAL int code16k(struct zint_symbol *symbol, unsigned char source[], int len break; } mode = c128_parunmodd(source[indexchaine]); - if ((gs1) && (source[indexchaine] == '[')) { + if (gs1 && source[indexchaine] == '\x1D') { mode = C128_ABORC; } /* FNC1 */ } @@ -206,7 +206,7 @@ INTERNAL int code16k(struct zint_symbol *symbol, unsigned char source[], int len values[bar_characters++] = 98; } - if (!((gs1) && (source[read] == '['))) { + if (!gs1 || source[read] != '\x1D') { switch (set[read]) { /* Encode data characters */ case 'A': case 'a': c128_set_a(source[read], values, &bar_characters); diff --git a/backend/code49.c b/backend/code49.c index af9f5f47..e51b14e0 100644 --- a/backend/code49.c +++ b/backend/code49.c @@ -1,7 +1,7 @@ /* code49.c - Handles Code 49 */ /* libzint - the open source barcode library - Copyright (C) 2009-2023 Robin Stuart + Copyright (C) 2009-2024 Robin Stuart Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions @@ -68,7 +68,7 @@ INTERNAL int code49(struct zint_symbol *symbol, unsigned char source[], int leng strcpy(symbol->errtxt, "431: Invalid character in input data, extended ASCII not allowed"); return ZINT_ERROR_INVALID_DATA; } - if (gs1 && (source[i] == '[')) { + if (gs1 && source[i] == '\x1D') { *d++ = '*'; /* FNC1 */ } else { const char *const entry = c49_table7[source[i]]; diff --git a/backend/composite.c b/backend/composite.c index a2a5b5ed..eb746ef6 100644 --- a/backend/composite.c +++ b/backend/composite.c @@ -943,7 +943,7 @@ static int cc_binary_string(struct zint_symbol *symbol, const unsigned char sour do { ninety[i] = source[i + 2]; i++; - } while ((length > i + 2) && ('[' != source[i + 2])); + } while (i + 2 < length && source[i + 2] != '\x1D'); } ninety[i] = '\0'; ninety_len = i; @@ -1013,7 +1013,7 @@ static int cc_binary_string(struct zint_symbol *symbol, const unsigned char sour next_ai_posn = 2 + ninety_len; - if (next_ai_posn < length && source[next_ai_posn] == '[') { + if (next_ai_posn < length && source[next_ai_posn] == '\x1D') { /* There are more AIs afterwards */ if (next_ai_posn + 2 < length && (source[next_ai_posn + 1] == '2') && (source[next_ai_posn + 2] == '1')) { @@ -1074,12 +1074,12 @@ static int cc_binary_string(struct zint_symbol *symbol, const unsigned char sour } else if (z_isdigit(source[read_posn])) { bp = bin_append_posn(source[read_posn] + 4, 6, binary_string, bp); - } else if (source[read_posn] == '[') { + } else if (source[read_posn] == '\x1D') { bp = bin_append_posn(31, 5, binary_string, bp); } read_posn++; - } while ((source[read_posn - 1] != '[') && (source[read_posn - 1] != '\0')); + } while (source[read_posn - 1] != '\x1D' && source[read_posn - 1] != '\0'); alpha_pad = 1; /* This is overwritten if a general field is encoded */ } @@ -1102,7 +1102,7 @@ static int cc_binary_string(struct zint_symbol *symbol, const unsigned char sour if (fnc1_latch == 1) { /* Encodation method "10" has been used but it is not followed by AI 10, so a FNC1 character needs to be added */ - general_field[j] = '['; + general_field[j] = '\x1D'; j++; } @@ -1128,7 +1128,7 @@ static int cc_binary_string(struct zint_symbol *symbol, const unsigned char sour if (!general_field_encode(general_field, j, &mode, &last_digit, binary_string, &bp)) { /* Invalid character in input data */ - strcpy(symbol->errtxt, "441: Invalid character in input data"); + strcpy(symbol->errtxt, "441: Invalid character in 2D component input data"); return ZINT_ERROR_INVALID_DATA; } } diff --git a/backend/dmatrix.c b/backend/dmatrix.c index ec942445..de6a90f6 100644 --- a/backend/dmatrix.c +++ b/backend/dmatrix.c @@ -224,8 +224,8 @@ static int dm_isX12(const unsigned char input) { } /* Return true (1) if a character is valid in EDIFACT set */ -static int dm_isedifact(const unsigned char input, const int gs1) { - return (input >= ' ' && input <= '^') && (!gs1 || input != '['); /* Can't encode GS1 FNC1/GS in EDIFACT */ +static int dm_isedifact(const unsigned char input) { + return input >= ' ' && input <= '^'; } /* Does Annex J section (r)(6)(ii)(I) apply? */ @@ -367,7 +367,7 @@ static int dm_look_ahead_test(const unsigned char source[], const int length, co } /* edifact ... step (p) */ - if (dm_isedifact(c, gs1)) { + if (dm_isedifact(c)) { edf_count += DM_MULT_3_DIV_4; /* (p)(1) */ } else { if (is_extended) { @@ -378,7 +378,7 @@ static int dm_look_ahead_test(const unsigned char source[], const int length, co } /* base 256 ... step (q) */ - if ((gs1 == 1) && (c == '[')) { + if (gs1 == 1 && c == '\x1D') { /* FNC1 separator */ b256_count += DM_MULT_4; /* (q)(1) */ } else { @@ -617,7 +617,7 @@ static int dm_codewords_remaining(struct zint_symbol *symbol, const int tp, cons static int dm_c40text_cnt(const int current_mode, const int gs1, unsigned char input) { int cnt; - if (gs1 && input == '[') { + if (gs1 && input == '\x1D') { return 2; } cnt = 1; @@ -954,15 +954,15 @@ static void dm_addEdges(struct zint_symbol *symbol, const unsigned char source[] dm_addEdge(symbol, source, length, edges, DM_X12, from, 3, previous, 0); } - if (gs1 != 1 || source[from] != '[') { + if (gs1 != 1 || source[from] != '\x1D') { dm_addEdge(symbol, source, length, edges, DM_BASE256, from, 1, previous, 0); } } - if (dm_isedifact(source[from], gs1)) { + if (dm_isedifact(source[from])) { /* We create 3 EDF edges, 2, 3 or 4 characters length. The 4-char normally doesn't have a latch to ASCII unless it is 2 characters away from the end of the input. */ - for (i = 1, pos = from + i; i < 4 && pos < length && dm_isedifact(source[pos], gs1); i++, pos++) { + for (i = 1, pos = from + i; i < 4 && pos < length && dm_isedifact(source[pos]); i++, pos++) { dm_addEdge(symbol, source, length, edges, DM_EDIFACT, from, i + 1, previous, 0); } } @@ -1116,7 +1116,7 @@ static int dm_minimalenc(struct zint_symbol *symbol, const unsigned char source[ target[tp++] = (source[sp] - 128) + 1; if (debug_print) printf("FN4 A%02X ", target[tp - 1] - 1); } else { - if (gs1 && (source[sp] == '[')) { + if (gs1 && source[sp] == '\x1D') { if (gs1 == 2) { target[tp++] = 29 + 1; /* GS */ if (debug_print) fputs("GS ", stdout); @@ -1151,7 +1151,7 @@ static int dm_minimalenc(struct zint_symbol *symbol, const unsigned char source[ shift_set = ct_shift[source[sp] - 128]; value = ct_value[source[sp] - 128]; } else { - if (gs1 && (source[sp] == '[')) { + if (gs1 && source[sp] == '\x1D') { if (gs1 == 2) { shift_set = ct_shift[29]; value = ct_value[29]; /* GS */ @@ -1212,12 +1212,7 @@ static int dm_minimalenc(struct zint_symbol *symbol, const unsigned char source[ } else if (current_mode == DM_BASE256) { - if (gs1 == 2 && source[sp] == '[') { - target[tp++] = 29; /* GS */ - } else { - target[tp++] = source[sp]; - } - sp++; + target[tp++] = source[sp++]; if (debug_print) printf("B%02X ", target[tp - 1]); } @@ -1292,7 +1287,7 @@ static int dm_isoenc(struct zint_symbol *symbol, const unsigned char source[], c target[tp++] = (source[sp] - 128) + 1; if (debug_print) printf("FN4 A%02X ", target[tp - 1] - 1); } else { - if (gs1 && (source[sp] == '[')) { + if (gs1 && source[sp] == '\x1D') { if (gs1 == 2) { target[tp++] = 29 + 1; /* GS */ if (debug_print) fputs("GS ", stdout); @@ -1339,7 +1334,7 @@ static int dm_isoenc(struct zint_symbol *symbol, const unsigned char source[], c shift_set = ct_shift[source[sp] - 128]; value = ct_value[source[sp] - 128]; } else { - if (gs1 && (source[sp] == '[')) { + if (gs1 && source[sp] == '\x1D') { if (gs1 == 2) { shift_set = ct_shift[29]; value = ct_value[29]; /* GS */ @@ -1407,7 +1402,7 @@ static int dm_isoenc(struct zint_symbol *symbol, const unsigned char source[], c /* step (f) EDIFACT encodation */ } else if (current_mode == DM_EDIFACT) { - if (!dm_isedifact(source[sp], gs1)) { + if (!dm_isedifact(source[sp])) { next_mode = DM_ASCII; } else { next_mode = DM_EDIFACT; @@ -1443,7 +1438,7 @@ static int dm_isoenc(struct zint_symbol *symbol, const unsigned char source[], c /* step (g) Base 256 encodation */ } else if (current_mode == DM_BASE256) { - if (gs1 == 1 && source[sp] == '[') { + if (gs1 == 1 && source[sp] == '\x1D') { next_mode = DM_ASCII; } else { next_mode = DM_BASE256; @@ -1464,7 +1459,7 @@ static int dm_isoenc(struct zint_symbol *symbol, const unsigned char source[], c tp = dm_switch_mode(next_mode, target, tp, p_b256_start, debug_print); not_first = 0; } else { - if (gs1 == 2 && source[sp] == '[') { + if (gs1 == 2 && source[sp] == '\x1D') { target[tp++] = 29; /* GS */ } else { target[tp++] = source[sp]; @@ -1587,7 +1582,7 @@ static int dm_encode(struct zint_symbol *symbol, const unsigned char source[], c target[tp++] = 235; /* FNC4 */ target[tp++] = (source[sp] - 128) + 1; if (debug_print) printf("FN4 A%02X ", target[tp - 1] - 1); - } else if (gs1 && source[sp] == '[') { + } else if (gs1 && source[sp] == '\x1D') { if (gs1 == 2) { target[tp++] = 29 + 1; /* GS */ if (debug_print) fputs("GS ", stdout); diff --git a/backend/dotcode.c b/backend/dotcode.c index e52506aa..f665783a 100644 --- a/backend/dotcode.c +++ b/backend/dotcode.c @@ -1,7 +1,7 @@ /* dotcode.c - Handles DotCode */ /* libzint - the open source barcode library - Copyright (C) 2017-2023 Robin Stuart + Copyright (C) 2017-2024 Robin Stuart Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions @@ -658,8 +658,8 @@ static int dc_encode_message(struct zint_symbol *symbol, const unsigned char sou continue; } - if (dc_datum_c(source, length, position) || (source[position] == '[' && gs1)) { - if (source[position] == '[') { + if (dc_datum_c(source, length, position) || (gs1 && source[position] == '\x1D')) { + if (source[position] == '\x1D') { codeword_array[ap++] = 107; /* FNC1 */ position++; } else { @@ -747,7 +747,7 @@ static int dc_encode_message(struct zint_symbol *symbol, const unsigned char sou } /* Step D2 */ - if ((source[position] == '[') && gs1) { + if (gs1 && source[position] == '\x1D') { codeword_array[ap++] = 107; /* FNC1 */ position++; if (debug_print) fputs("D2/1 ", stdout); @@ -841,7 +841,7 @@ static int dc_encode_message(struct zint_symbol *symbol, const unsigned char sou } /* Step E2 */ - if ((source[position] == '[') && gs1) { + if (gs1 && source[position] == '\x1D') { /* Note: this branch probably never reached as no reason to be in Code Set A for GS1 data */ codeword_array[ap++] = 107; /* FNC1 */ position++; diff --git a/backend/general_field.c b/backend/general_field.c index 49dd5e7d..e3170c38 100644 --- a/backend/general_field.c +++ b/backend/general_field.c @@ -1,7 +1,7 @@ /* general_field.c - Handles general field compaction (GS1 DataBar and composites) */ /* libzint - the open source barcode library - Copyright (C) 2019-2022 Robin Stuart + Copyright (C) 2019-2024 Robin Stuart Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions @@ -39,7 +39,7 @@ static const char isoiec_puncs[] = "!\"%&'()*+,-./:;<=>?_ "; /* Note contains sp /* Returns type of char at `i`. FNC1 counted as NUMERIC. Returns 0 if invalid char */ static int general_field_type(const char *general_field, const int i) { - if (general_field[i] == '[' || z_isdigit(general_field[i])) { + if (general_field[i] == '\x1D' || z_isdigit(general_field[i])) { return NUMERIC; } if (z_isupper(general_field[i]) || posn(alphanum_puncs, general_field[i]) != -1) { @@ -113,8 +113,8 @@ INTERNAL int general_field_encode(const char *general_field, const int general_f bp = bin_append_posn(0, 4, binary_string, bp); /* Alphanumeric latch "0000" */ mode = ALPHANUMERIC; } else { - d1 = general_field[i] == '[' ? 10 : ctoi(general_field[i]); - d2 = general_field[i + 1] == '[' ? 10 : ctoi(general_field[i + 1]); + d1 = general_field[i] == '\x1D' ? 10 : ctoi(general_field[i]); + d2 = general_field[i + 1] == '\x1D' ? 10 : ctoi(general_field[i + 1]); bp = bin_append_posn((11 * d1) + d2 + 8, 7, binary_string, bp); i += 2; } @@ -132,7 +132,7 @@ INTERNAL int general_field_encode(const char *general_field, const int general_f } break; case ALPHANUMERIC: - if (general_field[i] == '[') { + if (general_field[i] == '\x1D') { /* 7.2.5.5.2/5.4.2 a) */ bp = bin_append_posn(15, 5, binary_string, bp); /* "01111" */ mode = NUMERIC; @@ -162,7 +162,7 @@ INTERNAL int general_field_encode(const char *general_field, const int general_f } break; case ISOIEC: - if (general_field[i] == '[') { + if (general_field[i] == '\x1D') { /* 7.2.5.5.3/5.4.3 a) */ bp = bin_append_posn(15, 5, binary_string, bp); /* "01111" */ mode = NUMERIC; diff --git a/backend/gs1.c b/backend/gs1.c index 29d25079..3083247d 100644 --- a/backend/gs1.c +++ b/backend/gs1.c @@ -1513,7 +1513,7 @@ INTERNAL int gs1_verify(struct zint_symbol *symbol, const unsigned char source[] max_bracket_level = bracket_level; } ai_latch = 1; - } else if (source[i] == cbracket) { + } else if (source[i] == cbracket && bracket_level) { bracket_level--; if (ai_length > max_ai_length) { max_ai_length = ai_length; @@ -1629,13 +1629,11 @@ INTERNAL int gs1_verify(struct zint_symbol *symbol, const unsigned char source[] j = 0; ai_latch = 1; for (i = 0; i < length; i++) { - if ((source[i] != obracket) && (source[i] != cbracket)) { - reduced[j++] = source[i]; - } if (source[i] == obracket) { + bracket_level++; /* Start of an AI string */ if (ai_latch == 0) { - reduced[j++] = '['; + reduced[j++] = '\x1D'; } if (i + 1 != length) { last_ai = to_int(source + i + 1, 2); @@ -1654,12 +1652,16 @@ INTERNAL int gs1_verify(struct zint_symbol *symbol, const unsigned char source[] ai_latch = 1; } } + } else if (source[i] == cbracket && bracket_level) { + /* The closing bracket is simply dropped from the input */ + bracket_level--; + } else { + reduced[j++] = source[i]; } - /* The ']' character is simply dropped from the input */ } reduced[j] = '\0'; - /* the character '[' in the reduced string refers to the FNC1 character */ + /* The character '\x1D' (GS) in the reduced string refers to the FNC1 character */ return error_value; } diff --git a/backend/qr.c b/backend/qr.c index 9c03ddea..0a62a5d3 100644 --- a/backend/qr.c +++ b/backend/qr.c @@ -57,7 +57,7 @@ static int qr_is_alpha(const unsigned int glyph, const int gs1) { if (is_chr(QR_ALPHA, glyph)) { return 1; } - if (gs1 && glyph == '[') { + if (gs1 && glyph == '\x1D') { return 1; } return 0; @@ -505,10 +505,6 @@ static int qr_binary(char binary[], int bp, const int version, const char mode[] for (i = 0; i < short_data_block_length; i++) { unsigned int byte = ddata[position + i]; - if (gs1 && (byte == '[')) { - byte = 0x1d; /* FNC1 */ - } - bp = bin_append_posn(byte, byte > 0xFF ? 16 : 8, binary, bp); if (debug_print) { @@ -555,7 +551,7 @@ static int qr_binary(char binary[], int bp, const int version, const char mode[] prod = (first * 45) + second; i++; } else { - if (gs1 && (ddata[position + i] == '[')) { + if (gs1 && ddata[position + i] == '\x1D') { first = QR_PERCENT; /* FNC1 */ } else { first = qr_alphanumeric[ddata[position + i] - 32]; @@ -571,7 +567,7 @@ static int qr_binary(char binary[], int bp, const int version, const char mode[] prod = (first * 45) + second; percent = 1; } else { - if (gs1 && (ddata[position + i] == '[')) { + if (gs1 && ddata[position + i] == '\x1D') { second = QR_PERCENT; /* FNC1 */ } else { second = qr_alphanumeric[ddata[position + i] - 32]; @@ -596,7 +592,7 @@ static int qr_binary(char binary[], int bp, const int version, const char mode[] prod = (first * 45) + second; percent = 1; } else { - if (gs1 && (ddata[position + i] == '[')) { + if (gs1 && ddata[position + i] == '\x1D') { second = QR_PERCENT; /* FNC1 */ } else { second = qr_alphanumeric[ddata[position + i] - 32]; diff --git a/backend/rss.c b/backend/rss.c index e9348065..beef7ba4 100644 --- a/backend/rss.c +++ b/backend/rss.c @@ -966,7 +966,7 @@ static int dbar_exp_binary_string(struct zint_symbol *symbol, const unsigned cha before carrying out compression */ for (i = 0; i < read_posn; i++) { if (!z_isdigit(source[i])) { - if (source[i] != '[') { + if (source[i] != '\x1D') { /* Something is wrong */ strcpy(symbol->errtxt, "385: Invalid character in Compressed Field data (digits only)"); return ZINT_ERROR_INVALID_DATA; @@ -1062,8 +1062,8 @@ static int dbar_exp_binary_string(struct zint_symbol *symbol, const unsigned cha if (debug_print) printf("General field data = %s\n", general_field); if (j != 0) { /* If general field not empty */ - if (!general_field_encode(general_field, j, &mode, &last_digit, binary_string, &bp)) { /* Should not happen */ - /* Not reachable */ + if (!general_field_encode(general_field, j, &mode, &last_digit, binary_string, &bp)) { + /* Will happen if character not in CSET 82 + space */ strcpy(symbol->errtxt, "386: Invalid character in General Field data"); return ZINT_ERROR_INVALID_DATA; } @@ -1250,15 +1250,21 @@ static void dbar_exp_separator(struct zint_symbol *symbol, int width, const int /* Set HRT for DataBar Expanded */ static void dbar_exp_hrt(struct zint_symbol *symbol, unsigned char source[], const int length) { - int i; - for (i = 0; i <= length; i++) { /* Include terminating NUL */ - if (source[i] == '[') { - symbol->text[i] = '('; - } else if (source[i] == ']') { - symbol->text[i] = ')'; - } else { - symbol->text[i] = source[i]; + /* Max possible length is 77 digits so will fit */ + if (symbol->input_mode & GS1PARENS_MODE) { + memcpy(symbol->text, source, length + 1); /* Include terminating NUL */ + } else { + int i; + /* Can't have square brackets in content so bracket level not required */ + for (i = 0; i <= length /* Include terminating NUL */; i++) { + if (source[i] == '[') { + symbol->text[i] = '('; + } else if (source[i] == ']') { + symbol->text[i] = ')'; + } else { + symbol->text[i] = source[i]; + } } } } diff --git a/backend/tests/test_code128.c b/backend/tests/test_code128.c index dd845787..a31d62c0 100644 --- a/backend/tests/test_code128.c +++ b/backend/tests/test_code128.c @@ -932,46 +932,49 @@ static void test_encode(const testCtx *const p_ctx) { /* 36*/ { BARCODE_GS1_128, GS1_MODE, -1, "[00]345678901234567890[00]345678901234567890[00]345678901234567890[00]345678901234567890[00]345678901234567890[00]345678901234567890[00]345678901234567890[00]345678901234567890[00]345678901234567890[3100]121212[20]34[20]78", ZINT_WARN_HRT_TRUNCATED, 1, 1135, 1, "Max length", "1101001110011110101110110110011001000101100011100010110110000101001101111011010110011100100010110001110001011011000010100110111101101101100110010001011000111000101101100001010011011110110101100111001000101100011100010110110000101001101111011011011001100100010110001110001011011000010100110111101101011001110010001011000111000101101100001010011011110110110110011001000101100011100010110110000101001101111011010110011100100010110001110001011011000010100110111101101101100110010001011000111000101101100001010011011110110101100111001000101100011100010110110000101001101111011011011001100100010110001110001011011000010100110111101101011001110010001011000111000101101100001010011011110110110110011001000101100011100010110110000101001101111011010110011100100010110001110001011011000010100110111101101101100110010001011000111000101101100001010011011110110101100111001000101100011100010110110000101001101111011011011001100100010110001110001011011000010100110111101101011001110010001011000111000101101100001010011011110110110110001101101100110010110011100101100111001011001110011001001110100010110001100100111011000010100100100110001100011101011" }, - /* 37*/ { BARCODE_EAN14, GS1_MODE, -1, "4070071967072", 0, 1, 134, 1, "Verified manually against TEC-IT", + /* 37*/ { BARCODE_GS1_128, GS1_MODE | GS1PARENS_MODE | GS1NOCHECK_MODE, -1, "(21)12345670[23]4931", 0, 1, 189, 1, "Ticket #319, square bracket treated as FNC1 in parens mode, props Moli Sojet", + "110100111001111010111011011100100101100111001000101100011100010110101100001001011110111011100011010110011100101100101110011001000010101110111101101000111011011000110100110111001100011101011" + }, + /* 38*/ { BARCODE_EAN14, GS1_MODE, -1, "4070071967072", 0, 1, 134, 1, "Verified manually against TEC-IT", "11010011100111101011101100110110011000101000101100001001001100010011001011100100001011001001100010011001001110110111001001100011101011" }, - /* 38*/ { BARCODE_NVE18, GS1_MODE, -1, "40700000071967072", 0, 1, 156, 1, "Verified manually against TEC-IT", + /* 39*/ { BARCODE_NVE18, GS1_MODE, -1, "40700000071967072", 0, 1, 156, 1, "Verified manually against TEC-IT", "110100111001111010111011011001100110001010001011000010011011001100110110011001001100010011001011100100001011001001100010011001001110110111011101100011101011" }, - /* 39*/ { BARCODE_HIBC_128, UNICODE_MODE, -1, "83278F8G9H0J2G", 0, 1, 211, 1, "ANSI/HIBC 2.6 - 2016 Section 4.1, not same, uses different encoding (eg begins StartA instead of StartB)", + /* 40*/ { BARCODE_HIBC_128, UNICODE_MODE, -1, "83278F8G9H0J2G", 0, 1, 211, 1, "ANSI/HIBC 2.6 - 2016 Section 4.1, not same, uses different encoding (eg begins StartA instead of StartB)", "1101001000011000100100111010011001011101111011000110110110000101001011110111010001100010111010011001101000100011100101100110001010001001110110010110111000110011100101101000100010001001100111101010001100011101011" }, - /* 40*/ { BARCODE_HIBC_128, UNICODE_MODE, -1, "A123BJC5D6E71", 0, 1, 200, 1, "ANSI/HIBC 2.6 - 2016 Figure 1, same", + /* 41*/ { BARCODE_HIBC_128, UNICODE_MODE, -1, "A123BJC5D6E71", 0, 1, 200, 1, "ANSI/HIBC 2.6 - 2016 Figure 1, same", "11010010000110001001001010001100010011100110110011100101100101110010001011000101101110001000100011011011100100101100010001100111010010001101000111011011101001110011011010001000110001101101100011101011" }, - /* 41*/ { BARCODE_HIBC_128, UNICODE_MODE, -1, "$$52001510X3G", 0, 1, 178, 1, "ANSI/HIBC 2.6 - 2016 Figure 5, same", + /* 42*/ { BARCODE_HIBC_128, UNICODE_MODE, -1, "$$52001510X3G", 0, 1, 178, 1, "ANSI/HIBC 2.6 - 2016 Figure 5, same", "1101001000011000100100100100011001001000110010111011110110111000101101100110010111001100110010001001011110111011100010110110010111001101000100010110001000100011110101100011101011" }, - /* 42*/ { BARCODE_DPD, UNICODE_MODE, -1, "%000393206219912345678101040", 0, 1, 211, 1, "DPDAPPD 4.0.2 - Illustrations 2, 7, 8, same; NOTE: correct HRT given by Illustration 7 only", + /* 43*/ { BARCODE_DPD, UNICODE_MODE, -1, "%000393206219912345678101040", 0, 1, 211, 1, "DPDAPPD 4.0.2 - Illustrations 2, 7, 8, same; NOTE: correct HRT given by Illustration 7 only", "1101001000010001001100100111011001011101111011011001100110100010001100011011010011001000110111001001011101111010110011100100010110001110001011011000010100110010001001100100010011000101000101011110001100011101011" }, - /* 43*/ { BARCODE_DPD, UNICODE_MODE, -1, "%007110601782532948375101276", 0, 1, 211, 1, "DPDAPPD 4.0.2 - Illustration 6 **NOT SAME** HRT incorrect, also uses CodeA and inefficient encoding; verified against TEC-IT", + /* 44*/ { BARCODE_DPD, UNICODE_MODE, -1, "%007110601782532948375101276", 0, 1, 211, 1, "DPDAPPD 4.0.2 - Illustration 6 **NOT SAME** HRT incorrect, also uses CodeA and inefficient encoding; verified against TEC-IT", "1101001000010001001100100111011001011101111010011000100110001001001001100100011001101100110000101001110010110011000110110100010111101011110010011000010010110010001001011001110011001010000100010111101100011101011" }, - /* 44*/ { BARCODE_DPD, UNICODE_MODE, -1, "0123456789012345678901234567", 0, 1, 189, 1, "DPDAPPD 4.0.2 - Illustration 9, same (allowing for literal HRT)", + /* 45*/ { BARCODE_DPD, UNICODE_MODE, -1, "0123456789012345678901234567", 0, 1, 189, 1, "DPDAPPD 4.0.2 - Illustration 9, same (allowing for literal HRT)", "110100111001100110110011101101110101110110001000010110011011011110110011011001110110111010111011000100001011001101101111011001101100111011011101011101100010000101100101011110001100011101011" }, - /* 45*/ { BARCODE_DPD, UNICODE_MODE, -1, "008182709980000020028101276", 0, 1, 211, 1, "DPDPLS Section 4, **NOT SAME**, figure switches to CodeC after 1st char (%), zint after 2nd (0)", + /* 46*/ { BARCODE_DPD, UNICODE_MODE, -1, "008182709980000020028101276", 0, 1, 211, 1, "DPDPLS Section 4, **NOT SAME**, figure switches to CodeC after 1st char (%), zint after 2nd (0)", "1101001000010001001100100111011001011101111010001100100110011100101110110010011001001000111101000101101100110011011001100110011001101101100110011100110100110010001001011001110011001010000101011110001100011101011" }, - /* 46*/ { BARCODE_DPD, UNICODE_MODE, -1, "007110601632532948375179276", 0, 1, 211, 1, "DPDPLS Section 4.6, **NOT SAME**, figure StartA & switches as above, zint StartB & switches as above", + /* 47*/ { BARCODE_DPD, UNICODE_MODE, -1, "007110601632532948375179276", 0, 1, 211, 1, "DPDPLS Section 4.6, **NOT SAME**, figure StartA & switches as above, zint StartB & switches as above", "1101001000010001001100100111011001011101111010011000100110001001001001100100011001101100101001100001110010110011000110110100010111101011110010011000010010100111001101010111100011001010000101100010001100011101011" }, - /* 47*/ { BARCODE_DPD, UNICODE_MODE, -1, "001990009980000020084109203", 0, 1, 211, 1, "DPDPLS Section 5.1, **NOT SAME**, figure switches to CodeC after 1st char (%), zint after 2nd (0)", + /* 48*/ { BARCODE_DPD, UNICODE_MODE, -1, "001990009980000020084109203", 0, 1, 211, 1, "DPDPLS Section 5.1, **NOT SAME**, figure switches to CodeC after 1st char (%), zint after 2nd (0)", "1101001000010001001100100111011001011101111011001101100101110111101101100110011001001000111101000101101100110011011001100110011001101101100110010011110100110010001001010111100010010011000100011010001100011101011" }, - /* 48*/ { BARCODE_DPD, UNICODE_MODE, -1, "008182709980000020029136276", 0, 1, 211, 1, "DPDPLS Section 6.1, **NOT SAME**, as above", + /* 49*/ { BARCODE_DPD, UNICODE_MODE, -1, "008182709980000020029136276", 0, 1, 211, 1, "DPDPLS Section 6.1, **NOT SAME**, as above", "1101001000010001001100100111011001011101111010001100100110011100101110110010011001001000111101000101101100110011011001100110011001101101100110011100110010100110111001111000101011001010000100001101001100011101011" }, - /* 49*/ { BARCODE_DPD, UNICODE_MODE, 1, "006376209980000020044118276", 0, 1, 200, 1, "DPDPLS Section 8.7.2 relabel, **NOT SAME**, figure begins StartB then immediate CodeC, zint just StartC", + /* 50*/ { BARCODE_DPD, UNICODE_MODE, 1, "006376209980000020044118276", 0, 1, 200, 1, "DPDPLS Section 8.7.2 relabel, **NOT SAME**, figure begins StartB then immediate CodeC, zint just StartC", "11010011100110110011001010011000011001010000110010011101011101111010100111100110110011001101100110011001001110100100011001100010001011001110010111011001001011110111011001110100110111011101100011101011" }, - /* 50*/ { BARCODE_UPU_S10, UNICODE_MODE, -1, "EE876543216CA", 0, 1, 156, 1, "", + /* 51*/ { BARCODE_UPU_S10, UNICODE_MODE, -1, "EE876543216CA", 0, 1, 156, 1, "", "110100100001000110100010001101000111010011001011101111011001010000111010110001100011011010011101100101111011101000100011010100011000111000101101100011101011" }, }; diff --git a/backend/tests/test_composite.c b/backend/tests/test_composite.c index bca7d417..8aaf2130 100644 --- a/backend/tests/test_composite.c +++ b/backend/tests/test_composite.c @@ -1,6 +1,6 @@ /* libzint - the open source barcode library - Copyright (C) 2019-2023 Robin Stuart + Copyright (C) 2019-2024 Robin Stuart Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions @@ -3470,21 +3470,22 @@ static void test_fuzz(const testCtx *const p_ctx) { char *composite; int ret; int bwipp_cmp; + char *expected_errtxt; char *comment; }; /* s/\/\*[ 0-9]*\*\//\=printf("\/\*%3d*\/", line(".") - line("'<")): */ struct item data[] = { - /* 0*/ { BARCODE_EANX_CC, -1, -1, "+123456789012345678", -1, "[21]A12345678", ZINT_ERROR_TOO_LONG, 1, "" }, - /* 1*/ { BARCODE_UPCA_CC, -1, -1, "+123456789012345678", -1, "[21]A12345678", ZINT_ERROR_TOO_LONG, 1, "" }, - /* 2*/ { BARCODE_UPCE_CC, -1, -1, "+123456789012345678", -1, "[21]A12345678", ZINT_ERROR_TOO_LONG, 1, "" }, - /* 3*/ { BARCODE_EANX_CC, -1, -1, "+12345", -1, "[21]A12345678", 0 , 0, "BWIPP checks for proper EAN data" }, - /* 4*/ { BARCODE_EANX_CC, -1, -1, "+123456", -1, "[21]A12345678", ZINT_ERROR_TOO_LONG, 1, "" }, - /* 5*/ { BARCODE_EANX_CC, GS1PARENS_MODE | GS1NOCHECK_MODE, -1, "kks", -1, "()111%", ZINT_ERROR_INVALID_DATA, 1, "" }, /* #300 (#5), Andre Maute (`dbar_date()` not checking length + other non-checks) */ - /* 6*/ { BARCODE_UPCA_CC, GS1PARENS_MODE | GS1NOCHECK_MODE, -1, "\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\225\215\153\153\153\153\153\153\263\153\153\153\153\153\153\153\153\153\153\163", -1, "()90", ZINT_ERROR_TOO_LONG, 1, "" }, /* #300 (#6), Andre Maute (`dbar_date()` not checking length + other non-checks) */ - /* 7*/ { BARCODE_UPCA_CC, GS1PARENS_MODE | GS1NOCHECK_MODE, -1, "\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\225\215\153\153\153\153\153\153\263\153\153\377\002\000\000\153\153\153\153\163\000\000\000\153\153\153\153\153\153\153\060\047\047\043\047\057\153\153\153\153\153\000\000\000\000\153\153\153\161\153\153\153\153\153\153\153\153\153\153\153\153\153\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\001\100\000\000\000\000\000\000\000\167\167\167\167\167\167\167\167\167\167\167\167\167\167", 127, "()904OOOOO)CK0336680OOOOOOOOOOOOOO29[0kkkk%%%%(", ZINT_ERROR_TOO_LONG, 1, "" }, /* #300 (#11), Andre Maute (`gs1_verify()` not checking length on resolve AI data loop) */ - /* 8*/ { BARCODE_EANX_CC, GS1PARENS_MODE | GS1NOCHECK_MODE, -1, "\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\225\215\153\153\153\153\153\153\263\153\153\377\002\000\000\153\153\153\153\163\000\000\000\153\153\153\153\153\153\153\060\047\047\043\047\057\153\153\153\153\153\000\000\000\000\153\153\153\161\153\153\153\153\153\153\153\153\153\153\153\153\153\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\001\100\000\000\000\000\000\000\000\167\167\167\167\167\167\167\167\167\167\167\167\167\167", 127, "()904OOOOO)CK0336680OOOOOOOOOOOOOO29[0kkkk%%%%(", ZINT_ERROR_TOO_LONG, 1, "" }, /* #300 (#11 with EANX_CC) */ - /* 9*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, 3, "[]28", -1, "[]RRR___________________KKKRRR0000", 0, 1, "" }, /* #300 (#13), Andre Maute (`calc_padding_ccc()` dividing by zero when linear width == 68) */ - /*10*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, 3, "[]2", -1, "[]RRR___________________KKKRRR0000", 0, 1, "" }, /* #300 (#13 shortened to min linear input (but same linear width 68)) */ + /* 0*/ { BARCODE_EANX_CC, -1, -1, "+123456789012345678", -1, "[21]A12345678", ZINT_ERROR_TOO_LONG, 1, "Error 448: Input too long (5 character maximum for add-on) in linear component", "" }, + /* 1*/ { BARCODE_UPCA_CC, -1, -1, "+123456789012345678", -1, "[21]A12345678", ZINT_ERROR_TOO_LONG, 1, "Error 294: Input too long (5 character maximum for add-on) in linear component", "" }, + /* 2*/ { BARCODE_UPCE_CC, -1, -1, "+123456789012345678", -1, "[21]A12345678", ZINT_ERROR_TOO_LONG, 1, "Error 294: Input too long (5 character maximum for add-on) in linear component", "" }, + /* 3*/ { BARCODE_EANX_CC, -1, -1, "+12345", -1, "[21]A12345678", 0 , 0, "", "BWIPP checks for proper EAN data" }, + /* 4*/ { BARCODE_EANX_CC, -1, -1, "+123456", -1, "[21]A12345678", ZINT_ERROR_TOO_LONG, 1, "Error 448: Input too long (5 character maximum for add-on) in linear component", "" }, + /* 5*/ { BARCODE_EANX_CC, GS1PARENS_MODE | GS1NOCHECK_MODE, -1, "kks", -1, "()111%", ZINT_ERROR_INVALID_DATA, 1, "Error 284: Invalid character in data (digits and \"+\" only) in linear component", "" }, /* #300 (#5), Andre Maute (`dbar_date()` not checking length + other non-checks) */ + /* 6*/ { BARCODE_UPCA_CC, GS1PARENS_MODE | GS1NOCHECK_MODE, -1, "\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\225\215\153\153\153\153\153\153\263\153\153\153\153\153\153\153\153\153\153\163", -1, "()90", ZINT_ERROR_TOO_LONG, 1, "Error 283: Input too long (19 character maximum) in linear component", "" }, /* #300 (#6), Andre Maute (`dbar_date()` not checking length + other non-checks) */ + /* 7*/ { BARCODE_UPCA_CC, GS1PARENS_MODE | GS1NOCHECK_MODE, -1, "\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\225\215\153\153\153\153\153\153\263\153\153\377\002\000\000\153\153\153\153\163\000\000\000\153\153\153\153\153\153\153\060\047\047\043\047\057\153\153\153\153\153\000\000\000\000\153\153\153\161\153\153\153\153\153\153\153\153\153\153\153\153\153\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\001\100\000\000\000\000\000\000\000\167\167\167\167\167\167\167\167\167\167\167\167\167\167", 127, "()904OOOOO)CK0336680OOOOOOOOOOOOOO29[0kkkk%%%%(", ZINT_ERROR_INVALID_DATA, 1, "Error 253: Malformed AI in input data (brackets don't match) in 2D component", "" }, /* #300 (#11), Andre Maute (`gs1_verify()` not checking length on resolve AI data loop) */ + /* 8*/ { BARCODE_EANX_CC, GS1PARENS_MODE | GS1NOCHECK_MODE, -1, "\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\153\225\215\153\153\153\153\153\153\263\153\153\377\002\000\000\153\153\153\153\163\000\000\000\153\153\153\153\153\153\153\060\047\047\043\047\057\153\153\153\153\153\000\000\000\000\153\153\153\161\153\153\153\153\153\153\153\153\153\153\153\153\153\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\001\100\000\000\000\000\000\000\000\167\167\167\167\167\167\167\167\167\167\167\167\167\167", 127, "()904OOOOO)CK0336680OOOOOOOOOOOOOO29[0kkkk%%%%(", ZINT_ERROR_INVALID_DATA, 1, "Error 253: Malformed AI in input data (brackets don't match) in 2D component", "" }, /* #300 (#11 with EANX_CC) */ + /* 9*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, 3, "[]28", -1, "[]RRR___________________KKKRRR0000", 0, 1, "", "" }, /* #300 (#13), Andre Maute (`calc_padding_ccc()` dividing by zero when linear width == 68) */ + /*10*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, 3, "[]2", -1, "[]RRR___________________KKKRRR0000", 0, 1, "", "" }, /* #300 (#13 shortened to min linear input (but same linear width 68)) */ }; int data_size = ARRAY_SIZE(data); int i, length, composite_length, ret; @@ -3512,6 +3513,8 @@ static void test_fuzz(const testCtx *const p_ctx) { ret = ZBarcode_Encode(symbol, (const unsigned char *) data[i].composite, composite_length); assert_equal(ret, data[i].ret, "i:%d ZBarcode_Encode ret %d != %d (%s)\n", i, ret, data[i].ret, symbol->errtxt); + assert_zero(strcmp(symbol->errtxt, data[i].expected_errtxt), "i:%d strcmp(%s, %s) != 0\n", + i, symbol->errtxt, data[i].expected_errtxt); if (ret < ZINT_ERROR) { if (do_bwipp && testUtilCanBwipp(i, symbol, data[i].option_1, -1, -1, debug)) { diff --git a/backend/tests/test_dmatrix.c b/backend/tests/test_dmatrix.c index 75826c5a..59b696f8 100644 --- a/backend/tests/test_dmatrix.c +++ b/backend/tests/test_dmatrix.c @@ -1,6 +1,6 @@ /* libzint - the open source barcode library - Copyright (C) 2019-2023 Robin Stuart + Copyright (C) 2019-2024 Robin Stuart Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions @@ -6917,10 +6917,10 @@ static void test_minimalenc(const testCtx *const p_ctx) { /*998*/ { BARCODE_DATAMATRIX, -1, -1, -1, "AAAAAAAAAAAA*+*0**AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", -1, 0, 2, "" }, /*999*/ { BARCODE_DATAMATRIX, -1, -1, -1, "AAAAAAAAAAAAAAAAAAAAAAAAAAAAA", -1, 0, 0, "" }, /*1000*/ { BARCODE_DATAMATRIX, -1, -1, -1, "\000\001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037 !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\177", 128, 0, 0, "" }, - /*1001*/ { BARCODE_DATAMATRIX, GS1_MODE, -1, -1, "\200\200\200[\200\200[\200\200", -1, 0, 1, "Can't have extended ASCII in GS1 mode so these will never happen" }, - /*1002*/ { BARCODE_DATAMATRIX, GS1_MODE, GS1_GS_SEPARATOR, -1, "\200\200\200[\200\200[\200\200", -1, 0, 0, "" }, - /*1003*/ { BARCODE_DATAMATRIX, GS1_MODE, -1, -1, "\200\200\200\200[\200\200\200[\200\200", -1, 0, 1, "Stays in ASC after 1st FNC1" }, - /*1004*/ { BARCODE_DATAMATRIX, GS1_MODE, GS1_GS_SEPARATOR, -1, "\200\200\200\200[\200\200\200[\200\200", -1, 0, 0, "" }, + /*1001*/ { BARCODE_DATAMATRIX, GS1_MODE, -1, -1, "\200\200\200\035\200\200\035\200\200", -1, 0, 1, "Can't have extended ASCII in GS1 mode so these will never happen" }, + /*1002*/ { BARCODE_DATAMATRIX, GS1_MODE, GS1_GS_SEPARATOR, -1, "\200\200\200\035\200\200\035\200\200", -1, 0, 0, "" }, + /*1003*/ { BARCODE_DATAMATRIX, GS1_MODE, -1, -1, "\200\200\200\200\035\200\200\200\035\200\200", -1, 0, 1, "Stays in ASC after 1st FNC1" }, + /*1004*/ { BARCODE_DATAMATRIX, GS1_MODE, GS1_GS_SEPARATOR, -1, "\200\200\200\200\035\200\200\200\035\200\200", -1, 0, 0, "" }, /*1005*/ { BARCODE_DATAMATRIX, -1, -1, -1, "https://example.com/01/09506000134369", -1, 0, 0, "" }, /*1006*/ { BARCODE_DATAMATRIX, -1, -1, -1, "abcdefghi1234FGHIJKLMNabc@@@@@@@@@é", -1, 0, 0, "" }, /*1007*/ { BARCODE_DATAMATRIX, -1, -1, -1, "ABCDEF", -1, 0, 0, "" }, diff --git a/backend/tests/test_gs1.c b/backend/tests/test_gs1.c index 6f475147..d80447b8 100644 --- a/backend/tests/test_gs1.c +++ b/backend/tests/test_gs1.c @@ -279,38 +279,54 @@ static void test_hrt(const testCtx *const p_ctx) { /* 3*/ { BARCODE_GS1_128, -1, "[01]12345678901231[10]12[20]AB", "", ZINT_WARN_NONCOMPLIANT, "(01)12345678901231(10)12(20)AB" }, /* AI (20) should be 2 nos. */ /* 4*/ { BARCODE_GS1_128, GS1NOCHECK_MODE, "[01]12345678901231[10]10[20]AB", "", 0, "(01)12345678901231(10)10(20)AB" }, /* 5*/ { BARCODE_GS1_128, -1, "[01]12345678901231[10]AB[20]12", "", 0, "(01)12345678901231(10)AB(20)12" }, - /* 6*/ { BARCODE_GS1_128_CC, -1, "[01]12345678901234[20]12", "[21]12345", ZINT_WARN_NONCOMPLIANT, "(01)12345678901234(20)12" }, /* Incorrect check digit */ - /* 7*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]12345678901234[20]12", "[21]12345", 0, "(01)12345678901234(20)12" }, - /* 8*/ { BARCODE_GS1_128_CC, -1, "[01]12345678901231[20]12", "[21]12345", 0, "(01)12345678901231(20)12" }, - /* 9*/ { BARCODE_GS1_128_CC, -1, "[01]12345678901231[10]12[20]AB", "[21]12345", ZINT_WARN_NONCOMPLIANT, "(01)12345678901231(10)12(20)AB" }, /* AI (20) should be 2 nos. */ - /* 10*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]12345678901231[10]12[20]AB", "[21]12345", 0, "(01)12345678901231(10)12(20)AB" }, - /* 11*/ { BARCODE_GS1_128_CC, -1, "[01]12345678901231[10]AB[20]12", "[21]12345", 0, "(01)12345678901231(10)AB(20)12" }, - /* 12*/ { BARCODE_GS1_128_CC, -1, "[01]12345678901231[10]AB[20]12", "[30]1234567A", ZINT_WARN_NONCOMPLIANT, "(01)12345678901231(10)AB(20)12" }, - /* 13*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]12345678901231[10]AB[20]12", "[30]1234567A", 0, "(01)12345678901231(10)AB(20)12" }, - /* 14*/ { BARCODE_EAN14, -1, "1234567890123", "", 0, "(01)12345678901231" }, - /* 15*/ { BARCODE_EAN14, -1, "1234", "", 0, "(01)00000000012348" }, - /* 16*/ { BARCODE_EAN14, -1, "12345", "", 0, "(01)00000000123457" }, - /* 17*/ { BARCODE_EAN14, -1, "12340", "", 0, "(01)00000000123402" }, - /* 18*/ { BARCODE_NVE18, -1, "12345678901234567", "", 0, "(00)123456789012345675" }, - /* 19*/ { BARCODE_NVE18, -1, "1234", "", 0, "(00)000000000000012348" }, - /* 20*/ { BARCODE_NVE18, -1, "12345", "", 0, "(00)000000000000123457" }, - /* 21*/ { BARCODE_NVE18, -1, "12340", "", 0, "(00)000000000000123402" }, - /* 22*/ { BARCODE_DBAR_EXP, -1, "[01]12345678901234[20]12", "", ZINT_WARN_NONCOMPLIANT, "(01)12345678901234(20)12" }, /* Incorrect check digit */ - /* 23*/ { BARCODE_DBAR_EXP, GS1NOCHECK_MODE, "[01]12345678901234[20]12", "", 0, "(01)12345678901234(20)12" }, - /* 24*/ { BARCODE_DBAR_EXP, -1, "[01]12345678901231[20]12", "", 0, "(01)12345678901231(20)12" }, - /* 25*/ { BARCODE_DBAR_EXP, -1, "[01]12345678901231[10]12[20]AB", "", ZINT_WARN_NONCOMPLIANT, "(01)12345678901231(10)12(20)AB" }, /* AI (20) should be 2 nos. */ - /* 26*/ { BARCODE_DBAR_EXP, GS1NOCHECK_MODE, "[01]12345678901231[10]12[20]AB", "", 0, "(01)12345678901231(10)12(20)AB" }, - /* 27*/ { BARCODE_DBAR_EXP, -1, "[01]12345678901231[10]AB[20]12", "", 0, "(01)12345678901231(10)AB(20)12" }, - /* 28*/ { BARCODE_DBAR_EXP_CC, -1, "[01]12345678901234", "[21]12345", ZINT_WARN_NONCOMPLIANT, "(01)12345678901234" }, - /* 29*/ { BARCODE_DBAR_EXP_CC, GS1NOCHECK_MODE, "[01]12345678901234", "[21]12345", 0, "(01)12345678901234" }, - /* 30*/ { BARCODE_DBAR_EXP_CC, -1, "[01]12345678901231", "[21]12345", 0, "(01)12345678901231" }, - /* 31*/ { BARCODE_DBAR_EXP_CC, -1, "[01]12345678901231[20]12[21]12345", "[21]12345", 0, "(01)12345678901231(20)12(21)12345" }, - /* 32*/ { BARCODE_DBAR_EXPSTK, -1, "[01]12345678901234[20]12", "", ZINT_WARN_NONCOMPLIANT, "" }, - /* 33*/ { BARCODE_DBAR_EXPSTK, GS1NOCHECK_MODE, "[01]12345678901234[20]12", "", 0, "" }, - /* 34*/ { BARCODE_DBAR_EXPSTK, -1, "[01]12345678901231[20]12", "", 0, "" }, - /* 35*/ { BARCODE_DBAR_EXPSTK_CC, -1, "[01]12345678901234[20]12", "[21]12345", ZINT_WARN_NONCOMPLIANT, "" }, - /* 36*/ { BARCODE_DBAR_EXPSTK_CC, GS1NOCHECK_MODE, "[01]12345678901234[20]12", "[21]12345", 0, "" }, - /* 37*/ { BARCODE_DBAR_EXPSTK_CC, -1, "[01]12345678901231[20]12", "[21]12345", 0, "" }, + /* 6*/ { BARCODE_GS1_128, -1, "[91]ABCDEF]GH", "", ZINT_WARN_NONCOMPLIANT, "(91)ABCDEF]GH" }, /* Invalid CSET 82 character */ + /* 7*/ { BARCODE_GS1_128, GS1NOCHECK_MODE, "[91]ABCDEF]GH", "", 0, "(91)ABCDEF]GH" }, + /* 8*/ { BARCODE_GS1_128, -1, "[91]ABCDEF)GH", "", 0, "(91)ABCDEF)GH" }, + /* 9*/ { BARCODE_GS1_128, -1, "[91]ABCDEF(GH", "", 0, "(91)ABCDEF(GH" }, + /* 10*/ { BARCODE_GS1_128, -1, "[91]ABCDE(20)12", "", 0, "(91)ABCDE(20)12" }, + /* 11*/ { BARCODE_GS1_128, GS1PARENS_MODE, "(91)ABCDEF]GH", "", ZINT_WARN_NONCOMPLIANT, "(91)ABCDEF]GH" }, /* Invalid CSET 82 character */ + /* 12*/ { BARCODE_GS1_128, GS1PARENS_MODE | GS1NOCHECK_MODE, "(91)ABCDEF]GH", "", 0, "(91)ABCDEF]GH" }, + /* 13*/ { BARCODE_GS1_128, GS1PARENS_MODE, "(91)ABCDEF)GH", "", 0, "(91)ABCDEF)GH" }, + /* 14*/ { BARCODE_GS1_128, GS1PARENS_MODE, "(91)ABCDE[FGH", "", ZINT_WARN_NONCOMPLIANT, "(91)ABCDE[FGH" }, /* Invalid CSET 82 character */ + /* 15*/ { BARCODE_GS1_128, GS1PARENS_MODE | GS1NOCHECK_MODE, "(91)ABCDE[FGH", "", 0, "(91)ABCDE[FGH" }, + /* 16*/ { BARCODE_GS1_128, GS1PARENS_MODE, "(91)ABCDE[92]GH", "", ZINT_WARN_NONCOMPLIANT, "(91)ABCDE[92]GH" }, /* Invalid CSET 82 character */ + /* 17*/ { BARCODE_GS1_128, GS1PARENS_MODE | GS1NOCHECK_MODE, "(91)ABCDE[92]GH", "", 0, "(91)ABCDE[92]GH" }, + /* 18*/ { BARCODE_GS1_128_CC, -1, "[01]12345678901234[20]12", "[21]12345", ZINT_WARN_NONCOMPLIANT, "(01)12345678901234(20)12" }, /* Incorrect check digit */ + /* 19*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]12345678901234[20]12", "[21]12345", 0, "(01)12345678901234(20)12" }, + /* 20*/ { BARCODE_GS1_128_CC, -1, "[01]12345678901231[20]12", "[21]12345", 0, "(01)12345678901231(20)12" }, + /* 21*/ { BARCODE_GS1_128_CC, -1, "[01]12345678901231[10]12[20]AB", "[21]12345", ZINT_WARN_NONCOMPLIANT, "(01)12345678901231(10)12(20)AB" }, /* AI (20) should be 2 nos. */ + /* 22*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]12345678901231[10]12[20]AB", "[21]12345", 0, "(01)12345678901231(10)12(20)AB" }, + /* 23*/ { BARCODE_GS1_128_CC, -1, "[01]12345678901231[10]AB[20]12", "[21]12345", 0, "(01)12345678901231(10)AB(20)12" }, + /* 24*/ { BARCODE_GS1_128_CC, -1, "[01]12345678901231[10]AB[20]12", "[30]1234567A", ZINT_WARN_NONCOMPLIANT, "(01)12345678901231(10)AB(20)12" }, + /* 25*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]12345678901231[10]AB[20]12", "[30]1234567A", 0, "(01)12345678901231(10)AB(20)12" }, + /* 26*/ { BARCODE_EAN14, -1, "1234567890123", "", 0, "(01)12345678901231" }, + /* 27*/ { BARCODE_EAN14, -1, "1234", "", 0, "(01)00000000012348" }, + /* 28*/ { BARCODE_EAN14, -1, "12345", "", 0, "(01)00000000123457" }, + /* 29*/ { BARCODE_EAN14, -1, "12340", "", 0, "(01)00000000123402" }, + /* 30*/ { BARCODE_NVE18, -1, "12345678901234567", "", 0, "(00)123456789012345675" }, + /* 31*/ { BARCODE_NVE18, -1, "1234", "", 0, "(00)000000000000012348" }, + /* 32*/ { BARCODE_NVE18, -1, "12345", "", 0, "(00)000000000000123457" }, + /* 33*/ { BARCODE_NVE18, -1, "12340", "", 0, "(00)000000000000123402" }, + /* 34*/ { BARCODE_DBAR_EXP, -1, "[01]12345678901234[20]12", "", ZINT_WARN_NONCOMPLIANT, "(01)12345678901234(20)12" }, /* Incorrect check digit */ + /* 35*/ { BARCODE_DBAR_EXP, GS1NOCHECK_MODE, "[01]12345678901234[20]12", "", 0, "(01)12345678901234(20)12" }, + /* 36*/ { BARCODE_DBAR_EXP, -1, "[01]12345678901231[20]12", "", 0, "(01)12345678901231(20)12" }, + /* 37*/ { BARCODE_DBAR_EXP, -1, "[01]12345678901231[10]12[20]AB", "", ZINT_WARN_NONCOMPLIANT, "(01)12345678901231(10)12(20)AB" }, /* AI (20) should be 2 nos. */ + /* 38*/ { BARCODE_DBAR_EXP, GS1NOCHECK_MODE, "[01]12345678901231[10]12[20]AB", "", 0, "(01)12345678901231(10)12(20)AB" }, + /* 39*/ { BARCODE_DBAR_EXP, -1, "[01]12345678901231[10]AB[20]12", "", 0, "(01)12345678901231(10)AB(20)12" }, + /* 40*/ { BARCODE_DBAR_EXP, -1, "[01]12345678901231[10]AB[20]12[90]ABC(2012", "", 0, "(01)12345678901231(10)AB(20)12(90)ABC(2012" }, + /* 41*/ { BARCODE_DBAR_EXP, -1, "[01]12345678901231[10]AB[20]12[90]ABC20)12", "", 0, "(01)12345678901231(10)AB(20)12(90)ABC20)12" }, + /* 42*/ { BARCODE_DBAR_EXP, -1, "[01]12345678901231[10]AB[20]12[90]ABC(20)12", "", 0, "(01)12345678901231(10)AB(20)12(90)ABC(20)12" }, + /* 43*/ { BARCODE_DBAR_EXP_CC, -1, "[01]12345678901234", "[21]12345", ZINT_WARN_NONCOMPLIANT, "(01)12345678901234" }, + /* 44*/ { BARCODE_DBAR_EXP_CC, GS1NOCHECK_MODE, "[01]12345678901234", "[21]12345", 0, "(01)12345678901234" }, + /* 45*/ { BARCODE_DBAR_EXP_CC, -1, "[01]12345678901231", "[21]12345", 0, "(01)12345678901231" }, + /* 46*/ { BARCODE_DBAR_EXP_CC, -1, "[01]12345678901231[20]12[21]12345", "[21]12345", 0, "(01)12345678901231(20)12(21)12345" }, + /* 47*/ { BARCODE_DBAR_EXPSTK, -1, "[01]12345678901234[20]12", "", ZINT_WARN_NONCOMPLIANT, "" }, + /* 48*/ { BARCODE_DBAR_EXPSTK, GS1NOCHECK_MODE, "[01]12345678901234[20]12", "", 0, "" }, + /* 49*/ { BARCODE_DBAR_EXPSTK, -1, "[01]12345678901231[20]12", "", 0, "" }, + /* 50*/ { BARCODE_DBAR_EXP, -1, "[01]12345678901231[20]12[90]ABC(20)12", "", 0, "(01)12345678901231(20)12(90)ABC(20)12" }, + /* 51*/ { BARCODE_DBAR_EXPSTK_CC, -1, "[01]12345678901234[20]12", "[21]12345", ZINT_WARN_NONCOMPLIANT, "" }, + /* 52*/ { BARCODE_DBAR_EXPSTK_CC, GS1NOCHECK_MODE, "[01]12345678901234[20]12", "[21]12345", 0, "" }, + /* 53*/ { BARCODE_DBAR_EXPSTK_CC, -1, "[01]12345678901231[20]12", "[21]12345", 0, "" }, }; int data_size = ARRAY_SIZE(data); int i, length, ret; @@ -1367,12 +1383,12 @@ static void test_gs1_verify(const testCtx *const p_ctx) { /*1006*/ { "[9999]1234", ZINT_ERROR_INVALID_DATA, "", "260: Invalid AI (9999)" }, /*1007*/ { "[01]12345678901234[7006]200101", ZINT_WARN_NONCOMPLIANT, "01123456789012347006200101", "261: AI (01) position 14: Bad checksum '4', expected '1'" }, /*1008*/ { "[01]12345678901231[7006]200101", 0, "01123456789012317006200101", "" }, - /*1009*/ { "[3900]1234567890[01]12345678901234", ZINT_WARN_NONCOMPLIANT, "39001234567890[0112345678901234", "261: AI (01) position 14: Bad checksum '4', expected '1'" }, - /*1010*/ { "[3900]1234567890[01]12345678901231", 0, "39001234567890[0112345678901231", "" }, - /*1011*/ { "[253]12345678901234[3901]12345678901234[20]12", ZINT_WARN_NONCOMPLIANT, "25312345678901234[390112345678901234[2012", "261: AI (253) position 13: Bad checksum '3', expected '8'" }, - /*1012*/ { "[253]12345678901284[3901]12345678901234[20]12", 0, "25312345678901284[390112345678901234[2012", "" }, - /*1013*/ { "[253]12345678901234[01]12345678901234[3901]12345678901234[20]12", ZINT_WARN_NONCOMPLIANT, "25312345678901234[0112345678901234390112345678901234[2012", "261: AI (01) position 14: Bad checksum '4', expected '1'" }, - /*1014*/ { "[253]12345678901284[01]12345678901231[3901]12345678901234[20]12", 0, "25312345678901284[0112345678901231390112345678901234[2012", "" }, + /*1009*/ { "[3900]1234567890[01]12345678901234", ZINT_WARN_NONCOMPLIANT, "39001234567890\0350112345678901234", "261: AI (01) position 14: Bad checksum '4', expected '1'" }, + /*1010*/ { "[3900]1234567890[01]12345678901231", 0, "39001234567890\0350112345678901231", "" }, + /*1011*/ { "[253]12345678901234[3901]12345678901234[20]12", ZINT_WARN_NONCOMPLIANT, "25312345678901234\035390112345678901234\0352012", "261: AI (253) position 13: Bad checksum '3', expected '8'" }, + /*1012*/ { "[253]12345678901284[3901]12345678901234[20]12", 0, "25312345678901284\035390112345678901234\0352012", "" }, + /*1013*/ { "[253]12345678901234[01]12345678901234[3901]12345678901234[20]12", ZINT_WARN_NONCOMPLIANT, "25312345678901234\0350112345678901234390112345678901234\0352012", "261: AI (01) position 14: Bad checksum '4', expected '1'" }, + /*1014*/ { "[253]12345678901284[01]12345678901231[3901]12345678901234[20]12", 0, "25312345678901284\0350112345678901231390112345678901234\0352012", "" }, /*1015*/ { "[01]12345678901231[0A]12345678901231[20]12", ZINT_ERROR_INVALID_DATA, "", "257: Invalid AI in input data (non-numeric characters in AI)" }, /*1016*/ { "[01]12345678901231[0]12345678901231[20]12", ZINT_ERROR_INVALID_DATA, "", "256: Invalid AI in input data (AI too short)" }, /*1017*/ { "[01]12345678901231[]12345678901231[20]12", ZINT_ERROR_INVALID_DATA, "", "256: Invalid AI in input data (AI too short)" }, @@ -2127,122 +2143,134 @@ static void test_gs1nocheck_mode(const testCtx *const p_ctx) { /* 51*/ { BARCODE_GS1_128, GS1NOCHECK_MODE, "[1234567890]123", "", ZINT_ERROR_INVALID_DATA, "Error 255: Invalid AI in input data (AI too long)" }, /* Too long still checked */ /* 52*/ { BARCODE_GS1_128, -1, "[12345]123", "", ZINT_ERROR_INVALID_DATA, "Error 255: Invalid AI in input data (AI too long)" }, /* 53*/ { BARCODE_GS1_128, GS1NOCHECK_MODE, "[12345]123", "", ZINT_ERROR_INVALID_DATA, "Error 255: Invalid AI in input data (AI too long)" }, /* Too long still checked */ - /* 54*/ { BARCODE_GS1_128_CC, -1, "[01]12345678901231", "[20]12", 0, "" }, - /* 55*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]12345678901231", "[20]12", 0, "" }, - /* 56*/ { BARCODE_GS1_128_CC, -1, "[01]12345678901234", "[20]12", ZINT_WARN_NONCOMPLIANT, "Warning 261: AI (01) position 14: Bad checksum '4', expected '1' in linear component" }, - /* 57*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]12345678901234", "[20]12", 0, "" }, - /* 58*/ { BARCODE_GS1_128_CC, -1, "[01]123456789012345", "[20]12", ZINT_ERROR_INVALID_DATA, "Error 259: Invalid data length for AI (01) in linear component" }, - /* 59*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]123456789012345", "[20]12", 0, "" }, - /* 60*/ { BARCODE_GS1_128_CC, -1, "[01]12345678901231", "[20]123", ZINT_ERROR_INVALID_DATA, "Error 259: Invalid data length for AI (20) in 2D component" }, - /* 61*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]12345678901231", "[20]123", 0, "" }, - /* 62*/ { BARCODE_GS1_128_CC, -1, "[01]12345678901231", "[20]1A", ZINT_WARN_NONCOMPLIANT, "Warning 261: AI (20) position 2: Non-numeric character 'A' in 2D component" }, - /* 63*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]12345678901231", "[20]1A", 0, "" }, - /* 64*/ { BARCODE_GS1_128_CC, -1, "[01]1234567890121", "[20]1\177", ZINT_ERROR_INVALID_DATA, "Error 263: DEL characters are not supported by GS1 in 2D component" }, - /* 65*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[20]1\177", ZINT_ERROR_INVALID_DATA, "Error 263: DEL characters are not supported by GS1 in 2D component" }, /* Nonprintable ASCII still checked */ - /* 66*/ { BARCODE_GS1_128_CC, -1, "[01]1234567890121\200", "[20]12", ZINT_ERROR_INVALID_DATA, "Error 250: Extended ASCII characters are not supported by GS1 in linear component" }, - /* 67*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]1234567890121\200", "[20]12", ZINT_ERROR_INVALID_DATA, "Error 250: Extended ASCII characters are not supported by GS1 in linear component" }, - /* 68*/ { BARCODE_GS1_128_CC, -1, "[01]1234567890121", "[20]1\200", ZINT_ERROR_INVALID_DATA, "Error 250: Extended ASCII characters are not supported by GS1 in 2D component" }, - /* 69*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[20]1\200", ZINT_ERROR_INVALID_DATA, "Error 250: Extended ASCII characters are not supported by GS1 in 2D component" }, /* Extended ASCII still checked */ - /* 70*/ { BARCODE_GS1_128_CC, -1, "[01]1234567890121", "2012", ZINT_ERROR_INVALID_DATA, "Error 252: Data does not start with an AI in 2D component" }, - /* 71*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]1234567890121", "2012", ZINT_ERROR_INVALID_DATA, "Error 252: Data does not start with an AI in 2D component" }, /* Format still checked */ - /* 72*/ { BARCODE_GS1_128_CC, -1, "[01]1234567890121", "[20]", ZINT_ERROR_INVALID_DATA, "Error 258: Empty data field in input data in 2D component" }, - /* 73*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[20]", 0, "" }, /* Zero-length data not checked */ - /* 74*/ { BARCODE_GS1_128_CC, -1, "[01]1234567890121", "[2]12", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, - /* 75*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[2]12", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, /* Length 1 AI still checked */ - /* 76*/ { BARCODE_GS1_128_CC, -1, "[01]1234567890121", "[]12", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, - /* 77*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[]12", 0, "" }, /* Length 0 AI with data not checked */ - /* 78*/ { BARCODE_GS1_128_CC, -1, "[01]1234567890121", "[1]2[]1", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, - /* 79*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[1]2[]1", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, /* Length 1 AI still checked */ - /* 80*/ { BARCODE_GS1_128_CC, -1, "[01]1234567890121", "[]", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, - /* 81*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[]", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, /* Length 0 AI with no data still checked */ - /* 82*/ { BARCODE_GS1_128_CC, -1, "[01]1234567890121", "[][20]12", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, - /* 83*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[][20]12", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, /* Length 0 AI with no data still checked */ - /* 84*/ { BARCODE_GS1_128_CC, -1, "[01]1234567890121", "[20]12[]", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, - /* 85*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[20]12[]", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, /* Length 0 AI with no data still checked */ - /* 86*/ { BARCODE_DBAR_EXP, -1, "[01]12345678901231", "", 0, "" }, - /* 87*/ { BARCODE_DBAR_EXP, GS1NOCHECK_MODE, "[01]12345678901231", "", 0, "" }, - /* 88*/ { BARCODE_DBAR_EXP, -1, "[01]12345678901231[10]123[11]1234", "", ZINT_ERROR_INVALID_DATA, "Error 259: Invalid data length for AI (11)" }, - /* 89*/ { BARCODE_DBAR_EXP, GS1NOCHECK_MODE, "[01]12345678901231[10]123[11]1234", "", 0, "" }, - /* 90*/ { BARCODE_DBAR_EXP, -1, "[01]12345678901231[10]123[11]1234A", "", ZINT_ERROR_INVALID_DATA, "Error 259: Invalid data length for AI (11)" }, - /* 91*/ { BARCODE_DBAR_EXP, GS1NOCHECK_MODE, "[01]12345678901231[10]123[11]1234A", "", 0, "" }, - /* 92*/ { BARCODE_DBAR_EXP, -1, "[01]12345678901231[10]123[11]12345A", "", ZINT_WARN_NONCOMPLIANT, "Warning 261: AI (11) position 6: Non-numeric character 'A'" }, - /* 93*/ { BARCODE_DBAR_EXP, GS1NOCHECK_MODE, "[01]12345678901231[10]123[11]12345A", "", 0, "" }, - /* 94*/ { BARCODE_DBAR_EXP, -1, "[01]1234567890121\177", "", ZINT_ERROR_INVALID_DATA, "Error 263: DEL characters are not supported by GS1" }, - /* 95*/ { BARCODE_DBAR_EXP, GS1NOCHECK_MODE, "[01]1234567890121\177", "", ZINT_ERROR_INVALID_DATA, "Error 263: DEL characters are not supported by GS1" }, /* Nonprintable ASCII still checked */ - /* 96*/ { BARCODE_DBAR_EXP, -1, "[01]1234567890121\200", "", ZINT_ERROR_INVALID_DATA, "Error 250: Extended ASCII characters are not supported by GS1" }, - /* 97*/ { BARCODE_DBAR_EXP, GS1NOCHECK_MODE, "[01]1234567890121\200", "", ZINT_ERROR_INVALID_DATA, "Error 250: Extended ASCII characters are not supported by GS1" }, /* Extended ASCII still checked */ - /* 98*/ { BARCODE_DBAR_EXP, -1, "011234567890121", "", ZINT_ERROR_INVALID_DATA, "Error 252: Data does not start with an AI" }, - /* 99*/ { BARCODE_DBAR_EXP, GS1NOCHECK_MODE, "011234567890121", "", ZINT_ERROR_INVALID_DATA, "Error 252: Data does not start with an AI" }, /* Format still checked */ - /*100*/ { BARCODE_DBAR_EXP, -1, "[10]", "", ZINT_ERROR_INVALID_DATA, "Error 258: Empty data field in input data" }, - /*101*/ { BARCODE_DBAR_EXP, GS1NOCHECK_MODE, "[10]", "", 0, "" }, /* Zero-length data not checked */ - /*102*/ { BARCODE_DBAR_EXP, -1, "[2]1", "", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short)" }, - /*103*/ { BARCODE_DBAR_EXP, GS1NOCHECK_MODE, "[2]1", "", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short)" }, /* Length 1 AI still checked */ - /*104*/ { BARCODE_DBAR_EXP, -1, "[]1", "", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short)" }, - /*105*/ { BARCODE_DBAR_EXP, GS1NOCHECK_MODE, "[]1", "", 0, "" }, /* Length 0 AI with data not checked */ - /*106*/ { BARCODE_DBAR_EXP, -1, "[]", "", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short)" }, - /*107*/ { BARCODE_DBAR_EXP, GS1NOCHECK_MODE, "[]", "", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short)" }, /* Length 0 AI with no data still checked */ - /*108*/ { BARCODE_DBAR_EXP, -1, "[20]12[]", "", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short)" }, - /*109*/ { BARCODE_DBAR_EXP, GS1NOCHECK_MODE, "[20]12[]", "", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short)" }, /* Length 0 AI with no data still checked */ - /*110*/ { BARCODE_DBAR_EXP_CC, -1, "[01]12345678901231[10]123[11]121212", "[21]ABC123[22]12345", 0, "" }, - /*111*/ { BARCODE_DBAR_EXP_CC, GS1NOCHECK_MODE, "[01]123456789012[01]12345678901231[10]123[11]121212", "[21]ABC123[22]12345", 0, "" }, - /*112*/ { BARCODE_DBAR_EXP_CC, -1, "[01]12345678901231[10]123[11]1234", "[21]ABC123[22]12345", ZINT_ERROR_INVALID_DATA, "Error 259: Invalid data length for AI (11) in linear component" }, - /*113*/ { BARCODE_DBAR_EXP_CC, GS1NOCHECK_MODE, "[01]12345678901231[10]123[11]1234", "[21]ABC123[22]12345", 0, "" }, - /*114*/ { BARCODE_DBAR_EXP_CC, -1, "[01]12345678901231[10]123[11]123456", "[21]ABC123[22]12345", ZINT_WARN_NONCOMPLIANT, "Warning 261: AI (11) position 3: Invalid month '34' in linear component" }, - /*115*/ { BARCODE_DBAR_EXP_CC, GS1NOCHECK_MODE, "[01]12345678901231[10]123[11]123456", "[21]ABC123[22]12345", 0, "" }, - /*116*/ { BARCODE_DBAR_EXP_CC, -1, "[01]12345678901231[10]123[11]121212", "[21]ABC123[22]12345[30]123456789", ZINT_ERROR_INVALID_DATA, "Error 259: Invalid data length for AI (30) in 2D component" }, - /*117*/ { BARCODE_DBAR_EXP_CC, GS1NOCHECK_MODE, "[01]123456789012[01]12345678901231[10]123[11]121212", "[21]ABC123[22]12345[30]123456789", 0, "" }, - /*118*/ { BARCODE_DBAR_EXP_CC, -1, "[01]12345678901231[10]123[11]121212", "[21]ABC123[22]12345[30]1234567A", ZINT_WARN_NONCOMPLIANT, "Warning 261: AI (30) position 8: Non-numeric character 'A' in 2D component" }, - /*119*/ { BARCODE_DBAR_EXP_CC, GS1NOCHECK_MODE, "[01]123456789012[01]12345678901231[10]123[11]121212", "[21]ABC123[22]12345[30]1234567A", 0, "" }, - /*120*/ { BARCODE_DBAR_EXP_CC, -1, "[01]1234567890121", "[20]1\177", ZINT_ERROR_INVALID_DATA, "Error 263: DEL characters are not supported by GS1 in 2D component" }, - /*121*/ { BARCODE_DBAR_EXP_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[20]1\177", ZINT_ERROR_INVALID_DATA, "Error 263: DEL characters are not supported by GS1 in 2D component" }, /* Nonprintable ASCII still checked */ - /*122*/ { BARCODE_DBAR_EXP_CC, -1, "[01]1234567890121", "[20]1\200", ZINT_ERROR_INVALID_DATA, "Error 250: Extended ASCII characters are not supported by GS1 in 2D component" }, - /*123*/ { BARCODE_DBAR_EXP_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[20]1\200", ZINT_ERROR_INVALID_DATA, "Error 250: Extended ASCII characters are not supported by GS1 in 2D component" }, /* Extended ASCII still checked */ - /*124*/ { BARCODE_DBAR_EXP_CC, -1, "[01]1234567890121", "2012", ZINT_ERROR_INVALID_DATA, "Error 252: Data does not start with an AI in 2D component" }, - /*125*/ { BARCODE_DBAR_EXP_CC, GS1NOCHECK_MODE, "[01]1234567890121", "2012", ZINT_ERROR_INVALID_DATA, "Error 252: Data does not start with an AI in 2D component" }, /* Format still checked */ - /*126*/ { BARCODE_DBAR_EXP_CC, -1, "[01]1234567890121", "[10]", ZINT_ERROR_INVALID_DATA, "Error 258: Empty data field in input data in 2D component" }, - /*127*/ { BARCODE_DBAR_EXP_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[10]", 0, "" }, /* Zero-length data not checked */ - /*128*/ { BARCODE_DBAR_EXP_CC, -1, "[01]1234567890121", "[2]1", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, - /*129*/ { BARCODE_DBAR_EXP_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[2]1", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, /* Length 1 AI still checked */ - /*130*/ { BARCODE_DBAR_EXP_CC, -1, "[01]1234567890121", "[]12", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, - /*131*/ { BARCODE_DBAR_EXP_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[]12", 0, "" }, /* Length 0 AI with data not checked */ - /*132*/ { BARCODE_DBAR_EXP_CC, -1, "[01]1234567890121", "[]", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, - /*133*/ { BARCODE_DBAR_EXP_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[]", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, /* Length 0 AI with no data still checked */ - /*134*/ { BARCODE_DBAR_EXP_CC, -1, "[01]1234567890121", "[20]12[][10]123", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, - /*135*/ { BARCODE_DBAR_EXP_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[20]12[][10]123", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, /* Length 0 AI with no data still checked */ - /*136*/ { BARCODE_DBAR_EXPSTK, -1, "[01]12345678901231", "", 0, "" }, - /*137*/ { BARCODE_DBAR_EXPSTK, GS1NOCHECK_MODE, "[01]12345678901231", "", 0, "" }, - /*138*/ { BARCODE_DBAR_EXPSTK, -1, "[01]12345678901231[10]123[11]1234", "", ZINT_ERROR_INVALID_DATA, "Error 259: Invalid data length for AI (11)" }, - /*139*/ { BARCODE_DBAR_EXPSTK, GS1NOCHECK_MODE, "[01]12345678901231[10]123[11]1234", "", 0, "" }, - /*140*/ { BARCODE_DBAR_EXPSTK, -1, "[01]12345678901231[10]123[11]1234A", "", ZINT_ERROR_INVALID_DATA, "Error 259: Invalid data length for AI (11)" }, - /*141*/ { BARCODE_DBAR_EXPSTK, GS1NOCHECK_MODE, "[01]12345678901231[10]123[11]1234A", "", 0, "" }, - /*142*/ { BARCODE_DBAR_EXPSTK, -1, "[01]12345678901231[10]123[11]12345A", "", ZINT_WARN_NONCOMPLIANT, "Warning 261: AI (11) position 6: Non-numeric character 'A'" }, - /*143*/ { BARCODE_DBAR_EXPSTK, GS1NOCHECK_MODE, "[01]12345678901231[10]123[11]12345A", "", 0, "" }, - /*144*/ { BARCODE_DBAR_EXPSTK, -1, "[01]1234567890121\177", "", ZINT_ERROR_INVALID_DATA, "Error 263: DEL characters are not supported by GS1" }, - /*145*/ { BARCODE_DBAR_EXPSTK, GS1NOCHECK_MODE, "[01]1234567890121\177", "", ZINT_ERROR_INVALID_DATA, "Error 263: DEL characters are not supported by GS1" }, /* Nonprintable ASCII still checked */ - /*146*/ { BARCODE_DBAR_EXPSTK, -1, "[01]1234567890121\200", "", ZINT_ERROR_INVALID_DATA, "Error 250: Extended ASCII characters are not supported by GS1" }, - /*147*/ { BARCODE_DBAR_EXPSTK, GS1NOCHECK_MODE, "[01]1234567890121\200", "", ZINT_ERROR_INVALID_DATA, "Error 250: Extended ASCII characters are not supported by GS1" }, /* Extended ASCII still checked */ - /*148*/ { BARCODE_DBAR_EXPSTK, -1, "011234567890121", "", ZINT_ERROR_INVALID_DATA, "Error 252: Data does not start with an AI" }, - /*149*/ { BARCODE_DBAR_EXPSTK, GS1NOCHECK_MODE, "011234567890121", "", ZINT_ERROR_INVALID_DATA, "Error 252: Data does not start with an AI" }, /* Format still checked */ - /*150*/ { BARCODE_DBAR_EXPSTK, -1, "[01]", "", ZINT_ERROR_INVALID_DATA, "Error 258: Empty data field in input data" }, - /*151*/ { BARCODE_DBAR_EXPSTK, GS1NOCHECK_MODE, "[01]", "", 0, "" }, /* Zero-length data not checked */ - /*152*/ { BARCODE_DBAR_EXPSTK_CC, -1, "[01]12345678901231[10]123[11]121212", "[21]ABC123[22]12345", 0, "" }, - /*153*/ { BARCODE_DBAR_EXPSTK_CC, GS1NOCHECK_MODE, "[01]123456789012[01]12345678901231[10]123[11]121212", "[21]ABC123[22]12345", 0, "" }, - /*154*/ { BARCODE_DBAR_EXPSTK_CC, -1, "[01]12345678901231[10]123[11]1234", "[21]ABC123[22]12345", ZINT_ERROR_INVALID_DATA, "Error 259: Invalid data length for AI (11) in linear component" }, - /*155*/ { BARCODE_DBAR_EXPSTK_CC, GS1NOCHECK_MODE, "[01]12345678901231[10]123[11]1234", "[21]ABC123[22]12345", 0, "" }, - /*156*/ { BARCODE_DBAR_EXPSTK_CC, -1, "[01]12345678901231[10]123[11]123456", "[21]ABC123[22]12345", ZINT_WARN_NONCOMPLIANT, "Warning 261: AI (11) position 3: Invalid month '34' in linear component" }, - /*157*/ { BARCODE_DBAR_EXPSTK_CC, GS1NOCHECK_MODE, "[01]12345678901231[10]123[11]123456", "[21]ABC123[22]12345", 0, "" }, - /*158*/ { BARCODE_DBAR_EXPSTK_CC, -1, "[01]12345678901231[10]123[11]121212", "[21]ABC123[22]12345[30]123456789", ZINT_ERROR_INVALID_DATA, "Error 259: Invalid data length for AI (30) in 2D component" }, - /*159*/ { BARCODE_DBAR_EXPSTK_CC, GS1NOCHECK_MODE, "[01]123456789012[01]12345678901231[10]123[11]121212", "[21]ABC123[22]12345[30]123456789", 0, "" }, - /*160*/ { BARCODE_DBAR_EXPSTK_CC, -1, "[01]12345678901231[10]123[11]121212", "[21]ABC123[22]12345[30]1234567A", ZINT_WARN_NONCOMPLIANT, "Warning 261: AI (30) position 8: Non-numeric character 'A' in 2D component" }, - /*161*/ { BARCODE_DBAR_EXPSTK_CC, GS1NOCHECK_MODE, "[01]123456789012[01]12345678901231[10]123[11]121212", "[21]ABC123[22]12345[30]1234567A", 0, "" }, - /*162*/ { BARCODE_DBAR_EXPSTK_CC, -1, "[01]1234567890121", "[20]1\177", ZINT_ERROR_INVALID_DATA, "Error 263: DEL characters are not supported by GS1 in 2D component" }, - /*163*/ { BARCODE_DBAR_EXPSTK_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[20]1\177", ZINT_ERROR_INVALID_DATA, "Error 263: DEL characters are not supported by GS1 in 2D component" }, /* Nonprintable ASCII still checked */ - /*164*/ { BARCODE_DBAR_EXPSTK_CC, -1, "[01]1234567890121", "[20]1\200", ZINT_ERROR_INVALID_DATA, "Error 250: Extended ASCII characters are not supported by GS1 in 2D component" }, - /*165*/ { BARCODE_DBAR_EXPSTK_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[20]1\200", ZINT_ERROR_INVALID_DATA, "Error 250: Extended ASCII characters are not supported by GS1 in 2D component" }, /* Extended ASCII still checked */ - /*166*/ { BARCODE_DBAR_EXPSTK_CC, -1, "[01]1234567890121", "2012", ZINT_ERROR_INVALID_DATA, "Error 252: Data does not start with an AI in 2D component" }, - /*167*/ { BARCODE_DBAR_EXPSTK_CC, GS1NOCHECK_MODE, "[01]1234567890121", "2012", ZINT_ERROR_INVALID_DATA, "Error 252: Data does not start with an AI in 2D component" }, /* Format still checked */ - /*168*/ { BARCODE_DBAR_EXPSTK_CC, -1, "[01]1234567890121", "[235]", ZINT_ERROR_INVALID_DATA, "Error 258: Empty data field in input data in 2D component" }, - /*169*/ { BARCODE_DBAR_EXPSTK_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[235]", 0, "" }, /* Zero-length data not checked */ + /* 54*/ { BARCODE_GS1_128, GS1PARENS_MODE, "(91)AB[", "", ZINT_WARN_NONCOMPLIANT, "Warning 261: AI (91) position 3: Invalid CSET 82 character '['" }, + /* 55*/ { BARCODE_GS1_128, GS1PARENS_MODE | GS1NOCHECK_MODE, "(91)AB[", "", 0, "" }, + /* 56*/ { BARCODE_GS1_128_CC, -1, "[01]12345678901231", "[20]12", 0, "" }, + /* 57*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]12345678901231", "[20]12", 0, "" }, + /* 58*/ { BARCODE_GS1_128_CC, -1, "[01]12345678901234", "[20]12", ZINT_WARN_NONCOMPLIANT, "Warning 261: AI (01) position 14: Bad checksum '4', expected '1' in linear component" }, + /* 59*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]12345678901234", "[20]12", 0, "" }, + /* 60*/ { BARCODE_GS1_128_CC, -1, "[01]123456789012345", "[20]12", ZINT_ERROR_INVALID_DATA, "Error 259: Invalid data length for AI (01) in linear component" }, + /* 61*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]123456789012345", "[20]12", 0, "" }, + /* 62*/ { BARCODE_GS1_128_CC, -1, "[01]12345678901231", "[20]123", ZINT_ERROR_INVALID_DATA, "Error 259: Invalid data length for AI (20) in 2D component" }, + /* 63*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]12345678901231", "[20]123", 0, "" }, + /* 64*/ { BARCODE_GS1_128_CC, -1, "[01]12345678901231", "[20]1A", ZINT_WARN_NONCOMPLIANT, "Warning 261: AI (20) position 2: Non-numeric character 'A' in 2D component" }, + /* 65*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]12345678901231", "[20]1A", 0, "" }, + /* 66*/ { BARCODE_GS1_128_CC, -1, "[01]1234567890121", "[20]1\177", ZINT_ERROR_INVALID_DATA, "Error 263: DEL characters are not supported by GS1 in 2D component" }, + /* 67*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[20]1\177", ZINT_ERROR_INVALID_DATA, "Error 263: DEL characters are not supported by GS1 in 2D component" }, /* Nonprintable ASCII still checked */ + /* 68*/ { BARCODE_GS1_128_CC, -1, "[01]1234567890121\200", "[20]12", ZINT_ERROR_INVALID_DATA, "Error 250: Extended ASCII characters are not supported by GS1 in linear component" }, + /* 69*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]1234567890121\200", "[20]12", ZINT_ERROR_INVALID_DATA, "Error 250: Extended ASCII characters are not supported by GS1 in linear component" }, + /* 70*/ { BARCODE_GS1_128_CC, -1, "[01]1234567890121", "[20]1\200", ZINT_ERROR_INVALID_DATA, "Error 250: Extended ASCII characters are not supported by GS1 in 2D component" }, + /* 71*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[20]1\200", ZINT_ERROR_INVALID_DATA, "Error 250: Extended ASCII characters are not supported by GS1 in 2D component" }, /* Extended ASCII still checked */ + /* 72*/ { BARCODE_GS1_128_CC, -1, "[01]1234567890121", "2012", ZINT_ERROR_INVALID_DATA, "Error 252: Data does not start with an AI in 2D component" }, + /* 73*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]1234567890121", "2012", ZINT_ERROR_INVALID_DATA, "Error 252: Data does not start with an AI in 2D component" }, /* Format still checked */ + /* 74*/ { BARCODE_GS1_128_CC, -1, "[01]1234567890121", "[20]", ZINT_ERROR_INVALID_DATA, "Error 258: Empty data field in input data in 2D component" }, + /* 75*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[20]", 0, "" }, /* Zero-length data not checked */ + /* 76*/ { BARCODE_GS1_128_CC, -1, "[01]1234567890121", "[2]12", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, + /* 77*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[2]12", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, /* Length 1 AI still checked */ + /* 78*/ { BARCODE_GS1_128_CC, -1, "[01]1234567890121", "[]12", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, + /* 79*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[]12", 0, "" }, /* Length 0 AI with data not checked */ + /* 80*/ { BARCODE_GS1_128_CC, -1, "[01]1234567890121", "[1]2[]1", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, + /* 81*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[1]2[]1", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, /* Length 1 AI still checked */ + /* 82*/ { BARCODE_GS1_128_CC, -1, "[01]1234567890121", "[]", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, + /* 83*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[]", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, /* Length 0 AI with no data still checked */ + /* 84*/ { BARCODE_GS1_128_CC, -1, "[01]1234567890121", "[][20]12", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, + /* 85*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[][20]12", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, /* Length 0 AI with no data still checked */ + /* 86*/ { BARCODE_GS1_128_CC, -1, "[01]1234567890121", "[20]12[]", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, + /* 87*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[20]12[]", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, /* Length 0 AI with no data still checked */ + /* 88*/ { BARCODE_GS1_128_CC, -1, "[01]12345678901231", "[90]12]34", ZINT_ERROR_INVALID_DATA, "Error 441: Invalid character in 2D component input data" }, + /* 89*/ { BARCODE_GS1_128_CC, GS1NOCHECK_MODE, "[01]12345678901231", "[90]12]34", ZINT_ERROR_INVALID_DATA, "Error 441: Invalid character in 2D component input data" }, /* Non-CSET 82 always checked for composite data */ + /* 90*/ { BARCODE_DBAR_EXP, -1, "[01]12345678901231", "", 0, "" }, + /* 91*/ { BARCODE_DBAR_EXP, GS1NOCHECK_MODE, "[01]12345678901231", "", 0, "" }, + /* 92*/ { BARCODE_DBAR_EXP, -1, "[01]12345678901231[10]123[11]1234", "", ZINT_ERROR_INVALID_DATA, "Error 259: Invalid data length for AI (11)" }, + /* 93*/ { BARCODE_DBAR_EXP, GS1NOCHECK_MODE, "[01]12345678901231[10]123[11]1234", "", 0, "" }, + /* 94*/ { BARCODE_DBAR_EXP, -1, "[01]12345678901231[10]123[11]1234A", "", ZINT_ERROR_INVALID_DATA, "Error 259: Invalid data length for AI (11)" }, + /* 95*/ { BARCODE_DBAR_EXP, GS1NOCHECK_MODE, "[01]12345678901231[10]123[11]1234A", "", 0, "" }, + /* 96*/ { BARCODE_DBAR_EXP, -1, "[01]12345678901231[10]123[11]12345A", "", ZINT_WARN_NONCOMPLIANT, "Warning 261: AI (11) position 6: Non-numeric character 'A'" }, + /* 97*/ { BARCODE_DBAR_EXP, GS1NOCHECK_MODE, "[01]12345678901231[10]123[11]12345A", "", 0, "" }, + /* 98*/ { BARCODE_DBAR_EXP, -1, "[01]1234567890121\177", "", ZINT_ERROR_INVALID_DATA, "Error 263: DEL characters are not supported by GS1" }, + /* 99*/ { BARCODE_DBAR_EXP, GS1NOCHECK_MODE, "[01]1234567890121\177", "", ZINT_ERROR_INVALID_DATA, "Error 263: DEL characters are not supported by GS1" }, /* Nonprintable ASCII still checked */ + /*100*/ { BARCODE_DBAR_EXP, -1, "[01]1234567890121\200", "", ZINT_ERROR_INVALID_DATA, "Error 250: Extended ASCII characters are not supported by GS1" }, + /*101*/ { BARCODE_DBAR_EXP, GS1NOCHECK_MODE, "[01]1234567890121\200", "", ZINT_ERROR_INVALID_DATA, "Error 250: Extended ASCII characters are not supported by GS1" }, /* Extended ASCII still checked */ + /*102*/ { BARCODE_DBAR_EXP, -1, "011234567890121", "", ZINT_ERROR_INVALID_DATA, "Error 252: Data does not start with an AI" }, + /*103*/ { BARCODE_DBAR_EXP, GS1NOCHECK_MODE, "011234567890121", "", ZINT_ERROR_INVALID_DATA, "Error 252: Data does not start with an AI" }, /* Format still checked */ + /*104*/ { BARCODE_DBAR_EXP, -1, "[10]", "", ZINT_ERROR_INVALID_DATA, "Error 258: Empty data field in input data" }, + /*105*/ { BARCODE_DBAR_EXP, GS1NOCHECK_MODE, "[10]", "", 0, "" }, /* Zero-length data not checked */ + /*106*/ { BARCODE_DBAR_EXP, -1, "[2]1", "", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short)" }, + /*107*/ { BARCODE_DBAR_EXP, GS1NOCHECK_MODE, "[2]1", "", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short)" }, /* Length 1 AI still checked */ + /*108*/ { BARCODE_DBAR_EXP, -1, "[]1", "", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short)" }, + /*109*/ { BARCODE_DBAR_EXP, GS1NOCHECK_MODE, "[]1", "", 0, "" }, /* Length 0 AI with data not checked */ + /*110*/ { BARCODE_DBAR_EXP, -1, "[]", "", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short)" }, + /*111*/ { BARCODE_DBAR_EXP, GS1NOCHECK_MODE, "[]", "", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short)" }, /* Length 0 AI with no data still checked */ + /*112*/ { BARCODE_DBAR_EXP, -1, "[20]12[]", "", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short)" }, + /*113*/ { BARCODE_DBAR_EXP, GS1NOCHECK_MODE, "[20]12[]", "", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short)" }, /* Length 0 AI with no data still checked */ + /*114*/ { BARCODE_DBAR_EXP, -1, "[90]12]34", "", ZINT_ERROR_INVALID_DATA, "Error 386: Invalid character in General Field data" }, + /*115*/ { BARCODE_DBAR_EXP, GS1NOCHECK_MODE, "[90]12]34", "", ZINT_ERROR_INVALID_DATA, "Error 386: Invalid character in General Field data" }, /* Non-CSET 82 always checked for DBAR_EXP */ + /*116*/ { BARCODE_DBAR_EXP_CC, -1, "[01]12345678901231[10]123[11]121212", "[21]ABC123[22]12345", 0, "" }, + /*117*/ { BARCODE_DBAR_EXP_CC, GS1NOCHECK_MODE, "[01]123456789012[01]12345678901231[10]123[11]121212", "[21]ABC123[22]12345", 0, "" }, + /*118*/ { BARCODE_DBAR_EXP_CC, -1, "[01]12345678901231[10]123[11]1234", "[21]ABC123[22]12345", ZINT_ERROR_INVALID_DATA, "Error 259: Invalid data length for AI (11) in linear component" }, + /*119*/ { BARCODE_DBAR_EXP_CC, GS1NOCHECK_MODE, "[01]12345678901231[10]123[11]1234", "[21]ABC123[22]12345", 0, "" }, + /*120*/ { BARCODE_DBAR_EXP_CC, -1, "[01]12345678901231[10]123[11]123456", "[21]ABC123[22]12345", ZINT_WARN_NONCOMPLIANT, "Warning 261: AI (11) position 3: Invalid month '34' in linear component" }, + /*121*/ { BARCODE_DBAR_EXP_CC, GS1NOCHECK_MODE, "[01]12345678901231[10]123[11]123456", "[21]ABC123[22]12345", 0, "" }, + /*122*/ { BARCODE_DBAR_EXP_CC, -1, "[01]12345678901231[10]123[11]121212", "[21]ABC123[22]12345[30]123456789", ZINT_ERROR_INVALID_DATA, "Error 259: Invalid data length for AI (30) in 2D component" }, + /*123*/ { BARCODE_DBAR_EXP_CC, GS1NOCHECK_MODE, "[01]123456789012[01]12345678901231[10]123[11]121212", "[21]ABC123[22]12345[30]123456789", 0, "" }, + /*124*/ { BARCODE_DBAR_EXP_CC, -1, "[01]12345678901231[10]123[11]121212", "[21]ABC123[22]12345[30]1234567A", ZINT_WARN_NONCOMPLIANT, "Warning 261: AI (30) position 8: Non-numeric character 'A' in 2D component" }, + /*125*/ { BARCODE_DBAR_EXP_CC, GS1NOCHECK_MODE, "[01]123456789012[01]12345678901231[10]123[11]121212", "[21]ABC123[22]12345[30]1234567A", 0, "" }, + /*126*/ { BARCODE_DBAR_EXP_CC, -1, "[01]1234567890121", "[20]1\177", ZINT_ERROR_INVALID_DATA, "Error 263: DEL characters are not supported by GS1 in 2D component" }, + /*127*/ { BARCODE_DBAR_EXP_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[20]1\177", ZINT_ERROR_INVALID_DATA, "Error 263: DEL characters are not supported by GS1 in 2D component" }, /* Nonprintable ASCII still checked */ + /*128*/ { BARCODE_DBAR_EXP_CC, -1, "[01]1234567890121", "[20]1\200", ZINT_ERROR_INVALID_DATA, "Error 250: Extended ASCII characters are not supported by GS1 in 2D component" }, + /*129*/ { BARCODE_DBAR_EXP_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[20]1\200", ZINT_ERROR_INVALID_DATA, "Error 250: Extended ASCII characters are not supported by GS1 in 2D component" }, /* Extended ASCII still checked */ + /*130*/ { BARCODE_DBAR_EXP_CC, -1, "[01]1234567890121", "2012", ZINT_ERROR_INVALID_DATA, "Error 252: Data does not start with an AI in 2D component" }, + /*131*/ { BARCODE_DBAR_EXP_CC, GS1NOCHECK_MODE, "[01]1234567890121", "2012", ZINT_ERROR_INVALID_DATA, "Error 252: Data does not start with an AI in 2D component" }, /* Format still checked */ + /*132*/ { BARCODE_DBAR_EXP_CC, -1, "[01]1234567890121", "[10]", ZINT_ERROR_INVALID_DATA, "Error 258: Empty data field in input data in 2D component" }, + /*133*/ { BARCODE_DBAR_EXP_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[10]", 0, "" }, /* Zero-length data not checked */ + /*134*/ { BARCODE_DBAR_EXP_CC, -1, "[01]1234567890121", "[2]1", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, + /*135*/ { BARCODE_DBAR_EXP_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[2]1", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, /* Length 1 AI still checked */ + /*136*/ { BARCODE_DBAR_EXP_CC, -1, "[01]1234567890121", "[]12", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, + /*137*/ { BARCODE_DBAR_EXP_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[]12", 0, "" }, /* Length 0 AI with data not checked */ + /*138*/ { BARCODE_DBAR_EXP_CC, -1, "[01]1234567890121", "[]", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, + /*139*/ { BARCODE_DBAR_EXP_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[]", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, /* Length 0 AI with no data still checked */ + /*140*/ { BARCODE_DBAR_EXP_CC, -1, "[01]1234567890121", "[20]12[][10]123", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, + /*141*/ { BARCODE_DBAR_EXP_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[20]12[][10]123", ZINT_ERROR_INVALID_DATA, "Error 256: Invalid AI in input data (AI too short) in 2D component" }, /* Length 0 AI with no data still checked */ + /*142*/ { BARCODE_DBAR_EXP_CC, -1, "[01]1234567890121", "[90]12]34", ZINT_ERROR_INVALID_DATA, "Error 441: Invalid character in 2D component input data" }, + /*143*/ { BARCODE_DBAR_EXP_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[90]12]34", ZINT_ERROR_INVALID_DATA, "Error 441: Invalid character in 2D component input data" }, /* Non-CSET 82 always checked for composite */ + /*144*/ { BARCODE_DBAR_EXPSTK, -1, "[01]12345678901231", "", 0, "" }, + /*145*/ { BARCODE_DBAR_EXPSTK, GS1NOCHECK_MODE, "[01]12345678901231", "", 0, "" }, + /*146*/ { BARCODE_DBAR_EXPSTK, -1, "[01]12345678901231[10]123[11]1234", "", ZINT_ERROR_INVALID_DATA, "Error 259: Invalid data length for AI (11)" }, + /*147*/ { BARCODE_DBAR_EXPSTK, GS1NOCHECK_MODE, "[01]12345678901231[10]123[11]1234", "", 0, "" }, + /*148*/ { BARCODE_DBAR_EXPSTK, -1, "[01]12345678901231[10]123[11]1234A", "", ZINT_ERROR_INVALID_DATA, "Error 259: Invalid data length for AI (11)" }, + /*149*/ { BARCODE_DBAR_EXPSTK, GS1NOCHECK_MODE, "[01]12345678901231[10]123[11]1234A", "", 0, "" }, + /*150*/ { BARCODE_DBAR_EXPSTK, -1, "[01]12345678901231[10]123[11]12345A", "", ZINT_WARN_NONCOMPLIANT, "Warning 261: AI (11) position 6: Non-numeric character 'A'" }, + /*151*/ { BARCODE_DBAR_EXPSTK, GS1NOCHECK_MODE, "[01]12345678901231[10]123[11]12345A", "", 0, "" }, + /*152*/ { BARCODE_DBAR_EXPSTK, -1, "[01]1234567890121\177", "", ZINT_ERROR_INVALID_DATA, "Error 263: DEL characters are not supported by GS1" }, + /*153*/ { BARCODE_DBAR_EXPSTK, GS1NOCHECK_MODE, "[01]1234567890121\177", "", ZINT_ERROR_INVALID_DATA, "Error 263: DEL characters are not supported by GS1" }, /* Nonprintable ASCII still checked */ + /*154*/ { BARCODE_DBAR_EXPSTK, -1, "[01]1234567890121\200", "", ZINT_ERROR_INVALID_DATA, "Error 250: Extended ASCII characters are not supported by GS1" }, + /*155*/ { BARCODE_DBAR_EXPSTK, GS1NOCHECK_MODE, "[01]1234567890121\200", "", ZINT_ERROR_INVALID_DATA, "Error 250: Extended ASCII characters are not supported by GS1" }, /* Extended ASCII still checked */ + /*156*/ { BARCODE_DBAR_EXPSTK, -1, "011234567890121", "", ZINT_ERROR_INVALID_DATA, "Error 252: Data does not start with an AI" }, + /*157*/ { BARCODE_DBAR_EXPSTK, GS1NOCHECK_MODE, "011234567890121", "", ZINT_ERROR_INVALID_DATA, "Error 252: Data does not start with an AI" }, /* Format still checked */ + /*158*/ { BARCODE_DBAR_EXPSTK, -1, "[01]", "", ZINT_ERROR_INVALID_DATA, "Error 258: Empty data field in input data" }, + /*159*/ { BARCODE_DBAR_EXPSTK, GS1NOCHECK_MODE, "[01]", "", 0, "" }, /* Zero-length data not checked */ + /*160*/ { BARCODE_DBAR_EXPSTK, -1, "[90]12]34", "", ZINT_ERROR_INVALID_DATA, "Error 386: Invalid character in General Field data" }, + /*161*/ { BARCODE_DBAR_EXPSTK, GS1NOCHECK_MODE, "[90]12]34", "", ZINT_ERROR_INVALID_DATA, "Error 386: Invalid character in General Field data" }, /* Non-CSET 82 always checked for DBAR_EXPSTK */ + /*162*/ { BARCODE_DBAR_EXPSTK_CC, -1, "[01]12345678901231[10]123[11]121212", "[21]ABC123[22]12345", 0, "" }, + /*163*/ { BARCODE_DBAR_EXPSTK_CC, GS1NOCHECK_MODE, "[01]123456789012[01]12345678901231[10]123[11]121212", "[21]ABC123[22]12345", 0, "" }, + /*164*/ { BARCODE_DBAR_EXPSTK_CC, -1, "[01]12345678901231[10]123[11]1234", "[21]ABC123[22]12345", ZINT_ERROR_INVALID_DATA, "Error 259: Invalid data length for AI (11) in linear component" }, + /*165*/ { BARCODE_DBAR_EXPSTK_CC, GS1NOCHECK_MODE, "[01]12345678901231[10]123[11]1234", "[21]ABC123[22]12345", 0, "" }, + /*166*/ { BARCODE_DBAR_EXPSTK_CC, -1, "[01]12345678901231[10]123[11]123456", "[21]ABC123[22]12345", ZINT_WARN_NONCOMPLIANT, "Warning 261: AI (11) position 3: Invalid month '34' in linear component" }, + /*167*/ { BARCODE_DBAR_EXPSTK_CC, GS1NOCHECK_MODE, "[01]12345678901231[10]123[11]123456", "[21]ABC123[22]12345", 0, "" }, + /*168*/ { BARCODE_DBAR_EXPSTK_CC, -1, "[01]12345678901231[10]123[11]121212", "[21]ABC123[22]12345[30]123456789", ZINT_ERROR_INVALID_DATA, "Error 259: Invalid data length for AI (30) in 2D component" }, + /*169*/ { BARCODE_DBAR_EXPSTK_CC, GS1NOCHECK_MODE, "[01]123456789012[01]12345678901231[10]123[11]121212", "[21]ABC123[22]12345[30]123456789", 0, "" }, + /*170*/ { BARCODE_DBAR_EXPSTK_CC, -1, "[01]12345678901231[10]123[11]121212", "[21]ABC123[22]12345[30]1234567A", ZINT_WARN_NONCOMPLIANT, "Warning 261: AI (30) position 8: Non-numeric character 'A' in 2D component" }, + /*171*/ { BARCODE_DBAR_EXPSTK_CC, GS1NOCHECK_MODE, "[01]123456789012[01]12345678901231[10]123[11]121212", "[21]ABC123[22]12345[30]1234567A", 0, "" }, + /*172*/ { BARCODE_DBAR_EXPSTK_CC, -1, "[01]1234567890121", "[20]1\177", ZINT_ERROR_INVALID_DATA, "Error 263: DEL characters are not supported by GS1 in 2D component" }, + /*173*/ { BARCODE_DBAR_EXPSTK_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[20]1\177", ZINT_ERROR_INVALID_DATA, "Error 263: DEL characters are not supported by GS1 in 2D component" }, /* Nonprintable ASCII still checked */ + /*174*/ { BARCODE_DBAR_EXPSTK_CC, -1, "[01]1234567890121", "[20]1\200", ZINT_ERROR_INVALID_DATA, "Error 250: Extended ASCII characters are not supported by GS1 in 2D component" }, + /*175*/ { BARCODE_DBAR_EXPSTK_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[20]1\200", ZINT_ERROR_INVALID_DATA, "Error 250: Extended ASCII characters are not supported by GS1 in 2D component" }, /* Extended ASCII still checked */ + /*176*/ { BARCODE_DBAR_EXPSTK_CC, -1, "[01]1234567890121", "2012", ZINT_ERROR_INVALID_DATA, "Error 252: Data does not start with an AI in 2D component" }, + /*177*/ { BARCODE_DBAR_EXPSTK_CC, GS1NOCHECK_MODE, "[01]1234567890121", "2012", ZINT_ERROR_INVALID_DATA, "Error 252: Data does not start with an AI in 2D component" }, /* Format still checked */ + /*178*/ { BARCODE_DBAR_EXPSTK_CC, -1, "[01]1234567890121", "[235]", ZINT_ERROR_INVALID_DATA, "Error 258: Empty data field in input data in 2D component" }, + /*179*/ { BARCODE_DBAR_EXPSTK_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[235]", 0, "" }, /* Zero-length data not checked */ + /*180*/ { BARCODE_DBAR_EXPSTK_CC, -1, "[01]1234567890121", "[90]12]34", ZINT_ERROR_INVALID_DATA, "Error 441: Invalid character in 2D component input data" }, + /*181*/ { BARCODE_DBAR_EXPSTK_CC, GS1NOCHECK_MODE, "[01]1234567890121", "[90]12]34", ZINT_ERROR_INVALID_DATA, "Error 441: Invalid character in 2D component input data" }, /* Non-CSET 82 always checked for composite */ }; int data_size = ARRAY_SIZE(data); int i, length, ret; diff --git a/backend/tests/testcommon.c b/backend/tests/testcommon.c index a30e206a..a37661fb 100644 --- a/backend/tests/testcommon.c +++ b/backend/tests/testcommon.c @@ -2429,7 +2429,7 @@ int testUtilCanBwipp(int index, const struct zint_symbol *symbol, int option_1, } /* Convert Zint GS1 and add-on format to BWIPP's */ -static void testUtilBwippCvtGS1Data(char *bwipp_data, int upcean, int *addon_posn) { +static void testUtilBwippCvtGS1Data(char *bwipp_data, const int upcean, const int parens_mode, int *addon_posn) { char *b; int pipe = 0; @@ -2438,9 +2438,9 @@ static void testUtilBwippCvtGS1Data(char *bwipp_data, int upcean, int *addon_pos if (upcean && *b == '|') { pipe = 1; } - if (*b == '[') { + if (!parens_mode && *b == '[') { *b = '('; - } else if (*b == ']') { + } else if (!parens_mode && *b == ']') { *b = ')'; } else if (*b == '+' && upcean && !pipe) { *b = ' '; @@ -2664,8 +2664,9 @@ int testUtilBwipp(int index, const struct zint_symbol *symbol, int option_1, int const int upcean = (ZBarcode_Cap(symbology, ZINT_CAP_EANUPC) & ZINT_CAP_EANUPC) == ZINT_CAP_EANUPC; const int upca = symbology == BARCODE_UPCA || symbology == BARCODE_UPCA_CHK || symbology == BARCODE_UPCA_CC; - const char obracket = symbol->input_mode & GS1PARENS_MODE ? '(' : '['; - const char cbracket = symbol->input_mode & GS1PARENS_MODE ? ')' : ']'; + const int parens_mode = symbol->input_mode & GS1PARENS_MODE; + const char obracket = parens_mode ? '(' : '['; + const char cbracket = parens_mode ? ')' : ']'; int addon_posn; int eci; int i, j, len; @@ -2712,7 +2713,7 @@ int testUtilBwipp(int index, const struct zint_symbol *symbol, int option_1, int strcat(bwipp_data, primary); strcat(bwipp_data, "|"); strcat(bwipp_data, data); - testUtilBwippCvtGS1Data(bwipp_data, upcean, &addon_posn); + testUtilBwippCvtGS1Data(bwipp_data, upcean, parens_mode, &addon_posn); /* Always set dontlint for now (until support for exclusive AIs check) */ sprintf(bwipp_opts_buf + strlen(bwipp_opts_buf), "%sdontlint", strlen(bwipp_opts_buf) ? " " : ""); @@ -2747,7 +2748,7 @@ int testUtilBwipp(int index, const struct zint_symbol *symbol, int option_1, int strcat(bwipp_data, symbology == BARCODE_NVE18 ? "(00)" : "(01)"); } strcat(bwipp_data, data); - testUtilBwippCvtGS1Data(bwipp_data, upcean, &addon_posn); + testUtilBwippCvtGS1Data(bwipp_data, upcean, parens_mode, &addon_posn); /* Always set dontlint for now (until support for exclusive AIs check) */ sprintf(bwipp_opts_buf + strlen(bwipp_opts_buf), "%sdontlint", strlen(bwipp_opts_buf) ? " " : ""); @@ -2984,7 +2985,7 @@ int testUtilBwipp(int index, const struct zint_symbol *symbol, int option_1, int for (i = 0, j = 0, len = (int) strlen(bwipp_data); i <= len; i++) { if (bwipp_data[i] == obracket) { if (ai_latch == 0) { - bwipp_data[j++] = '['; + bwipp_data[j++] = '\x1D'; } last_ai = to_int((unsigned char *) (bwipp_data + i + 1), 2); if ((last_ai >= 0 && last_ai <= 4) || (last_ai >= 11 && last_ai <= 20) || last_ai == 23 @@ -2997,7 +2998,7 @@ int testUtilBwipp(int index, const struct zint_symbol *symbol, int option_1, int } /* Replace square brackets with ^FNC1 */ for (len = (int) strlen(bwipp_data), i = len - 1; i >= 0; i--) { - if (bwipp_data[i] == '[') { + if (bwipp_data[i] == '\x1D') { memmove(bwipp_data + i + 5, bwipp_data + i + 1, len - i); memcpy(bwipp_data + i, "^FNC1", 5); len += 4; @@ -3982,11 +3983,6 @@ int testUtilZXingCPPCmp(struct zint_symbol *symbol, char *msg, char *cmp_buf, in return 4; } expected_len = (int) strlen(reduced); - for (i = 0; i < expected_len; i++) { - if (reduced[i] == '[') { - reduced[i] = 29; - } - } expected = reduced; if (primary) { /* TODO: */ diff --git a/backend/tests/tools/bwipp_dump.ps.tar.xz b/backend/tests/tools/bwipp_dump.ps.tar.xz index 2b6babb910b329b027dbe3560e0b80889595dd5a..4abfa8a411e14ce984ca03903bdd2b19290f1d85 100644 GIT binary patch literal 135572 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 z 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 G1X)^*?1c3I diff --git a/backend/ultra.c b/backend/ultra.c index 98cb1a50..46949077 100644 --- a/backend/ultra.c +++ b/backend/ultra.c @@ -259,7 +259,7 @@ static float ult_look_ahead_eightbit(const unsigned char source[], const int len i = in_locn; while ((i < length) && (i < end_char)) { - if ((source[i] == '[') && gs1) { + if (gs1 && source[i] == '\x1D') { cw[codeword_count] = 268; /* FNC1 */ } else { cw[codeword_count] = source[i]; @@ -345,7 +345,7 @@ static float ult_look_ahead_ascii(unsigned char source[], const int length, cons } if (!done && source[i] < 0x80) { - if ((source[i] == '[') && gs1) { + if (gs1 && source[i] == '\x1D') { cw[codeword_count] = 272; /* FNC1 */ } else { cw[codeword_count] = source[i]; @@ -370,7 +370,7 @@ static float ult_look_ahead_ascii(unsigned char source[], const int length, cons /* Returns true if should latch to subset other than given `subset` */ static int ult_c43_should_latch_other(const unsigned char source[], const int length, const int locn, - const int subset, const int gs1) { + const int subset) { int i, fraglen, predict_window; int cnt, alt_cnt, fragno; const char *const set = subset == 1 ? ult_c43_set1 : ult_c43_set2; @@ -382,7 +382,7 @@ static int ult_c43_should_latch_other(const unsigned char source[], const int le predict_window = locn + 3; for (i = locn, cnt = 0, alt_cnt = 0; i < predict_window; i++) { - if (source[i] <= 0x1F || source[i] >= 0x7F || (gs1 && source[i] == '[')) { + if (source[i] <= 0x1F || source[i] >= 0x7F) { break; } @@ -519,7 +519,7 @@ static float ult_look_ahead_c43(const unsigned char source[], const int length, while ((sublocn < length) && (sublocn < end_char)) { /* Check for FNC1 */ - if (gs1 && source[sublocn] == '[') { + if (gs1 && source[sublocn] == '\x1D') { break; } @@ -530,7 +530,7 @@ static float ult_look_ahead_c43(const unsigned char source[], const int length, } if ((new_subset != subset) && ((new_subset == 1) || (new_subset == 2))) { - if (ult_c43_should_latch_other(source, length, sublocn, subset, gs1)) { + if (ult_c43_should_latch_other(source, length, sublocn, subset)) { subcw[subcodeword_count] = 42; /* Latch to other C43 set */ subcodeword_count++; unshift_set = new_subset; @@ -674,7 +674,7 @@ static int ult_generate_codewords(struct zint_symbol *symbol, const unsigned cha cw_fragment, &fragment_length, gs1); ascii_score = ult_look_ahead_ascii(crop_source, crop_length, input_locn, current_mode, symbol_mode, end_char, cw_fragment, &fragment_length, &ascii_encoded, gs1); - subset = ult_c43_should_latch_other(crop_source, crop_length, input_locn, 1 /*subset*/, gs1) ? 2 : 1; + subset = ult_c43_should_latch_other(crop_source, crop_length, input_locn, 1 /*subset*/) ? 2 : 1; c43_score = ult_look_ahead_c43(crop_source, crop_length, input_locn, current_mode, end_char, subset, cw_fragment, &fragment_length, &c43_encoded, gs1, 0 /*debug_print*/); @@ -752,7 +752,7 @@ static int ult_generate_codewords(struct zint_symbol *symbol, const unsigned cha current_mode = ULT_ASCII_MODE; break; case 'c': - subset = ult_c43_should_latch_other(crop_source, crop_length, input_locn, 1 /*subset*/, gs1) ? 2 : 1; + subset = ult_c43_should_latch_other(crop_source, crop_length, input_locn, 1 /*subset*/) ? 2 : 1; ult_look_ahead_c43(crop_source, crop_length, input_locn, current_mode, input_locn + block_length, subset, cw_fragment, &fragment_length, NULL, gs1, debug_print); diff --git a/docs/manual.html b/docs/manual.html index 0322bfcb..b1c25918 100644 --- a/docs/manual.html +++ b/docs/manual.html @@ -4027,7 +4027,10 @@ usage is given in section 6.1.10.3 GS1-128.

data that does not conform to the current GS1 standard. Printable ASCII input is still checked for, as is the validity of GS1 data specified without AIs (e.g. linear data for GS1 DataBar -Omnidirectional/Limited/etc.).

+Omnidirectional/Limited/etc.). Also checked is GS1 DataBar Expanded and +GS1 Composite input that is not in the GS1 encodable character set 82 +(see GS1 General Specifications Figure 7.11.1 ‘GS1 AI encodable +character set 82’), otherwise encodation would fail.

For HEIGHTPERROW_MODE, see --heightperrow in section 4.4 Adjusting Height. The height member should be set to the desired per-row value on diff --git a/docs/manual.pmd b/docs/manual.pmd index 5a3698a7..ec4253c0 100644 --- a/docs/manual.pmd +++ b/docs/manual.pmd @@ -2406,7 +2406,10 @@ example of `GS1PARENS_MODE` usage is given in section [6.1.10.3 GS1-128]. `GS1NOCHECK_MODE` is for use with legacy systems that have data that does not conform to the current GS1 standard. Printable ASCII input is still checked for, as is the validity of GS1 data specified without AIs (e.g. linear data for GS1 -DataBar Omnidirectional/Limited/etc.). +DataBar Omnidirectional/Limited/etc.). Also checked is GS1 DataBar Expanded and +GS1 Composite input that is not in the GS1 encodable character set 82 (see GS1 +General Specifications Figure 7.11.1 'GS1 AI encodable character set 82'), +otherwise encodation would fail. For `HEIGHTPERROW_MODE`, see `--heightperrow` in section [4.4 Adjusting Height]. The `height` member should be set to the desired per-row value on input (it will diff --git a/docs/manual.txt b/docs/manual.txt index 8dfa8af6..1bbcec59 100644 --- a/docs/manual.txt +++ b/docs/manual.txt @@ -2379,7 +2379,10 @@ GS1PARENS_MODE usage is given in section 6.1.10.3 GS1-128. GS1NOCHECK_MODE is for use with legacy systems that have data that does not conform to the current GS1 standard. Printable ASCII input is still checked for, as is the validity of GS1 data specified without AIs (e.g. linear data for GS1 -DataBar Omnidirectional/Limited/etc.). +DataBar Omnidirectional/Limited/etc.). Also checked is GS1 DataBar Expanded and +GS1 Composite input that is not in the GS1 encodable character set 82 (see GS1 +General Specifications Figure 7.11.1 ‘GS1 AI encodable character set 82’), +otherwise encodation would fail. For HEIGHTPERROW_MODE, see --heightperrow in section 4.4 Adjusting Height. The height member should be set to the desired per-row value on input (it will be diff --git a/frontend_qt/mainWindow.ui b/frontend_qt/mainWindow.ui index 7ae2147f..d93f1610 100644 --- a/frontend_qt/mainWindow.ui +++ b/frontend_qt/mainWindow.ui @@ -1609,7 +1609,8 @@ as delimiters for GS1 Application Identifiers - Do not check GS1 data for validity + Do not check GS1 data for validity (note that certain +checks necessary for encodation are still performed) (ignored if disabled) diff --git a/frontend_qt/mainwindow.cpp b/frontend_qt/mainwindow.cpp index 000231a1..5eb351af 100644 --- a/frontend_qt/mainwindow.cpp +++ b/frontend_qt/mainwindow.cpp @@ -802,7 +802,7 @@ void MainWindow::about() "

Copyright © 2006-2024 Robin Stuart and others.
" "Qt backend by BogDan Vatra.
" "Released under GNU GPL 3.0 or later.

" - "

Qt version %2 (QSettings:
%3)

" + "

Qt version %2
%3

" "

\"Mailmark\" is a Registered Trademark of Royal Mail.
" "\"QR Code\" is a Registered Trademark of Denso Corp.
" "\"Telepen\" is a Registered Trademark of SB Electronics.

"