mirror of
https://github.com/zint/zint
synced 2024-11-16 20:57:25 +13:00
EANX_CC/UPCA_CC: fix crash in dbar_date()
on not checking length
in `cc_binary_string()`, ticket #300 (#5 & #6), props Andre Maute; add other checks for length on processing encoding mode PDF417: fix out-of-bounds crash on overrunning string and codeword buffers by tripling size (convert to `short` instead of `int` to guard against too much stack), ticket #300 (#7 & #10), props Andre Maute; (TODO: add some checks instead to bail out earlier?) CODEONE: fix looping on latch crash in `c1_encode()`, ticket #300 (#8), props Andre Maute CODABLOCKF: fix crash on negative overflow of `columns` (`option_2`), ticket #300 (#9), props Andre Maute library: add `debug_print_escape()` helper for ZINT_DEBUG_PRINT
This commit is contained in:
parent
77c1ef1139
commit
a14fe77aa0
10
ChangeLog
10
ChangeLog
@ -119,8 +119,14 @@ Bugs
|
|||||||
byte-blocks > 11-bit limit
|
byte-blocks > 11-bit limit
|
||||||
- library: fix 21-bit Unicode conversion in `escape_char_process()`; fix
|
- library: fix 21-bit Unicode conversion in `escape_char_process()`; fix
|
||||||
restricting escaped data length by using de-escaped length to check
|
restricting escaped data length by using de-escaped length to check
|
||||||
- CODEONE: fix out-of-bounds crash in `c1_c40text_cnt()`, ticket #300, props
|
- CODEONE: fix out-of-bounds crash in `c1_c40text_cnt()` and looping on latch
|
||||||
Andre Maute
|
crash in `c1_encode()`, ticket #300, props Andre Maute
|
||||||
|
- CODABLOCKF: fix crash due to `columns` overflow, ticket #300, props Andre
|
||||||
|
Maute
|
||||||
|
- EANX_CC/UPCA_CC: fix crash in `dbar_date()` on not checking length, ticket
|
||||||
|
#300, props Andre Maute
|
||||||
|
- PDF417: fix out-of-bounds crash on overrunning string and codeword buffers,
|
||||||
|
ticket #300, props Andre Maute
|
||||||
|
|
||||||
|
|
||||||
Version 2.12.0 (2022-12-12)
|
Version 2.12.0 (2022-12-12)
|
||||||
|
@ -586,6 +586,9 @@ INTERNAL int codablockf(struct zint_symbol *symbol, unsigned char source[], int
|
|||||||
strcpy(symbol->errtxt, "411: Columns parameter not in 0, 9..67");
|
strcpy(symbol->errtxt, "411: Columns parameter not in 0, 9..67");
|
||||||
return ZINT_ERROR_INVALID_OPTION;
|
return ZINT_ERROR_INVALID_OPTION;
|
||||||
}
|
}
|
||||||
|
if (columns < 0) { /* Protect against negative overflow (ticket #300 (#9) Andre Maute) */
|
||||||
|
columns = 0;
|
||||||
|
}
|
||||||
|
|
||||||
data = (unsigned char *) z_alloca(length * 2 + 1);
|
data = (unsigned char *) z_alloca(length * 2 + 1);
|
||||||
|
|
||||||
|
@ -37,6 +37,13 @@
|
|||||||
#include "reedsol.h"
|
#include "reedsol.h"
|
||||||
#include "large.h"
|
#include "large.h"
|
||||||
|
|
||||||
|
#define C1_ASCII 1
|
||||||
|
#define C1_C40 2
|
||||||
|
#define C1_DECIMAL 3
|
||||||
|
#define C1_TEXT 4
|
||||||
|
#define C1_EDI 5
|
||||||
|
#define C1_BYTE 6
|
||||||
|
|
||||||
/* Add solid bar */
|
/* Add solid bar */
|
||||||
static void c1_horiz(struct zint_symbol *symbol, const int row_no, const int full) {
|
static void c1_horiz(struct zint_symbol *symbol, const int row_no, const int full) {
|
||||||
int i;
|
int i;
|
||||||
@ -477,7 +484,7 @@ static void c1_eci_escape(const int eci, unsigned char source[], const int lengt
|
|||||||
/* Convert to codewords */
|
/* Convert to codewords */
|
||||||
static int c1_encode(struct zint_symbol *symbol, unsigned char source[], int length, const int eci,
|
static int c1_encode(struct zint_symbol *symbol, unsigned char source[], int length, const int eci,
|
||||||
const int seg_count, const int gs1, unsigned int target[], int *p_tp, int *p_last_mode) {
|
const int seg_count, const int gs1, unsigned int target[], int *p_tp, int *p_last_mode) {
|
||||||
int current_mode, next_mode;
|
int current_mode, next_mode, last_mode;
|
||||||
int sp = 0;
|
int sp = 0;
|
||||||
int tp = *p_tp;
|
int tp = *p_tp;
|
||||||
int i;
|
int i;
|
||||||
@ -563,6 +570,7 @@ static int c1_encode(struct zint_symbol *symbol, unsigned char source[], int len
|
|||||||
}
|
}
|
||||||
|
|
||||||
do {
|
do {
|
||||||
|
last_mode = current_mode;
|
||||||
if (current_mode != next_mode) {
|
if (current_mode != next_mode) {
|
||||||
/* Change mode */
|
/* Change mode */
|
||||||
switch (next_mode) {
|
switch (next_mode) {
|
||||||
@ -625,6 +633,9 @@ static int c1_encode(struct zint_symbol *symbol, unsigned char source[], int len
|
|||||||
|
|
||||||
/* Step B6 */
|
/* Step B6 */
|
||||||
next_mode = c1_look_ahead_test(source, length, sp, current_mode, gs1);
|
next_mode = c1_look_ahead_test(source, length, sp, current_mode, gs1);
|
||||||
|
if (next_mode == last_mode) { /* Avoid looping on latch (ticket #300 (#8) Andre Maute) */
|
||||||
|
next_mode = C1_ASCII;
|
||||||
|
}
|
||||||
|
|
||||||
if (next_mode == C1_ASCII) {
|
if (next_mode == C1_ASCII) {
|
||||||
if (debug_print) printf("ASC(%d) ", source[sp]);
|
if (debug_print) printf("ASC(%d) ", source[sp]);
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/* code1.h - Lookup info for USS Code One */
|
/* code1.h - Lookup info for USS Code One */
|
||||||
/*
|
/*
|
||||||
libzint - the open source barcode library
|
libzint - the open source barcode library
|
||||||
Copyright (C) 2009-2022 Robin Stuart <rstuart114@gmail.com>
|
Copyright (C) 2009-2023 Robin Stuart <rstuart114@gmail.com>
|
||||||
|
|
||||||
Redistribution and use in source and binary forms, with or without
|
Redistribution and use in source and binary forms, with or without
|
||||||
modification, are permitted provided that the following conditions
|
modification, are permitted provided that the following conditions
|
||||||
@ -97,12 +97,5 @@ static const unsigned short c1_grid_height[] = {
|
|||||||
5, 7, 10, 15, 21, 30, 46, 68
|
5, 7, 10, 15, 21, 30, 46, 68
|
||||||
};
|
};
|
||||||
|
|
||||||
#define C1_ASCII 1
|
|
||||||
#define C1_C40 2
|
|
||||||
#define C1_DECIMAL 3
|
|
||||||
#define C1_TEXT 4
|
|
||||||
#define C1_EDI 5
|
|
||||||
#define C1_BYTE 6
|
|
||||||
|
|
||||||
/* vim: set ts=4 sw=4 et : */
|
/* vim: set ts=4 sw=4 et : */
|
||||||
#endif /* Z_CODE1_H */
|
#endif /* Z_CODE1_H */
|
||||||
|
@ -607,6 +607,24 @@ INTERNAL void debug_test_codeword_dump(struct zint_symbol *symbol, const unsigne
|
|||||||
symbol->errtxt[strlen(symbol->errtxt) - 1] = '\0'; /* Zap last space */
|
symbol->errtxt[strlen(symbol->errtxt) - 1] = '\0'; /* Zap last space */
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Dumps decimal-formatted codewords in symbol->errtxt (for use in testing) */
|
||||||
|
INTERNAL void debug_test_codeword_dump_short(struct zint_symbol *symbol, const short *codewords, const int length) {
|
||||||
|
int i, max = 0, cnt_len, errtxt_len;
|
||||||
|
char temp[20];
|
||||||
|
errtxt_len = sprintf(symbol->errtxt, "(%d) ", length); /* Place the number of codewords at the front */
|
||||||
|
for (i = 0, cnt_len = errtxt_len; i < length; i++) {
|
||||||
|
cnt_len += sprintf(temp, "%d ", codewords[i]);
|
||||||
|
if (cnt_len > 92) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
max++;
|
||||||
|
}
|
||||||
|
for (i = 0; i < max; i++) {
|
||||||
|
errtxt_len += sprintf(symbol->errtxt + errtxt_len, "%d ", codewords[i]);
|
||||||
|
}
|
||||||
|
symbol->errtxt[strlen(symbol->errtxt) - 1] = '\0'; /* Zap last space */
|
||||||
|
}
|
||||||
|
|
||||||
/* Dumps decimal-formatted codewords in symbol->errtxt (for use in testing) */
|
/* Dumps decimal-formatted codewords in symbol->errtxt (for use in testing) */
|
||||||
INTERNAL void debug_test_codeword_dump_int(struct zint_symbol *symbol, const int *codewords, const int length) {
|
INTERNAL void debug_test_codeword_dump_int(struct zint_symbol *symbol, const int *codewords, const int length) {
|
||||||
int i, max = 0, cnt_len, errtxt_len;
|
int i, max = 0, cnt_len, errtxt_len;
|
||||||
|
@ -276,6 +276,8 @@ INTERNAL void segs_cpy(const struct zint_symbol *symbol, const struct zint_seg s
|
|||||||
/* Dumps hex-formatted codewords in symbol->errtxt (for use in testing) */
|
/* Dumps hex-formatted codewords in symbol->errtxt (for use in testing) */
|
||||||
INTERNAL void debug_test_codeword_dump(struct zint_symbol *symbol, const unsigned char *codewords, const int length);
|
INTERNAL void debug_test_codeword_dump(struct zint_symbol *symbol, const unsigned char *codewords, const int length);
|
||||||
/* Dumps decimal-formatted codewords in symbol->errtxt (for use in testing) */
|
/* Dumps decimal-formatted codewords in symbol->errtxt (for use in testing) */
|
||||||
|
INTERNAL void debug_test_codeword_dump_short(struct zint_symbol *symbol, const short *codewords, const int length);
|
||||||
|
/* Dumps decimal-formatted codewords in symbol->errtxt (for use in testing) */
|
||||||
INTERNAL void debug_test_codeword_dump_int(struct zint_symbol *symbol, const int *codewords, const int length);
|
INTERNAL void debug_test_codeword_dump_int(struct zint_symbol *symbol, const int *codewords, const int length);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -71,7 +71,7 @@ INTERNAL int dbar_omnstk_set_height(struct zint_symbol *symbol, const int first_
|
|||||||
INTERNAL int dbar_omn_cc(struct zint_symbol *symbol, unsigned char source[], int length, const int cc_rows);
|
INTERNAL int dbar_omn_cc(struct zint_symbol *symbol, unsigned char source[], int length, const int cc_rows);
|
||||||
INTERNAL int dbar_ltd_cc(struct zint_symbol *symbol, unsigned char source[], int length, const int cc_rows);
|
INTERNAL int dbar_ltd_cc(struct zint_symbol *symbol, unsigned char source[], int length, const int cc_rows);
|
||||||
INTERNAL int dbar_exp_cc(struct zint_symbol *symbol, unsigned char source[], int length, const int cc_rows);
|
INTERNAL int dbar_exp_cc(struct zint_symbol *symbol, unsigned char source[], int length, const int cc_rows);
|
||||||
INTERNAL int dbar_date(const unsigned char source[], const int src_posn);
|
INTERNAL int dbar_date(const unsigned char source[], const int length, const int src_posn);
|
||||||
|
|
||||||
static int _min(const int first, const int second) {
|
static int _min(const int first, const int second) {
|
||||||
|
|
||||||
@ -301,7 +301,8 @@ static void cc_b(struct zint_symbol *symbol, const char source[], const int cc_w
|
|||||||
const int length = (int) strlen(source) / 8;
|
const int length = (int) strlen(source) / 8;
|
||||||
int i;
|
int i;
|
||||||
unsigned char *data_string = (unsigned char *) z_alloca(length + 3);
|
unsigned char *data_string = (unsigned char *) z_alloca(length + 3);
|
||||||
int chainemc[180], mclength = 0;
|
short chainemc[180];
|
||||||
|
int mclength = 0;
|
||||||
int k, j, p, longueur, mccorrection[50] = {0}, offset;
|
int k, j, p, longueur, mccorrection[50] = {0}, offset;
|
||||||
int total;
|
int total;
|
||||||
char pattern[580];
|
char pattern[580];
|
||||||
@ -517,7 +518,8 @@ static void cc_c(struct zint_symbol *symbol, const char source[], const int cc_w
|
|||||||
const int length = (int) strlen(source) / 8;
|
const int length = (int) strlen(source) / 8;
|
||||||
int i, p;
|
int i, p;
|
||||||
unsigned char *data_string = (unsigned char *) z_alloca(length + 4);
|
unsigned char *data_string = (unsigned char *) z_alloca(length + 4);
|
||||||
int chainemc[1000], mclength = 0, k;
|
short chainemc[1000];
|
||||||
|
int mclength = 0, k;
|
||||||
int offset, longueur, loop, total, j, mccorrection[520] = {0};
|
int offset, longueur, loop, total, j, mccorrection[520] = {0};
|
||||||
int c1, c2, c3, dummy[35];
|
int c1, c2, c3, dummy[35];
|
||||||
char pattern[580];
|
char pattern[580];
|
||||||
@ -843,14 +845,14 @@ static int calc_padding_ccc(const int binary_length, int *cc_width, const int li
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Handles all data encodation from section 5 of ISO/IEC 24723 */
|
/* Handles all data encodation from section 5 of ISO/IEC 24723 */
|
||||||
static int cc_binary_string(struct zint_symbol *symbol, const unsigned char source[], const int source_len,
|
static int cc_binary_string(struct zint_symbol *symbol, const unsigned char source[], const int length,
|
||||||
char binary_string[], const int cc_mode, int *cc_width, int *ecc, const int linear_width) {
|
char binary_string[], const int cc_mode, int *cc_width, int *ecc, const int linear_width) {
|
||||||
int encoding_method, read_posn, alpha_pad;
|
int encoding_method, read_posn, alpha_pad;
|
||||||
int i, j, ai_crop, ai_crop_posn, fnc1_latch;
|
int i, j, ai_crop, ai_crop_posn, fnc1_latch;
|
||||||
int ai90_mode, remainder;
|
int ai90_mode, remainder;
|
||||||
char last_digit = '\0';
|
char last_digit = '\0';
|
||||||
int mode;
|
int mode;
|
||||||
char *general_field = (char *) z_alloca(source_len + 1);
|
char *general_field = (char *) z_alloca(length + 1);
|
||||||
int target_bitsize;
|
int target_bitsize;
|
||||||
int bp = 0;
|
int bp = 0;
|
||||||
const int debug_print = symbol->debug & ZINT_DEBUG_PRINT;
|
const int debug_print = symbol->debug & ZINT_DEBUG_PRINT;
|
||||||
@ -865,12 +867,12 @@ static int cc_binary_string(struct zint_symbol *symbol, const unsigned char sour
|
|||||||
target_bitsize = 0;
|
target_bitsize = 0;
|
||||||
mode = NUMERIC;
|
mode = NUMERIC;
|
||||||
|
|
||||||
if ((source[0] == '1') && ((source[1] == '0') || (source[1] == '1') || (source[1] == '7'))) {
|
if (length > 1 && (source[0] == '1') && ((source[1] == '0') || (source[1] == '1') || (source[1] == '7'))) {
|
||||||
/* Source starts (10), (11) or (17) */
|
/* Source starts (10), (11) or (17) */
|
||||||
if (source[1] == '0' || dbar_date(source, 2) >= 0) { /* Check date valid if (11) or (17) */
|
if (source[1] == '0' || dbar_date(source, length, 2) >= 0) { /* Check date valid if (11) or (17) */
|
||||||
encoding_method = 2;
|
encoding_method = 2;
|
||||||
}
|
}
|
||||||
} else if ((source[0] == '9') && (source[1] == '0')) {
|
} else if (length > 1 && (source[0] == '9') && (source[1] == '0')) {
|
||||||
/* Source starts (90) */
|
/* Source starts (90) */
|
||||||
encoding_method = 3;
|
encoding_method = 3;
|
||||||
}
|
}
|
||||||
@ -890,8 +892,9 @@ static int cc_binary_string(struct zint_symbol *symbol, const unsigned char sour
|
|||||||
read_posn = 2;
|
read_posn = 2;
|
||||||
} else {
|
} else {
|
||||||
/* Production Date (11) or Expiration Date (17) */
|
/* Production Date (11) or Expiration Date (17) */
|
||||||
|
assert(length >= 8); /* Due to `dbar_date()` check above */
|
||||||
|
|
||||||
bp = bin_append_posn(dbar_date(source, 2), 16, binary_string, bp);
|
bp = bin_append_posn(dbar_date(source, length, 2), 16, binary_string, bp);
|
||||||
|
|
||||||
if (source[1] == '1') {
|
if (source[1] == '1') {
|
||||||
/* Production Date AI 11 */
|
/* Production Date AI 11 */
|
||||||
@ -902,7 +905,7 @@ static int cc_binary_string(struct zint_symbol *symbol, const unsigned char sour
|
|||||||
}
|
}
|
||||||
read_posn = 8;
|
read_posn = 8;
|
||||||
|
|
||||||
if ((source[read_posn] == '1') && (source[read_posn + 1] == '0')) {
|
if (read_posn + 1 < length && (source[read_posn] == '1') && (source[read_posn + 1] == '0')) {
|
||||||
/* Followed by AI 10 - strip this from general field */
|
/* Followed by AI 10 - strip this from general field */
|
||||||
read_posn += 2;
|
read_posn += 2;
|
||||||
} else if (source[read_posn]) {
|
} else if (source[read_posn]) {
|
||||||
@ -925,20 +928,21 @@ static int cc_binary_string(struct zint_symbol *symbol, const unsigned char sour
|
|||||||
|
|
||||||
} else if (encoding_method == 3) {
|
} else if (encoding_method == 3) {
|
||||||
/* Encodation Method field of "11" - AI 90 */
|
/* Encodation Method field of "11" - AI 90 */
|
||||||
char *ninety = (char *) z_alloca(source_len + 1);
|
unsigned char *ninety = (unsigned char *) z_alloca(length + 1);
|
||||||
int ninety_len, alpha, alphanum, numeric, test1, test2, test3;
|
int ninety_len, alpha, alphanum, numeric, alpha_posn;
|
||||||
|
|
||||||
/* "This encodation method may be used if an element string with an AI
|
/* "This encodation method may be used if an element string with an AI
|
||||||
90 occurs at the start of the data message, and if the data field
|
90 occurs at the start of the data message, and if the data field
|
||||||
following the two-digit AI 90 starts with an alphanumeric string which
|
following the two-digit AI 90 starts with an alphanumeric string which
|
||||||
complies with a specific format." (para 5.3.2) */
|
complies with a specific format." (para 5.3.2) */
|
||||||
|
|
||||||
memset(ninety, 0, source_len + 1);
|
|
||||||
i = 0;
|
i = 0;
|
||||||
do {
|
if (length > 2) {
|
||||||
ninety[i] = source[i + 2];
|
do {
|
||||||
i++;
|
ninety[i] = source[i + 2];
|
||||||
} while ((source_len > i + 2) && ('[' != source[i + 2]));
|
i++;
|
||||||
|
} while ((length > i + 2) && ('[' != source[i + 2]));
|
||||||
|
}
|
||||||
ninety[i] = '\0';
|
ninety[i] = '\0';
|
||||||
ninety_len = i;
|
ninety_len = i;
|
||||||
|
|
||||||
@ -962,36 +966,27 @@ static int cc_binary_string(struct zint_symbol *symbol, const unsigned char sour
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* must start with 0, 1, 2 or 3 digits followed by an uppercase character */
|
/* must start with 0, 1, 2 or 3 digits followed by an uppercase character */
|
||||||
test1 = -1;
|
alpha_posn = -1;
|
||||||
for (i = 3; i >= 0; i--) {
|
if (ninety_len && ninety[0] != '0') { /* Leading zeros are not permitted */
|
||||||
if (z_isupper(ninety[i])) {
|
for (i = 0; i < ninety_len && i < 4; i++) {
|
||||||
test1 = i;
|
if (z_isupper(ninety[i])) {
|
||||||
|
alpha_posn = i;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
if (!z_isdigit(ninety[i])) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
test2 = 0;
|
if (alpha_posn != -1) {
|
||||||
for (i = 0; i < test1; i++) {
|
|
||||||
if (!z_isdigit(ninety[i])) {
|
|
||||||
test2 = 1;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* leading zeros are not permitted */
|
|
||||||
test3 = 0;
|
|
||||||
if ((test1 >= 1) && (ninety[0] == '0')) {
|
|
||||||
test3 = 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ((test1 != -1) && (test2 != 1) && (test3 == 0)) {
|
|
||||||
int next_ai_posn;
|
int next_ai_posn;
|
||||||
char numeric_part[4];
|
|
||||||
int numeric_value;
|
int numeric_value;
|
||||||
int table3_letter;
|
int table3_letter;
|
||||||
/* Encodation method "11" can be used */
|
/* Encodation method "11" can be used */
|
||||||
bp = bin_append_posn(3, 2, binary_string, bp); /* "11" */
|
bp = bin_append_posn(3, 2, binary_string, bp); /* "11" */
|
||||||
|
|
||||||
numeric -= test1;
|
numeric -= alpha_posn;
|
||||||
alpha--;
|
alpha--;
|
||||||
|
|
||||||
/* Decide on numeric, alpha or alphanumeric mode */
|
/* Decide on numeric, alpha or alphanumeric mode */
|
||||||
@ -1016,13 +1011,13 @@ static int cc_binary_string(struct zint_symbol *symbol, const unsigned char sour
|
|||||||
|
|
||||||
next_ai_posn = 2 + ninety_len;
|
next_ai_posn = 2 + ninety_len;
|
||||||
|
|
||||||
if (next_ai_posn < source_len && source[next_ai_posn] == '[') {
|
if (next_ai_posn < length && source[next_ai_posn] == '[') {
|
||||||
/* There are more AIs afterwards */
|
/* There are more AIs afterwards */
|
||||||
if (next_ai_posn + 2 < source_len
|
if (next_ai_posn + 2 < length
|
||||||
&& (source[next_ai_posn + 1] == '2') && (source[next_ai_posn + 2] == '1')) {
|
&& (source[next_ai_posn + 1] == '2') && (source[next_ai_posn + 2] == '1')) {
|
||||||
/* AI 21 follows */
|
/* AI 21 follows */
|
||||||
ai_crop = 1;
|
ai_crop = 1;
|
||||||
} else if (next_ai_posn + 4 < source_len
|
} else if (next_ai_posn + 4 < length
|
||||||
&& (source[next_ai_posn + 1] == '8') && (source[next_ai_posn + 2] == '0')
|
&& (source[next_ai_posn + 1] == '8') && (source[next_ai_posn + 2] == '0')
|
||||||
&& (source[next_ai_posn + 3] == '0') && (source[next_ai_posn + 4] == '4')) {
|
&& (source[next_ai_posn + 3] == '0') && (source[next_ai_posn + 4] == '4')) {
|
||||||
/* AI 8004 follows */
|
/* AI 8004 follows */
|
||||||
@ -1041,20 +1036,11 @@ static int cc_binary_string(struct zint_symbol *symbol, const unsigned char sour
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (test1 == 0) {
|
numeric_value = alpha_posn ? to_int(ninety, alpha_posn) : 0;
|
||||||
strcpy(numeric_part, "0");
|
|
||||||
} else {
|
|
||||||
for (i = 0; i < test1; i++) {
|
|
||||||
numeric_part[i] = ninety[i];
|
|
||||||
}
|
|
||||||
numeric_part[i] = '\0';
|
|
||||||
}
|
|
||||||
|
|
||||||
numeric_value = atoi(numeric_part);
|
|
||||||
|
|
||||||
table3_letter = -1;
|
table3_letter = -1;
|
||||||
if (numeric_value < 31) {
|
if (numeric_value < 31) {
|
||||||
table3_letter = posn("BDHIJKLNPQRSTVWZ", ninety[test1]);
|
table3_letter = posn("BDHIJKLNPQRSTVWZ", ninety[alpha_posn]);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (table3_letter != -1) {
|
if (table3_letter != -1) {
|
||||||
@ -1071,10 +1057,10 @@ static int cc_binary_string(struct zint_symbol *symbol, const unsigned char sour
|
|||||||
bp = bin_append_posn(numeric_value, 10, binary_string, bp);
|
bp = bin_append_posn(numeric_value, 10, binary_string, bp);
|
||||||
|
|
||||||
/* five bit representation of ASCII character */
|
/* five bit representation of ASCII character */
|
||||||
bp = bin_append_posn(ninety[test1] - 65, 5, binary_string, bp);
|
bp = bin_append_posn(ninety[alpha_posn] - 65, 5, binary_string, bp);
|
||||||
}
|
}
|
||||||
|
|
||||||
read_posn = test1 + 3;
|
read_posn = alpha_posn + 3; /* +2 for 90 and +1 to go beyond alpha position */
|
||||||
|
|
||||||
/* Do Alpha mode encoding of the rest of the AI 90 data field here */
|
/* Do Alpha mode encoding of the rest of the AI 90 data field here */
|
||||||
if (ai90_mode == 2) {
|
if (ai90_mode == 2) {
|
||||||
@ -1118,7 +1104,7 @@ static int cc_binary_string(struct zint_symbol *symbol, const unsigned char sour
|
|||||||
j++;
|
j++;
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i = read_posn; i < source_len; i++) {
|
for (i = read_posn; i < length; i++) {
|
||||||
/* Skip "[21" or "[8004" AIs if encodation method "11" used */
|
/* Skip "[21" or "[8004" AIs if encodation method "11" used */
|
||||||
if (i == ai_crop_posn) {
|
if (i == ai_crop_posn) {
|
||||||
i += ai_crop;
|
i += ai_crop;
|
||||||
|
@ -677,6 +677,20 @@ static int reduced_charset(struct zint_symbol *symbol, struct zint_seg segs[], c
|
|||||||
return error_number;
|
return error_number;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Helper for ZINT_DEBUG_PRINT to put all but graphical ASCII in angle brackets */
|
||||||
|
static void debug_print_escape(const unsigned char *source, const int first_len, char *buf) {
|
||||||
|
int i, j = 0;
|
||||||
|
for (i = 0; i < first_len; i++) {
|
||||||
|
const unsigned char ch = source[i];
|
||||||
|
if (ch < 32 || ch >= 127) {
|
||||||
|
j += sprintf(buf + j, "<%03o>", ch & 0xFF);
|
||||||
|
} else {
|
||||||
|
buf[j++] = ch;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
buf[j] = '\0';
|
||||||
|
}
|
||||||
|
|
||||||
#if defined(__GNUC__) || defined(__clang__)
|
#if defined(__GNUC__) || defined(__clang__)
|
||||||
#pragma GCC diagnostic pop
|
#pragma GCC diagnostic pop
|
||||||
#endif
|
#endif
|
||||||
@ -1005,14 +1019,18 @@ int ZBarcode_Encode_Segs(struct zint_symbol *symbol, const struct zint_seg segs[
|
|||||||
const int len = local_segs[0].length;
|
const int len = local_segs[0].length;
|
||||||
const int primary_len = symbol->primary[0] ? (int) strlen(symbol->primary) : 0;
|
const int primary_len = symbol->primary[0] ? (int) strlen(symbol->primary) : 0;
|
||||||
char name[32];
|
char name[32];
|
||||||
|
char source[151], primary[151]; /* 30*5 + 1 = 151 */
|
||||||
(void) ZBarcode_BarcodeName(symbol->symbology, name);
|
(void) ZBarcode_BarcodeName(symbol->symbology, name);
|
||||||
printf("\nZBarcode_Encode_Segs: %s (%d), input_mode: 0x%X, ECI: %d, option_1: %d, option_2: %d"
|
debug_print_escape(local_segs[0].source, len > 30 ? 30 : len, source);
|
||||||
", option_3: %d,\n scale: %g, output_options: 0x%X, fg: %s, bg: %s"
|
debug_print_escape((const unsigned char *) symbol->primary, primary_len > 30 ? 30 : primary_len, primary);
|
||||||
", seg_count: %d,\n %ssource%s (%d): \"%.*s\", %sprimary (%d): \"%.20s\"\n",
|
printf("\nZBarcode_Encode_Segs: %s (%d), input_mode: 0x%X, ECI: %d, option_1/2/3: (%d, %d, %d)\n"
|
||||||
|
" scale: %g, output_options: 0x%X, fg: %s, bg: %s, seg_count: %d,\n"
|
||||||
|
" %ssource%s (%d): \"%s\",\n"
|
||||||
|
" %sprimary (%d): \"%s\"\n",
|
||||||
name, symbol->symbology, symbol->input_mode, symbol->eci, symbol->option_1, symbol->option_2,
|
name, symbol->symbology, symbol->input_mode, symbol->eci, symbol->option_1, symbol->option_2,
|
||||||
symbol->option_3, symbol->scale, symbol->output_options, symbol->fgcolour, symbol->bgcolour,
|
symbol->option_3, symbol->scale, symbol->output_options, symbol->fgcolour, symbol->bgcolour,
|
||||||
seg_count, len > 20 ? "First 20 " : "", seg_count > 1 ? "[0]" : "", len, len > 20 ? 20 : len,
|
seg_count, len > 30 ? "first 30 " : "", seg_count > 1 ? "[0]" : "", len, source,
|
||||||
local_segs[0].source, primary_len > 20 ? "First 20 " : "", primary_len, symbol->primary);
|
primary_len > 30 ? "first 30 " : "", primary_len, primary);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (total_len > ZINT_MAX_DATA_LEN) {
|
if (total_len > ZINT_MAX_DATA_LEN) {
|
||||||
|
@ -146,6 +146,7 @@ static const char pdf_MicroAutosize[56] = {
|
|||||||
/* ISO/IEC 15438:2015 5.1.1 c) 3) Max possible number of characters at error correction level 0
|
/* ISO/IEC 15438:2015 5.1.1 c) 3) Max possible number of characters at error correction level 0
|
||||||
(Numeric Compaction mode) */
|
(Numeric Compaction mode) */
|
||||||
#define PDF_MAX_LEN 2710
|
#define PDF_MAX_LEN 2710
|
||||||
|
#define PDF_MAX_STREAM_LEN (PDF_MAX_LEN * 3) /* Allow for tripling up due to shifts/latches (ticket #300 (#7)) */
|
||||||
|
|
||||||
/* ISO/IEC 24728:2006 5.1.1 c) 3) Max possible number of characters (Numeric Compaction mode) */
|
/* ISO/IEC 24728:2006 5.1.1 c) 3) Max possible number of characters (Numeric Compaction mode) */
|
||||||
#define MICRO_PDF_MAX_LEN 366
|
#define MICRO_PDF_MAX_LEN 366
|
||||||
@ -165,7 +166,7 @@ static int pdf_quelmode(const unsigned char codeascii) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Helper to switch TEX mode sub-mode */
|
/* Helper to switch TEX mode sub-mode */
|
||||||
static int pdf_textprocess_switch(const int curtable, const int newtable, int chainet[PDF_MAX_LEN], int wnet) {
|
static int pdf_textprocess_switch(const int curtable, const int newtable, unsigned char chainet[PDF_MAX_STREAM_LEN], int wnet) {
|
||||||
switch (curtable) {
|
switch (curtable) {
|
||||||
case T_ALPHA:
|
case T_ALPHA:
|
||||||
switch (newtable) {
|
switch (newtable) {
|
||||||
@ -234,7 +235,8 @@ static int pdf_text_num_length(int liste[3][PDF_MAX_LEN], const int indexliste,
|
|||||||
|
|
||||||
/* Calculate length of TEX allowing for sub-mode switches (no-output version of `pdf_textprocess()`) */
|
/* Calculate length of TEX allowing for sub-mode switches (no-output version of `pdf_textprocess()`) */
|
||||||
static int pdf_text_submode_length(const unsigned char chaine[], const int start, const int length, int *p_curtable) {
|
static int pdf_text_submode_length(const unsigned char chaine[], const int start, const int length, int *p_curtable) {
|
||||||
int j, indexlistet, curtable = *p_curtable, listet[PDF_MAX_LEN], chainet[PDF_MAX_LEN], wnet = 0;
|
int j, indexlistet, curtable = *p_curtable, listet[PDF_MAX_LEN], wnet = 0;
|
||||||
|
unsigned char chainet[PDF_MAX_STREAM_LEN];
|
||||||
|
|
||||||
for (indexlistet = 0; indexlistet < length; indexlistet++) {
|
for (indexlistet = 0; indexlistet < length; indexlistet++) {
|
||||||
assert(pdf_asciix[chaine[start + indexlistet]]); /* Should only be dealing with TEX */
|
assert(pdf_asciix[chaine[start + indexlistet]]); /* Should only be dealing with TEX */
|
||||||
@ -397,8 +399,8 @@ static void pdf_appendix_d_encode(const unsigned char *chaine, int liste[3][PDF_
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Helper to pad TEX mode, allowing for whether last segment or not, writing out `chainet` */
|
/* Helper to pad TEX mode, allowing for whether last segment or not, writing out `chainet` */
|
||||||
static void pdf_textprocess_end(int *chainemc, int *p_mclength, const int is_last_seg, int chainet[PDF_MAX_LEN],
|
static void pdf_textprocess_end(short *chainemc, int *p_mclength, const int is_last_seg,
|
||||||
int wnet, int *p_curtable, int *p_tex_padded) {
|
unsigned char chainet[PDF_MAX_STREAM_LEN], int wnet, int *p_curtable, int *p_tex_padded) {
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
*p_tex_padded = wnet & 1;
|
*p_tex_padded = wnet & 1;
|
||||||
@ -422,12 +424,13 @@ static void pdf_textprocess_end(int *chainemc, int *p_mclength, const int is_las
|
|||||||
|
|
||||||
/* 547 */
|
/* 547 */
|
||||||
/* Text compaction */
|
/* Text compaction */
|
||||||
static void pdf_textprocess(int *chainemc, int *p_mclength, const unsigned char chaine[], const int start,
|
static void pdf_textprocess(short *chainemc, int *p_mclength, const unsigned char chaine[], const int start,
|
||||||
const int length, const int lastmode, const int is_last_seg, int *p_curtable, int *p_tex_padded) {
|
const int length, const int lastmode, const int is_last_seg, int *p_curtable, int *p_tex_padded) {
|
||||||
const int real_lastmode = PDF_REAL_MODE(lastmode);
|
const int real_lastmode = PDF_REAL_MODE(lastmode);
|
||||||
int j, indexlistet;
|
int j, indexlistet;
|
||||||
int curtable = real_lastmode == PDF_TEX ? *p_curtable : T_ALPHA; /* Set default table upper alpha */
|
int curtable = real_lastmode == PDF_TEX ? *p_curtable : T_ALPHA; /* Set default table upper alpha */
|
||||||
int listet[2][PDF_MAX_LEN] = {{0}}, chainet[PDF_MAX_LEN];
|
int listet[2][PDF_MAX_LEN] = {{0}};
|
||||||
|
unsigned char chainet[PDF_MAX_STREAM_LEN];
|
||||||
int wnet = 0;
|
int wnet = 0;
|
||||||
|
|
||||||
/* add mode indicator if needed */
|
/* add mode indicator if needed */
|
||||||
@ -492,13 +495,13 @@ static void pdf_textprocess(int *chainemc, int *p_mclength, const unsigned char
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Minimal text compaction */
|
/* Minimal text compaction */
|
||||||
static void pdf_textprocess_minimal(int *chainemc, int *p_mclength, const unsigned char chaine[],
|
static void pdf_textprocess_minimal(short *chainemc, int *p_mclength, const unsigned char chaine[],
|
||||||
int liste[3][PDF_MAX_LEN], const int indexliste, const int lastmode, const int is_last_seg,
|
int liste[3][PDF_MAX_LEN], const int indexliste, const int lastmode, const int is_last_seg,
|
||||||
int *p_curtable, int *p_tex_padded, int *p_i) {
|
int *p_curtable, int *p_tex_padded, int *p_i) {
|
||||||
const int real_lastmode = PDF_REAL_MODE(lastmode);
|
const int real_lastmode = PDF_REAL_MODE(lastmode);
|
||||||
int i, j, k;
|
int i, j, k;
|
||||||
int curtable = real_lastmode == PDF_TEX ? *p_curtable : T_ALPHA; /* Set default table upper alpha */
|
int curtable = real_lastmode == PDF_TEX ? *p_curtable : T_ALPHA; /* Set default table upper alpha */
|
||||||
int chainet[PDF_MAX_LEN];
|
unsigned char chainet[PDF_MAX_STREAM_LEN];
|
||||||
int wnet = 0;
|
int wnet = 0;
|
||||||
|
|
||||||
/* add mode indicator if needed */
|
/* add mode indicator if needed */
|
||||||
@ -550,7 +553,7 @@ static void pdf_textprocess_minimal(int *chainemc, int *p_mclength, const unsign
|
|||||||
|
|
||||||
/* 671 */
|
/* 671 */
|
||||||
/* Byte compaction */
|
/* Byte compaction */
|
||||||
INTERNAL void pdf_byteprocess(int *chainemc, int *p_mclength, const unsigned char chaine[], int start,
|
INTERNAL void pdf_byteprocess(short *chainemc, int *p_mclength, const unsigned char chaine[], int start,
|
||||||
const int length, const int lastmode, const int debug_print) {
|
const int length, const int lastmode, const int debug_print) {
|
||||||
const int real_lastmode = PDF_REAL_MODE(lastmode);
|
const int real_lastmode = PDF_REAL_MODE(lastmode);
|
||||||
|
|
||||||
@ -611,7 +614,7 @@ INTERNAL void pdf_byteprocess(int *chainemc, int *p_mclength, const unsigned cha
|
|||||||
|
|
||||||
/* 712 */
|
/* 712 */
|
||||||
/* Numeric compaction */
|
/* Numeric compaction */
|
||||||
static void pdf_numbprocess(int *chainemc, int *p_mclength, const unsigned char chaine[], const int start,
|
static void pdf_numbprocess(short *chainemc, int *p_mclength, const unsigned char chaine[], const int start,
|
||||||
const int length) {
|
const int length) {
|
||||||
int j;
|
int j;
|
||||||
|
|
||||||
@ -660,7 +663,7 @@ static void pdf_numbprocess(int *chainemc, int *p_mclength, const unsigned char
|
|||||||
}
|
}
|
||||||
|
|
||||||
#ifdef ZINT_TEST /* Wrapper for direct testing */
|
#ifdef ZINT_TEST /* Wrapper for direct testing */
|
||||||
INTERNAL void pdf_numbprocess_test(int *chainemc, int *p_mclength, const unsigned char chaine[], const int start,
|
INTERNAL void pdf_numbprocess_test(short *chainemc, int *p_mclength, const unsigned char chaine[], const int start,
|
||||||
const int length) {
|
const int length) {
|
||||||
pdf_numbprocess(chainemc, p_mclength, chaine, start, length);
|
pdf_numbprocess(chainemc, p_mclength, chaine, start, length);
|
||||||
}
|
}
|
||||||
@ -995,7 +998,7 @@ static int pdf_define_mode(int liste[3][PDF_MAX_LEN], int *p_indexliste, const u
|
|||||||
/* Initial processing of data, shared by `pdf417()` and `micropdf417()` */
|
/* Initial processing of data, shared by `pdf417()` and `micropdf417()` */
|
||||||
static int pdf_initial(struct zint_symbol *symbol, const unsigned char chaine[], const int length, const int eci,
|
static int pdf_initial(struct zint_symbol *symbol, const unsigned char chaine[], const int length, const int eci,
|
||||||
const int is_micro, const int is_last_seg, int *p_lastmode, int *p_curtable, int *p_tex_padded,
|
const int is_micro, const int is_last_seg, int *p_lastmode, int *p_curtable, int *p_tex_padded,
|
||||||
int chainemc[PDF_MAX_LEN], int *p_mclength) {
|
short chainemc[PDF_MAX_STREAM_LEN], int *p_mclength) {
|
||||||
int i, indexchaine = 0, indexliste = 0;
|
int i, indexchaine = 0, indexliste = 0;
|
||||||
int liste[3][PDF_MAX_LEN] = {{0}};
|
int liste[3][PDF_MAX_LEN] = {{0}};
|
||||||
int mclength;
|
int mclength;
|
||||||
@ -1114,7 +1117,7 @@ static int pdf_initial(struct zint_symbol *symbol, const unsigned char chaine[],
|
|||||||
|
|
||||||
/* Call `pdf_initial()` for each segment, dealing with Structured Append beforehand */
|
/* Call `pdf_initial()` for each segment, dealing with Structured Append beforehand */
|
||||||
static int pdf_initial_segs(struct zint_symbol *symbol, struct zint_seg segs[], const int seg_count,
|
static int pdf_initial_segs(struct zint_symbol *symbol, struct zint_seg segs[], const int seg_count,
|
||||||
const int is_micro, int chainemc[PDF_MAX_LEN], int *p_mclength, int structapp_cws[18],
|
const int is_micro, short chainemc[PDF_MAX_STREAM_LEN], int *p_mclength, int structapp_cws[18],
|
||||||
int *p_structapp_cp) {
|
int *p_structapp_cp) {
|
||||||
int i;
|
int i;
|
||||||
int error_number = 0;
|
int error_number = 0;
|
||||||
@ -1197,7 +1200,8 @@ static int pdf_initial_segs(struct zint_symbol *symbol, struct zint_seg segs[],
|
|||||||
/* Encode PDF417 */
|
/* Encode PDF417 */
|
||||||
static int pdf_enc(struct zint_symbol *symbol, struct zint_seg segs[], const int seg_count) {
|
static int pdf_enc(struct zint_symbol *symbol, struct zint_seg segs[], const int seg_count) {
|
||||||
int i, j, longueur, loop, mccorrection[520] = {0}, offset;
|
int i, j, longueur, loop, mccorrection[520] = {0}, offset;
|
||||||
int total, chainemc[PDF_MAX_LEN], mclength, c1, c2, c3, dummy[35];
|
int total, mclength, c1, c2, c3, dummy[35];
|
||||||
|
short chainemc[PDF_MAX_STREAM_LEN];
|
||||||
int rows, cols, ecc, ecc_cws, padding;
|
int rows, cols, ecc, ecc_cws, padding;
|
||||||
char pattern[580];
|
char pattern[580];
|
||||||
int bp = 0;
|
int bp = 0;
|
||||||
@ -1376,7 +1380,7 @@ static int pdf_enc(struct zint_symbol *symbol, struct zint_seg segs[], const int
|
|||||||
}
|
}
|
||||||
#ifdef ZINT_TEST
|
#ifdef ZINT_TEST
|
||||||
if (symbol->debug & ZINT_DEBUG_TEST) {
|
if (symbol->debug & ZINT_DEBUG_TEST) {
|
||||||
debug_test_codeword_dump_int(symbol, chainemc, mclength);
|
debug_test_codeword_dump_short(symbol, chainemc, mclength);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -1492,7 +1496,8 @@ INTERNAL int pdf417(struct zint_symbol *symbol, struct zint_seg segs[], const in
|
|||||||
/* like PDF417 only much smaller! */
|
/* like PDF417 only much smaller! */
|
||||||
INTERNAL int micropdf417(struct zint_symbol *symbol, struct zint_seg segs[], const int seg_count) {
|
INTERNAL int micropdf417(struct zint_symbol *symbol, struct zint_seg segs[], const int seg_count) {
|
||||||
int i, k, j, longueur, mccorrection[50] = {0}, offset;
|
int i, k, j, longueur, mccorrection[50] = {0}, offset;
|
||||||
int total, chainemc[PDF_MAX_LEN], mclength, error_number = 0;
|
int total, mclength, error_number = 0;
|
||||||
|
short chainemc[PDF_MAX_STREAM_LEN];
|
||||||
char pattern[580];
|
char pattern[580];
|
||||||
int bp = 0;
|
int bp = 0;
|
||||||
int structapp_cws[18] = {0}; /* 3 (Index) + 10 (ID) + 4 (Count) + 1 (Last) */
|
int structapp_cws[18] = {0}; /* 3 (Index) + 10 (ID) + 4 (Count) + 1 (Last) */
|
||||||
@ -1729,7 +1734,7 @@ INTERNAL int micropdf417(struct zint_symbol *symbol, struct zint_seg segs[], con
|
|||||||
}
|
}
|
||||||
#ifdef ZINT_TEST
|
#ifdef ZINT_TEST
|
||||||
if (symbol->debug & ZINT_DEBUG_TEST) {
|
if (symbol->debug & ZINT_DEBUG_TEST) {
|
||||||
debug_test_codeword_dump_int(symbol, chainemc, mclength);
|
debug_test_codeword_dump_short(symbol, chainemc, mclength);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -56,7 +56,7 @@ INTERNAL_DATA_EXTERN const unsigned short pdf_rap_side[52];
|
|||||||
/* Centre Row Address Pattern from Table 2 */
|
/* Centre Row Address Pattern from Table 2 */
|
||||||
INTERNAL_DATA_EXTERN const unsigned short pdf_rap_centre[52];
|
INTERNAL_DATA_EXTERN const unsigned short pdf_rap_centre[52];
|
||||||
|
|
||||||
INTERNAL void pdf_byteprocess(int *chainemc, int *p_mclength, const unsigned char chaine[], int start,
|
INTERNAL void pdf_byteprocess(short *chainemc, int *p_mclength, const unsigned char chaine[], int start,
|
||||||
const int length, const int lastmode, const int debug);
|
const int length, const int lastmode, const int debug);
|
||||||
|
|
||||||
/* vim: set ts=4 sw=4 et : */
|
/* vim: set ts=4 sw=4 et : */
|
||||||
|
@ -810,10 +810,15 @@ INTERNAL int dbar_ltd(struct zint_symbol *symbol, unsigned char source[], int le
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Check and convert date to DataBar date value */
|
/* Check and convert date to DataBar date value */
|
||||||
INTERNAL int dbar_date(const unsigned char source[], const int src_posn) {
|
INTERNAL int dbar_date(const unsigned char source[], const int length, const int src_posn) {
|
||||||
int yy = to_int(source + src_posn, 2);
|
int yy, mm, dd;
|
||||||
int mm = to_int(source + src_posn + 2, 2);
|
|
||||||
int dd = to_int(source + src_posn + 4, 2);
|
if (src_posn + 4 + 2 > length) {
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
yy = to_int(source + src_posn, 2);
|
||||||
|
mm = to_int(source + src_posn + 2, 2);
|
||||||
|
dd = to_int(source + src_posn + 4, 2);
|
||||||
|
|
||||||
/* Month can't be zero but day can (means last day of month,
|
/* Month can't be zero but day can (means last day of month,
|
||||||
GS1 General Specifications Sections 3.4.2 to 3.4.7) */
|
GS1 General Specifications Sections 3.4.2 to 3.4.7) */
|
||||||
@ -875,7 +880,7 @@ static int dbar_exp_binary_string(struct zint_symbol *symbol, const unsigned cha
|
|||||||
|
|
||||||
} else if ((length == 34) && (source[26] == '1')
|
} else if ((length == 34) && (source[26] == '1')
|
||||||
&& (source[27] == '1' || source[27] == '3' || source[27] == '5' || source[27] == '7')
|
&& (source[27] == '1' || source[27] == '3' || source[27] == '5' || source[27] == '7')
|
||||||
&& dbar_date(source, 28) >= 0) {
|
&& dbar_date(source, length, 28) >= 0) {
|
||||||
|
|
||||||
/* (01), (310x) and (11) - metric weight and production date */
|
/* (01), (310x) and (11) - metric weight and production date */
|
||||||
/* (01), (310x) and (13) - metric weight and packaging date */
|
/* (01), (310x) and (13) - metric weight and packaging date */
|
||||||
@ -906,7 +911,7 @@ static int dbar_exp_binary_string(struct zint_symbol *symbol, const unsigned cha
|
|||||||
|
|
||||||
} else if ((length == 34) && (source[26] == '1')
|
} else if ((length == 34) && (source[26] == '1')
|
||||||
&& (source[27] == '1' || source[27] == '3' || source[27] == '5' || source[27] == '7')
|
&& (source[27] == '1' || source[27] == '3' || source[27] == '5' || source[27] == '7')
|
||||||
&& dbar_date(source, 28) >= 0) {
|
&& dbar_date(source, length, 28) >= 0) {
|
||||||
|
|
||||||
/* (01), (320x) and (11) - English weight and production date */
|
/* (01), (320x) and (11) - English weight and production date */
|
||||||
/* (01), (320x) and (13) - English weight and packaging date */
|
/* (01), (320x) and (13) - English weight and packaging date */
|
||||||
@ -1031,7 +1036,7 @@ static int dbar_exp_binary_string(struct zint_symbol *symbol, const unsigned cha
|
|||||||
|
|
||||||
if (length == 34) {
|
if (length == 34) {
|
||||||
/* Date information is included */
|
/* Date information is included */
|
||||||
group_val = dbar_date(source, 28);
|
group_val = dbar_date(source, length, 28);
|
||||||
} else {
|
} else {
|
||||||
group_val = 38400;
|
group_val = 38400;
|
||||||
}
|
}
|
||||||
|
@ -575,23 +575,42 @@ static void test_encode(const testCtx *const p_ctx) {
|
|||||||
testFinish();
|
testFinish();
|
||||||
}
|
}
|
||||||
|
|
||||||
/* #181 Christian Hartlage OSS-Fuzz */
|
/* #181 Christian Hartlage OSS-Fuzz and #300 Andre Maute */
|
||||||
static void test_fuzz(const testCtx *const p_ctx) {
|
static void test_fuzz(const testCtx *const p_ctx) {
|
||||||
int debug = p_ctx->debug;
|
int debug = p_ctx->debug;
|
||||||
|
|
||||||
struct item {
|
struct item {
|
||||||
|
int option_1;
|
||||||
|
int option_2;
|
||||||
char *data;
|
char *data;
|
||||||
int length;
|
int length;
|
||||||
int ret;
|
int ret;
|
||||||
|
int bwipp_cmp;
|
||||||
|
char *comment;
|
||||||
};
|
};
|
||||||
/* s/\/\*[ 0-9]*\*\//\=printf("\/\*%3d*\/", line(".") - line("'<")): */
|
|
||||||
struct item data[] = {
|
struct item data[] = {
|
||||||
/* 0*/ { "\034\034I", 3, 0 },
|
/* 0*/ { -1, -1, "\034\034I", 3, 0, 1, "" },
|
||||||
|
/* 1*/ { 6, -2147483648,
|
||||||
|
"\134\000\377\153\143\163\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061"
|
||||||
|
"\071\065\062\000\000\000\000\061\061\061\061\061\061\366\366\366\366\366\366\366\366\366\366\007\366\366\366\366\366\366\366\061\061\061\061\061\061\061\061\061"
|
||||||
|
"\061\061\061\061\061\061\061\323\323\323\323\000\200\135\000\362\000\000\000\000\000\050\000\000\000\000\162\162\162\162\034\153\143\163\061\061\061\061\061\061"
|
||||||
|
"\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\312\061\061\061\061\061\061\061"
|
||||||
|
"\061\366\366\366\366\366\366\366\366\366\366\007\366\366\366\366\366\366\366\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\061\323\323\323\323\000"
|
||||||
|
"\200\135\000\362\362\362\362\000\167\027\000\000\000\000\000\000\000\000\000\167\167\167\167\000\000\000\154\000\043\000\000\000\000\000\000\000\000\153",
|
||||||
|
238, 0, 0, "BWIPP different (better) encodation"
|
||||||
|
}, /* #300 (#9) Andre Maute */
|
||||||
};
|
};
|
||||||
int data_size = ARRAY_SIZE(data);
|
int data_size = ARRAY_SIZE(data);
|
||||||
int i, length, ret;
|
int i, length, ret;
|
||||||
struct zint_symbol *symbol = NULL;
|
struct zint_symbol *symbol = NULL;
|
||||||
|
|
||||||
|
char escaped[16834];
|
||||||
|
char cmp_buf[32768];
|
||||||
|
char cmp_msg[32768];
|
||||||
|
|
||||||
|
int do_bwipp = (debug & ZINT_DEBUG_TEST_BWIPP) && testUtilHaveGhostscript(); /* Only do BWIPP test if asked, too slow otherwise */
|
||||||
|
int do_zxingcpp = (debug & ZINT_DEBUG_TEST_ZXINGCPP) && testUtilHaveZXingCPPDecoder(); /* Only do ZXing-C++ test if asked, too slow otherwise */
|
||||||
|
|
||||||
testStartSymbol("test_fuzz", &symbol);
|
testStartSymbol("test_fuzz", &symbol);
|
||||||
|
|
||||||
for (i = 0; i < data_size; i++) {
|
for (i = 0; i < data_size; i++) {
|
||||||
@ -601,11 +620,40 @@ static void test_fuzz(const testCtx *const p_ctx) {
|
|||||||
symbol = ZBarcode_Create();
|
symbol = ZBarcode_Create();
|
||||||
assert_nonnull(symbol, "Symbol not created\n");
|
assert_nonnull(symbol, "Symbol not created\n");
|
||||||
|
|
||||||
length = testUtilSetSymbol(symbol, BARCODE_CODABLOCKF, -1 /*input_mode*/, -1 /*eci*/, -1 /*option_1*/, -1, -1, -1 /*output_options*/, data[i].data, data[i].length, debug);
|
length = testUtilSetSymbol(symbol, BARCODE_CODABLOCKF, -1 /*input_mode*/, -1 /*eci*/, data[i].option_1, data[i].option_2, -1, -1 /*output_options*/, data[i].data, data[i].length, debug);
|
||||||
|
|
||||||
ret = ZBarcode_Encode(symbol, (unsigned char *) data[i].data, length);
|
ret = ZBarcode_Encode(symbol, (unsigned char *) data[i].data, length);
|
||||||
assert_equal(ret, data[i].ret, "i:%d ZBarcode_Encode ret %d != %d (%s)\n", i, ret, data[i].ret, symbol->errtxt);
|
assert_equal(ret, data[i].ret, "i:%d ZBarcode_Encode ret %d != %d (%s)\n", i, ret, data[i].ret, symbol->errtxt);
|
||||||
|
|
||||||
|
if (ret < ZINT_ERROR) {
|
||||||
|
|
||||||
|
if (do_bwipp && testUtilCanBwipp(i, symbol, data[i].option_1, data[i].option_2, -1, debug)) {
|
||||||
|
if (!data[i].bwipp_cmp) {
|
||||||
|
if (debug & ZINT_DEBUG_TEST_PRINT) printf("i:%d %s not BWIPP compatible (%s)\n", i, testUtilBarcodeName(symbol->symbology), data[i].comment);
|
||||||
|
} else {
|
||||||
|
char modules_dump[32768];
|
||||||
|
assert_notequal(testUtilModulesDump(symbol, modules_dump, sizeof(modules_dump)), -1, "i:%d testUtilModulesDump == -1\n", i);
|
||||||
|
ret = testUtilBwipp(i, symbol, data[i].option_1, data[i].option_2, -1, data[i].data, length, NULL, cmp_buf, sizeof(cmp_buf), NULL);
|
||||||
|
assert_zero(ret, "i:%d %s testUtilBwipp ret %d != 0\n", i, testUtilBarcodeName(symbol->symbology), ret);
|
||||||
|
|
||||||
|
ret = testUtilBwippCmp(symbol, cmp_msg, cmp_buf, modules_dump);
|
||||||
|
assert_zero(ret, "i:%d %s testUtilBwippCmp %d != 0 %s\n actual: %s\nexpected: %s\n",
|
||||||
|
i, testUtilBarcodeName(symbol->symbology), ret, cmp_msg, cmp_buf, modules_dump);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (do_zxingcpp && testUtilCanZXingCPP(i, symbol, data[i].data, length, debug)) {
|
||||||
|
int cmp_len, ret_len;
|
||||||
|
char modules_dump[32768];
|
||||||
|
assert_notequal(testUtilModulesDump(symbol, modules_dump, sizeof(modules_dump)), -1, "i:%d testUtilModulesDump == -1\n", i);
|
||||||
|
ret = testUtilZXingCPP(i, symbol, data[i].data, length, modules_dump, cmp_buf, sizeof(cmp_buf), &cmp_len);
|
||||||
|
assert_zero(ret, "i:%d %s testUtilZXingCPP ret %d != 0\n", i, testUtilBarcodeName(symbol->symbology), ret);
|
||||||
|
|
||||||
|
ret = testUtilZXingCPPCmp(symbol, cmp_msg, cmp_buf, cmp_len, data[i].data, length, NULL /*primary*/, escaped, &ret_len);
|
||||||
|
assert_zero(ret, "i:%d %s testUtilZXingCPPCmp %d != 0 %s\n actual: %.*s\nexpected: %.*s\n",
|
||||||
|
i, testUtilBarcodeName(symbol->symbology), ret, cmp_msg, cmp_len, cmp_buf, ret_len, escaped);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
ZBarcode_Delete(symbol);
|
ZBarcode_Delete(symbol);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3353,6 +3353,7 @@ static void test_fuzz(const testCtx *const p_ctx) {
|
|||||||
int debug = p_ctx->debug;
|
int debug = p_ctx->debug;
|
||||||
|
|
||||||
struct item {
|
struct item {
|
||||||
|
int option_2;
|
||||||
char *data;
|
char *data;
|
||||||
int length;
|
int length;
|
||||||
int ret;
|
int ret;
|
||||||
@ -3361,20 +3362,22 @@ static void test_fuzz(const testCtx *const p_ctx) {
|
|||||||
};
|
};
|
||||||
/* s/\/\*[ 0-9]*\*\//\=printf("\/\*%3d*\/", line(".") - line("'<")): */
|
/* s/\/\*[ 0-9]*\*\//\=printf("\/\*%3d*\/", line(".") - line("'<")): */
|
||||||
struct item data[] = {
|
struct item data[] = {
|
||||||
/* 0*/ { "3333P33B\035333V3333333333333\0363", -1, 0, 1, "" }, /* #181 Nico Gunkel, OSS-Fuzz */
|
/* 0*/ { -1, "3333P33B\035333V3333333333333\0363", -1, 0, 1, "" }, /* #181 Nico Gunkel, OSS-Fuzz */
|
||||||
/* 1*/ { "{{-06\024755712162106130000000829203983\377", -1, 0, 1, "" }, /* #232 Jan Schrewe, CI-Fuzz, out-of-bounds in is_last_single_ascii() sp + 1 */
|
/* 1*/ { -1, "{{-06\024755712162106130000000829203983\377", -1, 0, 1, "" }, /* #232 Jan Schrewe, CI-Fuzz, out-of-bounds in is_last_single_ascii() sp + 1 */
|
||||||
/* 2*/ { "\000\000\000\367\000\000\000\000\000\103\040\000\000\244\137\140\140\000\000\000\000\000\000\000\000\000\005\000\000\000\000\000\165\060\060\060\060\061\060\060\114\114\060\010\102\102\102\102\102\102\102\102\057\102\100\102\057\233\100\102", 60, 0, 1, "" }, /* #300 (#4) Andre Maute */
|
/* 2*/ { -1, "\000\000\000\367\000\000\000\000\000\103\040\000\000\244\137\140\140\000\000\000\000\000\000\000\000\000\005\000\000\000\000\000\165\060\060\060\060\061\060\060\114\114\060\010\102\102\102\102\102\102\102\102\057\102\100\102\057\233\100\102", 60, 0, 1, "" }, /* #300 (#4) Andre Maute */
|
||||||
|
/* 3*/ { 10, "\153\153\153\060\001\000\134\153\153\015\015\353\362\015\015\015\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\015\015\015\015\015\015\015\015\015\015\015\015\015\015\015\362\362\000", 65, ZINT_ERROR_TOO_LONG, 1, "" }, /* #300 (#8) Andre Maute */
|
||||||
|
/* 4*/ { 10, "\015\015\353\362\015\015\015\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\110\015\015\015\015\015\015\015\015\015\015\015\015\015\015\015\362\362\000", 39, 0, 1, "" }, /* #300 (#8 shortened) Andre Maute */
|
||||||
};
|
};
|
||||||
int data_size = ARRAY_SIZE(data);
|
int data_size = ARRAY_SIZE(data);
|
||||||
int i, length, ret;
|
int i, length, ret;
|
||||||
struct zint_symbol *symbol;
|
struct zint_symbol *symbol = NULL;
|
||||||
|
|
||||||
char bwipp_buf[32768];
|
char bwipp_buf[32768];
|
||||||
char bwipp_msg[1024];
|
char bwipp_msg[1024];
|
||||||
|
|
||||||
int do_bwipp = (debug & ZINT_DEBUG_TEST_BWIPP) && testUtilHaveGhostscript(); /* Only do BWIPP test if asked, too slow otherwise */
|
int do_bwipp = (debug & ZINT_DEBUG_TEST_BWIPP) && testUtilHaveGhostscript(); /* Only do BWIPP test if asked, too slow otherwise */
|
||||||
|
|
||||||
testStart("test_fuzz");
|
testStartSymbol("test_fuzz", &symbol);
|
||||||
|
|
||||||
for (i = 0; i < data_size; i++) {
|
for (i = 0; i < data_size; i++) {
|
||||||
|
|
||||||
@ -3383,22 +3386,19 @@ static void test_fuzz(const testCtx *const p_ctx) {
|
|||||||
symbol = ZBarcode_Create();
|
symbol = ZBarcode_Create();
|
||||||
assert_nonnull(symbol, "Symbol not created\n");
|
assert_nonnull(symbol, "Symbol not created\n");
|
||||||
|
|
||||||
symbol->symbology = BARCODE_CODEONE;
|
length = testUtilSetSymbol(symbol, BARCODE_CODEONE, -1 /*input_mode*/, -1 /*eci*/, -1 /*option_1*/, data[i].option_2, -1, -1 /*output_options*/, data[i].data, data[i].length, debug);
|
||||||
symbol->debug |= debug;
|
|
||||||
|
|
||||||
length = data[i].length == -1 ? (int) strlen(data[i].data) : data[i].length;
|
|
||||||
|
|
||||||
ret = ZBarcode_Encode(symbol, (unsigned char *) data[i].data, length);
|
ret = ZBarcode_Encode(symbol, (unsigned char *) data[i].data, length);
|
||||||
assert_equal(ret, data[i].ret, "i:%d ZBarcode_Encode ret %d != %d (%s)\n", i, ret, data[i].ret, symbol->errtxt);
|
assert_equal(ret, data[i].ret, "i:%d ZBarcode_Encode ret %d != %d (%s)\n", i, ret, data[i].ret, symbol->errtxt);
|
||||||
|
|
||||||
if (ret < ZINT_ERROR) {
|
if (ret < ZINT_ERROR) {
|
||||||
if (do_bwipp && testUtilCanBwipp(i, symbol, -1, -1, -1, debug)) {
|
if (do_bwipp && testUtilCanBwipp(i, symbol, -1, data[i].option_2, -1, debug)) {
|
||||||
if (!data[i].bwipp_cmp) {
|
if (!data[i].bwipp_cmp) {
|
||||||
if (debug & ZINT_DEBUG_TEST_PRINT) printf("i:%d %s not BWIPP compatible (%s)\n", i, testUtilBarcodeName(symbol->symbology), data[i].comment);
|
if (debug & ZINT_DEBUG_TEST_PRINT) printf("i:%d %s not BWIPP compatible (%s)\n", i, testUtilBarcodeName(symbol->symbology), data[i].comment);
|
||||||
} else {
|
} else {
|
||||||
char modules_dump[4096];
|
char modules_dump[4096];
|
||||||
assert_notequal(testUtilModulesDump(symbol, modules_dump, sizeof(modules_dump)), -1, "i:%d testUtilModulesDump == -1\n", i);
|
assert_notequal(testUtilModulesDump(symbol, modules_dump, sizeof(modules_dump)), -1, "i:%d testUtilModulesDump == -1\n", i);
|
||||||
ret = testUtilBwipp(i, symbol, -1, -1, -1, data[i].data, length, NULL, bwipp_buf, sizeof(bwipp_buf), NULL);
|
ret = testUtilBwipp(i, symbol, -1, data[i].option_2, -1, data[i].data, length, NULL, bwipp_buf, sizeof(bwipp_buf), NULL);
|
||||||
assert_zero(ret, "i:%d %s testUtilBwipp ret %d != 0\n", i, testUtilBarcodeName(symbol->symbology), ret);
|
assert_zero(ret, "i:%d %s testUtilBwipp ret %d != 0\n", i, testUtilBarcodeName(symbol->symbology), ret);
|
||||||
|
|
||||||
ret = testUtilBwippCmp(symbol, bwipp_msg, bwipp_buf, modules_dump);
|
ret = testUtilBwippCmp(symbol, bwipp_msg, bwipp_buf, modules_dump);
|
||||||
|
@ -3457,12 +3457,13 @@ static void test_input(const testCtx *const p_ctx) {
|
|||||||
testFinish();
|
testFinish();
|
||||||
}
|
}
|
||||||
|
|
||||||
/* #181 Christian Hartlage OSS-Fuzz */
|
/* #181 Christian Hartlage OSS-Fuzz and #300 Andre Maute */
|
||||||
static void test_fuzz(const testCtx *const p_ctx) {
|
static void test_fuzz(const testCtx *const p_ctx) {
|
||||||
int debug = p_ctx->debug;
|
int debug = p_ctx->debug;
|
||||||
|
|
||||||
struct item {
|
struct item {
|
||||||
int symbology;
|
int symbology;
|
||||||
|
int input_mode;
|
||||||
char *data;
|
char *data;
|
||||||
int length;
|
int length;
|
||||||
char *composite;
|
char *composite;
|
||||||
@ -3470,11 +3471,13 @@ static void test_fuzz(const testCtx *const p_ctx) {
|
|||||||
};
|
};
|
||||||
/* s/\/\*[ 0-9]*\*\//\=printf("\/\*%3d*\/", line(".") - line("'<")): */
|
/* s/\/\*[ 0-9]*\*\//\=printf("\/\*%3d*\/", line(".") - line("'<")): */
|
||||||
struct item data[] = {
|
struct item data[] = {
|
||||||
/* 0*/ { BARCODE_EANX_CC, "+123456789012345678", -1, "[21]A12345678", ZINT_ERROR_TOO_LONG },
|
/* 0*/ { BARCODE_EANX_CC, -1, "+123456789012345678", -1, "[21]A12345678", ZINT_ERROR_TOO_LONG },
|
||||||
/* 1*/ { BARCODE_UPCA_CC, "+123456789012345678", -1, "[21]A12345678", ZINT_ERROR_TOO_LONG },
|
/* 1*/ { BARCODE_UPCA_CC, -1, "+123456789012345678", -1, "[21]A12345678", ZINT_ERROR_TOO_LONG },
|
||||||
/* 2*/ { BARCODE_UPCE_CC, "+123456789012345678", -1, "[21]A12345678", ZINT_ERROR_TOO_LONG },
|
/* 2*/ { BARCODE_UPCE_CC, -1, "+123456789012345678", -1, "[21]A12345678", ZINT_ERROR_TOO_LONG },
|
||||||
/* 3*/ { BARCODE_EANX_CC, "+12345", -1, "[21]A12345678", 0 },
|
/* 3*/ { BARCODE_EANX_CC, -1, "+12345", -1, "[21]A12345678", 0 },
|
||||||
/* 4*/ { BARCODE_EANX_CC, "+123456", -1, "[21]A12345678", ZINT_ERROR_TOO_LONG },
|
/* 4*/ { BARCODE_EANX_CC, -1, "+123456", -1, "[21]A12345678", ZINT_ERROR_TOO_LONG },
|
||||||
|
/* 5*/ { BARCODE_EANX_CC, GS1PARENS_MODE | GS1NOCHECK_MODE, "kks", -1, "()111%", ZINT_ERROR_INVALID_DATA }, /* #300 (#5), Andre Maute */
|
||||||
|
/* 6*/ { BARCODE_UPCA_CC, GS1PARENS_MODE | GS1NOCHECK_MODE, "\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 }, /* #300 (#6), Andre Maute */
|
||||||
};
|
};
|
||||||
int data_size = ARRAY_SIZE(data);
|
int data_size = ARRAY_SIZE(data);
|
||||||
int i, length, composite_length, ret;
|
int i, length, composite_length, ret;
|
||||||
@ -3489,7 +3492,7 @@ static void test_fuzz(const testCtx *const p_ctx) {
|
|||||||
symbol = ZBarcode_Create();
|
symbol = ZBarcode_Create();
|
||||||
assert_nonnull(symbol, "Symbol not created\n");
|
assert_nonnull(symbol, "Symbol not created\n");
|
||||||
|
|
||||||
length = testUtilSetSymbol(symbol, data[i].symbology, -1 /*input_mode*/, -1 /*eci*/, -1 /*option_1*/, -1, -1, -1 /*output_options*/, data[i].data, -1, debug);
|
length = testUtilSetSymbol(symbol, data[i].symbology, data[i].input_mode, -1 /*eci*/, -1 /*option_1*/, -1, -1, -1 /*output_options*/, data[i].data, -1, debug);
|
||||||
assert_zero(length >= 128, "i:%d length %d >= 128\n", i, length);
|
assert_zero(length >= 128, "i:%d length %d >= 128\n", i, length);
|
||||||
strcpy(symbol->primary, data[i].data);
|
strcpy(symbol->primary, data[i].data);
|
||||||
|
|
||||||
|
@ -4782,13 +4782,16 @@ static void test_fuzz(const testCtx *const p_ctx) {
|
|||||||
struct item {
|
struct item {
|
||||||
int symbology;
|
int symbology;
|
||||||
int input_mode;
|
int input_mode;
|
||||||
|
int option_1;
|
||||||
|
int option_2;
|
||||||
char *data;
|
char *data;
|
||||||
int length;
|
int length;
|
||||||
int option_1;
|
|
||||||
int ret;
|
int ret;
|
||||||
|
int bwipp_cmp;
|
||||||
|
char *comment;
|
||||||
};
|
};
|
||||||
struct item data[] = {
|
struct item data[] = {
|
||||||
/* 0*/ { BARCODE_PDF417, DATA_MODE | FAST_MODE,
|
/* 0*/ { BARCODE_PDF417, DATA_MODE | FAST_MODE, -1, -1,
|
||||||
"\060\075\204\060\204\060\204\041\060\075\060\204\060\075\060\075\204\060\075\060\103\204\060\204\060\003\120\060\075\060\004\060\204\060\074\204\060\204\060\075"
|
"\060\075\204\060\204\060\204\041\060\075\060\204\060\075\060\075\204\060\075\060\103\204\060\204\060\003\120\060\075\060\004\060\204\060\074\204\060\204\060\075"
|
||||||
"\204\060\075\060\103\204\060\214\060\204\060\075\060\031\060\073\060\025\060\075\060\204\060\103\204\060\075\060\204\060\000\075\060\226\060\100\204\060\204\060"
|
"\204\060\075\060\103\204\060\214\060\204\060\075\060\031\060\073\060\025\060\075\060\204\060\103\204\060\075\060\204\060\000\075\060\226\060\100\204\060\204\060"
|
||||||
"\204\060\075\204\060\120\214\060\204\060\074\377\060\075\204\060\075\060\103\204\060\214\060\204\060\075\060\041\060\000\060\204\060\120\214\060\204\060\074\204"
|
"\204\060\075\204\060\120\214\060\204\060\074\377\060\075\204\060\075\060\103\204\060\214\060\204\060\075\060\041\060\000\060\204\060\120\214\060\204\060\074\204"
|
||||||
@ -4814,8 +4817,9 @@ static void test_fuzz(const testCtx *const p_ctx) {
|
|||||||
"\060\204\041\060\075\060\204\060\075\060\075\204\060\075\060\103\204\060\204\060\003\120\060\075\060\004\060\204\060\074\204\060\204\060\075\204\060\075\060\103"
|
"\060\204\041\060\075\060\204\060\075\060\075\204\060\075\060\103\204\060\204\060\003\120\060\075\060\004\060\204\060\074\204\060\204\060\075\204\060\075\060\103"
|
||||||
"\204\060\214\060\204\060\075\060\073\060\075\060\204\060\103\204\060\075\060\204\060\204\060\122\060\000\060\075\060\000\076\060\100\000\060\004\060\103\204\060"
|
"\204\060\214\060\204\060\075\060\073\060\075\060\204\060\103\204\060\075\060\204\060\204\060\122\060\000\060\075\060\000\076\060\100\000\060\004\060\103\204\060"
|
||||||
"\204\060\003\060\204\075\060\120\214\060\204\060\004\060\103\204\060\204\060\003\060\211\074\060\120\060\124\060\351\060\120\060\075\060\351\060\072\375\060\204\060",
|
"\204\060\003\060\204\075\060\120\214\060\204\060\004\060\103\204\060\204\060\003\060\211\074\060\120\060\124\060\351\060\120\060\075\060\351\060\072\375\060\204\060",
|
||||||
1001, -1, ZINT_ERROR_TOO_LONG }, /* Original OSS-Fuzz triggering data */
|
1001, ZINT_ERROR_TOO_LONG, 1, ""
|
||||||
/* 1*/ { BARCODE_PDF417, DATA_MODE,
|
}, /* Original OSS-Fuzz triggering data */
|
||||||
|
/* 1*/ { BARCODE_PDF417, DATA_MODE, -1, -1,
|
||||||
"\060\075\204\060\204\060\204\041\060\075\060\204\060\075\060\075\204\060\075\060\103\204\060\204\060\003\120\060\075\060\004\060\204\060\074\204\060\204\060\075"
|
"\060\075\204\060\204\060\204\041\060\075\060\204\060\075\060\075\204\060\075\060\103\204\060\204\060\003\120\060\075\060\004\060\204\060\074\204\060\204\060\075"
|
||||||
"\204\060\075\060\103\204\060\214\060\204\060\075\060\031\060\073\060\025\060\075\060\204\060\103\204\060\075\060\204\060\000\075\060\226\060\100\204\060\204\060"
|
"\204\060\075\060\103\204\060\214\060\204\060\075\060\031\060\073\060\025\060\075\060\204\060\103\204\060\075\060\204\060\000\075\060\226\060\100\204\060\204\060"
|
||||||
"\204\060\075\204\060\120\214\060\204\060\074\377\060\075\204\060\075\060\103\204\060\214\060\204\060\075\060\041\060\000\060\204\060\120\214\060\204\060\074\204"
|
"\204\060\075\204\060\120\214\060\204\060\074\377\060\075\204\060\075\060\103\204\060\214\060\204\060\075\060\041\060\000\060\204\060\120\214\060\204\060\074\204"
|
||||||
@ -4841,8 +4845,9 @@ static void test_fuzz(const testCtx *const p_ctx) {
|
|||||||
"\060\204\041\060\075\060\204\060\075\060\075\204\060\075\060\103\204\060\204\060\003\120\060\075\060\004\060\204\060\074\204\060\204\060\075\204\060\075\060\103"
|
"\060\204\041\060\075\060\204\060\075\060\075\204\060\075\060\103\204\060\204\060\003\120\060\075\060\004\060\204\060\074\204\060\204\060\075\204\060\075\060\103"
|
||||||
"\204\060\214\060\204\060\075\060\073\060\075\060\204\060\103\204\060\075\060\204\060\204\060\122\060\000\060\075\060\000\076\060\100\000\060\004\060\103\204\060"
|
"\204\060\214\060\204\060\075\060\073\060\075\060\204\060\103\204\060\075\060\204\060\204\060\122\060\000\060\075\060\000\076\060\100\000\060\004\060\103\204\060"
|
||||||
"\204\060\003\060\204\075\060\120\214\060\204\060\004\060\103\204\060\204\060\003\060\211\074\060\120\060\124\060\351\060\120\060\075\060\351\060\072\375\060\204\060",
|
"\204\060\003\060\204\075\060\120\214\060\204\060\004\060\103\204\060\204\060\003\060\211\074\060\120\060\124\060\351\060\120\060\075\060\351\060\072\375\060\204\060",
|
||||||
1001, -1, 0 }, /* Original OSS-Fuzz triggering data */
|
1001, 0, 0, "BWIPP different encodation"
|
||||||
/* 2*/ { BARCODE_PDF417COMP, DATA_MODE | FAST_MODE,
|
}, /* Original OSS-Fuzz triggering data */
|
||||||
|
/* 2*/ { BARCODE_PDF417COMP, DATA_MODE | FAST_MODE, -1, -1,
|
||||||
"\060\075\204\060\204\060\204\041\060\075\060\204\060\075\060\075\204\060\075\060\103\204\060\204\060\003\120\060\075\060\004\060\204\060\074\204\060\204\060\075"
|
"\060\075\204\060\204\060\204\041\060\075\060\204\060\075\060\075\204\060\075\060\103\204\060\204\060\003\120\060\075\060\004\060\204\060\074\204\060\204\060\075"
|
||||||
"\204\060\075\060\103\204\060\214\060\204\060\075\060\031\060\073\060\025\060\075\060\204\060\103\204\060\075\060\204\060\000\075\060\226\060\100\204\060\204\060"
|
"\204\060\075\060\103\204\060\214\060\204\060\075\060\031\060\073\060\025\060\075\060\204\060\103\204\060\075\060\204\060\000\075\060\226\060\100\204\060\204\060"
|
||||||
"\204\060\075\204\060\120\214\060\204\060\074\377\060\075\204\060\075\060\103\204\060\214\060\204\060\075\060\041\060\000\060\204\060\120\214\060\204\060\074\204"
|
"\204\060\075\204\060\120\214\060\204\060\074\377\060\075\204\060\075\060\103\204\060\214\060\204\060\075\060\041\060\000\060\204\060\120\214\060\204\060\074\204"
|
||||||
@ -4868,8 +4873,9 @@ static void test_fuzz(const testCtx *const p_ctx) {
|
|||||||
"\060\204\041\060\075\060\204\060\075\060\075\204\060\075\060\103\204\060\204\060\003\120\060\075\060\004\060\204\060\074\204\060\204\060\075\204\060\075\060\103"
|
"\060\204\041\060\075\060\204\060\075\060\075\204\060\075\060\103\204\060\204\060\003\120\060\075\060\004\060\204\060\074\204\060\204\060\075\204\060\075\060\103"
|
||||||
"\204\060\214\060\204\060\075\060\073\060\075\060\204\060\103\204\060\075\060\204\060\204\060\122\060\000\060\075\060\000\076\060\100\000\060\004\060\103\204\060"
|
"\204\060\214\060\204\060\075\060\073\060\075\060\204\060\103\204\060\075\060\204\060\204\060\122\060\000\060\075\060\000\076\060\100\000\060\004\060\103\204\060"
|
||||||
"\204\060\003\060\204\075\060\120\214\060\204\060\004\060\103\204\060\204\060\003\060\211\074\060\120\060\124\060\351\060\120\060\075\060\351\060\072\375\060\204\060",
|
"\204\060\003\060\204\075\060\120\214\060\204\060\004\060\103\204\060\204\060\003\060\211\074\060\120\060\124\060\351\060\120\060\075\060\351\060\072\375\060\204\060",
|
||||||
1001, -1, ZINT_ERROR_TOO_LONG },
|
1001, ZINT_ERROR_TOO_LONG, 1, ""
|
||||||
/* 3*/ { BARCODE_PDF417COMP, DATA_MODE,
|
},
|
||||||
|
/* 3*/ { BARCODE_PDF417COMP, DATA_MODE, -1, -1,
|
||||||
"\060\075\204\060\204\060\204\041\060\075\060\204\060\075\060\075\204\060\075\060\103\204\060\204\060\003\120\060\075\060\004\060\204\060\074\204\060\204\060\075"
|
"\060\075\204\060\204\060\204\041\060\075\060\204\060\075\060\075\204\060\075\060\103\204\060\204\060\003\120\060\075\060\004\060\204\060\074\204\060\204\060\075"
|
||||||
"\204\060\075\060\103\204\060\214\060\204\060\075\060\031\060\073\060\025\060\075\060\204\060\103\204\060\075\060\204\060\000\075\060\226\060\100\204\060\204\060"
|
"\204\060\075\060\103\204\060\214\060\204\060\075\060\031\060\073\060\025\060\075\060\204\060\103\204\060\075\060\204\060\000\075\060\226\060\100\204\060\204\060"
|
||||||
"\204\060\075\204\060\120\214\060\204\060\074\377\060\075\204\060\075\060\103\204\060\214\060\204\060\075\060\041\060\000\060\204\060\120\214\060\204\060\074\204"
|
"\204\060\075\204\060\120\214\060\204\060\074\377\060\075\204\060\075\060\103\204\060\214\060\204\060\075\060\041\060\000\060\204\060\120\214\060\204\060\074\204"
|
||||||
@ -4895,8 +4901,9 @@ static void test_fuzz(const testCtx *const p_ctx) {
|
|||||||
"\060\204\041\060\075\060\204\060\075\060\075\204\060\075\060\103\204\060\204\060\003\120\060\075\060\004\060\204\060\074\204\060\204\060\075\204\060\075\060\103"
|
"\060\204\041\060\075\060\204\060\075\060\075\204\060\075\060\103\204\060\204\060\003\120\060\075\060\004\060\204\060\074\204\060\204\060\075\204\060\075\060\103"
|
||||||
"\204\060\214\060\204\060\075\060\073\060\075\060\204\060\103\204\060\075\060\204\060\204\060\122\060\000\060\075\060\000\076\060\100\000\060\004\060\103\204\060"
|
"\204\060\214\060\204\060\075\060\073\060\075\060\204\060\103\204\060\075\060\204\060\204\060\122\060\000\060\075\060\000\076\060\100\000\060\004\060\103\204\060"
|
||||||
"\204\060\003\060\204\075\060\120\214\060\204\060\004\060\103\204\060\204\060\003\060\211\074\060\120\060\124\060\351\060\120\060\075\060\351\060\072\375\060\204\060",
|
"\204\060\003\060\204\075\060\120\214\060\204\060\004\060\103\204\060\204\060\003\060\211\074\060\120\060\124\060\351\060\120\060\075\060\351\060\072\375\060\204\060",
|
||||||
1001, -1, 0 },
|
1001, 0, 0, "BWIPP different encodation"
|
||||||
/* 4*/ { BARCODE_MICROPDF417, DATA_MODE | FAST_MODE,
|
},
|
||||||
|
/* 4*/ { BARCODE_MICROPDF417, DATA_MODE | FAST_MODE, -1, -1,
|
||||||
"\060\075\204\060\204\060\204\041\060\075\060\204\060\075\060\075\204\060\075\060\103\204\060\204\060\003\120\060\075\060\004\060\204\060\074\204\060\204\060\075"
|
"\060\075\204\060\204\060\204\041\060\075\060\204\060\075\060\075\204\060\075\060\103\204\060\204\060\003\120\060\075\060\004\060\204\060\074\204\060\204\060\075"
|
||||||
"\204\060\075\060\103\204\060\214\060\204\060\075\060\031\060\073\060\025\060\075\060\204\060\103\204\060\075\060\204\060\000\075\060\226\060\100\204\060\204\060"
|
"\204\060\075\060\103\204\060\214\060\204\060\075\060\031\060\073\060\025\060\075\060\204\060\103\204\060\075\060\204\060\000\075\060\226\060\100\204\060\204\060"
|
||||||
"\204\060\075\204\060\120\214\060\204\060\074\377\060\075\204\060\075\060\103\204\060\214\060\204\060\075\060\041\060\000\060\204\060\120\214\060\204\060\074\204"
|
"\204\060\075\204\060\120\214\060\204\060\074\377\060\075\204\060\075\060\103\204\060\214\060\204\060\075\060\041\060\000\060\204\060\120\214\060\204\060\074\204"
|
||||||
@ -4922,8 +4929,9 @@ static void test_fuzz(const testCtx *const p_ctx) {
|
|||||||
"\060\204\041\060\075\060\204\060\075\060\075\204\060\075\060\103\204\060\204\060\003\120\060\075\060\004\060\204\060\074\204\060\204\060\075\204\060\075\060\103"
|
"\060\204\041\060\075\060\204\060\075\060\075\204\060\075\060\103\204\060\204\060\003\120\060\075\060\004\060\204\060\074\204\060\204\060\075\204\060\075\060\103"
|
||||||
"\204\060\214\060\204\060\075\060\073\060\075\060\204\060\103\204\060\075\060\204\060\204\060\122\060\000\060\075\060\000\076\060\100\000\060\004\060\103\204\060"
|
"\204\060\214\060\204\060\075\060\073\060\075\060\204\060\103\204\060\075\060\204\060\204\060\122\060\000\060\075\060\000\076\060\100\000\060\004\060\103\204\060"
|
||||||
"\204\060\003\060\204\075\060\120\214\060\204\060\004\060\103\204\060\204\060\003\060\211\074\060\120\060\124\060\351\060\120\060\075\060\351\060\072\375\060\204\060",
|
"\204\060\003\060\204\075\060\120\214\060\204\060\004\060\103\204\060\204\060\003\060\211\074\060\120\060\124\060\351\060\120\060\075\060\351\060\072\375\060\204\060",
|
||||||
1001, -1, ZINT_ERROR_TOO_LONG },
|
1001, ZINT_ERROR_TOO_LONG, 1, ""
|
||||||
/* 5*/ { BARCODE_MICROPDF417, DATA_MODE,
|
},
|
||||||
|
/* 5*/ { BARCODE_MICROPDF417, DATA_MODE, -1, -1,
|
||||||
"\060\075\204\060\204\060\204\041\060\075\060\204\060\075\060\075\204\060\075\060\103\204\060\204\060\003\120\060\075\060\004\060\204\060\074\204\060\204\060\075"
|
"\060\075\204\060\204\060\204\041\060\075\060\204\060\075\060\075\204\060\075\060\103\204\060\204\060\003\120\060\075\060\004\060\204\060\074\204\060\204\060\075"
|
||||||
"\204\060\075\060\103\204\060\214\060\204\060\075\060\031\060\073\060\025\060\075\060\204\060\103\204\060\075\060\204\060\000\075\060\226\060\100\204\060\204\060"
|
"\204\060\075\060\103\204\060\214\060\204\060\075\060\031\060\073\060\025\060\075\060\204\060\103\204\060\075\060\204\060\000\075\060\226\060\100\204\060\204\060"
|
||||||
"\204\060\075\204\060\120\214\060\204\060\074\377\060\075\204\060\075\060\103\204\060\214\060\204\060\075\060\041\060\000\060\204\060\120\214\060\204\060\074\204"
|
"\204\060\075\204\060\120\214\060\204\060\074\377\060\075\204\060\075\060\103\204\060\214\060\204\060\075\060\041\060\000\060\204\060\120\214\060\204\060\074\204"
|
||||||
@ -4949,8 +4957,9 @@ static void test_fuzz(const testCtx *const p_ctx) {
|
|||||||
"\060\204\041\060\075\060\204\060\075\060\075\204\060\075\060\103\204\060\204\060\003\120\060\075\060\004\060\204\060\074\204\060\204\060\075\204\060\075\060\103"
|
"\060\204\041\060\075\060\204\060\075\060\075\204\060\075\060\103\204\060\204\060\003\120\060\075\060\004\060\204\060\074\204\060\204\060\075\204\060\075\060\103"
|
||||||
"\204\060\214\060\204\060\075\060\073\060\075\060\204\060\103\204\060\075\060\204\060\204\060\122\060\000\060\075\060\000\076\060\100\000\060\004\060\103\204\060"
|
"\204\060\214\060\204\060\075\060\073\060\075\060\204\060\103\204\060\075\060\204\060\204\060\122\060\000\060\075\060\000\076\060\100\000\060\004\060\103\204\060"
|
||||||
"\204\060\003\060\204\075\060\120\214\060\204\060\004\060\103\204\060\204\060\003\060\211\074\060\120\060\124\060\351\060\120\060\075\060\351\060\072\375\060\204\060",
|
"\204\060\003\060\204\075\060\120\214\060\204\060\004\060\103\204\060\204\060\003\060\211\074\060\120\060\124\060\351\060\120\060\075\060\351\060\072\375\060\204\060",
|
||||||
1001, -1, ZINT_ERROR_TOO_LONG },
|
1001, ZINT_ERROR_TOO_LONG, 1, ""
|
||||||
/* 6*/ { BARCODE_PDF417, DATA_MODE | FAST_MODE,
|
},
|
||||||
|
/* 6*/ { BARCODE_PDF417, DATA_MODE | FAST_MODE, 0, -1,
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
@ -4970,8 +4979,9 @@ static void test_fuzz(const testCtx *const p_ctx) {
|
|||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"1234567890",
|
"1234567890",
|
||||||
2710, 0, 0 }, /* Max numerics with ECC 0 */
|
2710, 0, 0, "BWIPP different encodation"
|
||||||
/* 7*/ { BARCODE_PDF417, DATA_MODE,
|
}, /* Max numerics with ECC 0 */
|
||||||
|
/* 7*/ { BARCODE_PDF417, DATA_MODE, 0, -1,
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
@ -4991,8 +5001,9 @@ static void test_fuzz(const testCtx *const p_ctx) {
|
|||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"1234567890",
|
"1234567890",
|
||||||
2710, 0, 0 }, /* Max numerics with ECC 0 */
|
2710, 0, 0, "BWIPP different encodation"
|
||||||
/* 8*/ { BARCODE_PDF417, DATA_MODE | FAST_MODE,
|
}, /* Max numerics with ECC 0 */
|
||||||
|
/* 8*/ { BARCODE_PDF417, DATA_MODE | FAST_MODE, 0, -1,
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
@ -5012,8 +5023,9 @@ static void test_fuzz(const testCtx *const p_ctx) {
|
|||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"12345678901",
|
"12345678901",
|
||||||
2711, 0, ZINT_ERROR_TOO_LONG },
|
2711, ZINT_ERROR_TOO_LONG, 1, ""
|
||||||
/* 9*/ { BARCODE_PDF417, DATA_MODE,
|
},
|
||||||
|
/* 9*/ { BARCODE_PDF417, DATA_MODE, 0, -1,
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
@ -5033,8 +5045,9 @@ static void test_fuzz(const testCtx *const p_ctx) {
|
|||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"12345678901",
|
"12345678901",
|
||||||
2711, 0, ZINT_ERROR_TOO_LONG },
|
2711, ZINT_ERROR_TOO_LONG, 1, ""
|
||||||
/*10*/ { BARCODE_PDF417, DATA_MODE | FAST_MODE,
|
},
|
||||||
|
/* 10*/ { BARCODE_PDF417, DATA_MODE | FAST_MODE, -1, -1,
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
@ -5052,8 +5065,9 @@ static void test_fuzz(const testCtx *const p_ctx) {
|
|||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678",
|
"12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678",
|
||||||
2528, -1, 0 }, /* Max numerics with ECC 5 */
|
2528, 0, 0, "BWIPP different encodation"
|
||||||
/*11*/ { BARCODE_PDF417, DATA_MODE,
|
}, /* Max numerics with ECC 5 */
|
||||||
|
/* 11*/ { BARCODE_PDF417, DATA_MODE, -1, -1,
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
@ -5071,8 +5085,9 @@ static void test_fuzz(const testCtx *const p_ctx) {
|
|||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678",
|
"12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678",
|
||||||
2528, -1, 0 }, /* Max numerics with ECC 5 */
|
2528, 0, 0, "BWIPP different encodation"
|
||||||
/*12*/ { BARCODE_PDF417, DATA_MODE | FAST_MODE,
|
}, /* Max numerics with ECC 5 */
|
||||||
|
/* 12*/ { BARCODE_PDF417, DATA_MODE | FAST_MODE, 0, -1,
|
||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||||||
@ -5088,8 +5103,9 @@ static void test_fuzz(const testCtx *const p_ctx) {
|
|||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCD",
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCD",
|
||||||
1850, 0, 0 }, /* Max text with ECC 0 */
|
1850, 0, 0, "BWIPP different encodation"
|
||||||
/*13*/ { BARCODE_PDF417, DATA_MODE,
|
}, /* Max text with ECC 0 */
|
||||||
|
/* 13*/ { BARCODE_PDF417, DATA_MODE, 0, -1,
|
||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||||||
@ -5105,8 +5121,9 @@ static void test_fuzz(const testCtx *const p_ctx) {
|
|||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCD",
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCD",
|
||||||
1850, 0, 0 }, /* Max text with ECC 0 */
|
1850, 0, 0, "BWIPP different encodation"
|
||||||
/*14*/ { BARCODE_PDF417, DATA_MODE | FAST_MODE,
|
}, /* Max text with ECC 0 */
|
||||||
|
/* 14*/ { BARCODE_PDF417, DATA_MODE | FAST_MODE, 0, -1,
|
||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||||||
@ -5122,8 +5139,9 @@ static void test_fuzz(const testCtx *const p_ctx) {
|
|||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFG",
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFG",
|
||||||
1853, 0, ZINT_ERROR_TOO_LONG },
|
1853, ZINT_ERROR_TOO_LONG, 1, ""
|
||||||
/*15*/ { BARCODE_PDF417, DATA_MODE,
|
},
|
||||||
|
/* 15*/ { BARCODE_PDF417, DATA_MODE, 0, -1,
|
||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||||||
@ -5139,8 +5157,9 @@ static void test_fuzz(const testCtx *const p_ctx) {
|
|||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFG",
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFG",
|
||||||
1853, 0, ZINT_ERROR_TOO_LONG },
|
1853, ZINT_ERROR_TOO_LONG, 1, ""
|
||||||
/*16*/ { BARCODE_PDF417, DATA_MODE | FAST_MODE,
|
},
|
||||||
|
/* 16*/ { BARCODE_PDF417, DATA_MODE | FAST_MODE, 0, -1,
|
||||||
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
||||||
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
||||||
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
||||||
@ -5169,8 +5188,9 @@ static void test_fuzz(const testCtx *const p_ctx) {
|
|||||||
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
||||||
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
||||||
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240",
|
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240",
|
||||||
1108, 0, 0 }, /* Max bytes with ECC 0 */
|
1108, 0, 0, "BWIPP different encodation"
|
||||||
/*17*/ { BARCODE_PDF417, DATA_MODE,
|
}, /* Max bytes with ECC 0 */
|
||||||
|
/* 17*/ { BARCODE_PDF417, DATA_MODE, 0, -1,
|
||||||
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
||||||
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
||||||
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
||||||
@ -5199,8 +5219,9 @@ static void test_fuzz(const testCtx *const p_ctx) {
|
|||||||
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
||||||
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
||||||
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240",
|
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240",
|
||||||
1108, 0, 0 }, /* Max bytes with ECC 0 */
|
1108, 0, 0, "BWIPP different encodation"
|
||||||
/*18*/ { BARCODE_PDF417, DATA_MODE | FAST_MODE,
|
}, /* Max bytes with ECC 0 */
|
||||||
|
/* 18*/ { BARCODE_PDF417, DATA_MODE | FAST_MODE, 0, -1,
|
||||||
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
||||||
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
||||||
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
||||||
@ -5229,8 +5250,9 @@ static void test_fuzz(const testCtx *const p_ctx) {
|
|||||||
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
||||||
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
||||||
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240",
|
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240",
|
||||||
1111, 0, ZINT_ERROR_TOO_LONG },
|
1111, ZINT_ERROR_TOO_LONG, 1, ""
|
||||||
/*19*/ { BARCODE_PDF417, DATA_MODE,
|
},
|
||||||
|
/* 19*/ { BARCODE_PDF417, DATA_MODE, 0, -1,
|
||||||
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
||||||
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
||||||
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
||||||
@ -5259,44 +5281,53 @@ static void test_fuzz(const testCtx *const p_ctx) {
|
|||||||
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
||||||
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240"
|
||||||
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240",
|
"\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240\240",
|
||||||
1111, 0, ZINT_ERROR_TOO_LONG },
|
1111, ZINT_ERROR_TOO_LONG, 1, ""
|
||||||
/*20*/ { BARCODE_MICROPDF417, DATA_MODE | FAST_MODE,
|
},
|
||||||
|
/* 20*/ { BARCODE_MICROPDF417, DATA_MODE | FAST_MODE, -1, -1,
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456",
|
"123456789012345678901234567890123456789012345678901234567890123456",
|
||||||
366, -1, 0 }, /* Max numerics */
|
366, 0, 1, ""
|
||||||
/*21*/ { BARCODE_MICROPDF417, DATA_MODE,
|
}, /* Max numerics */
|
||||||
|
/* 21*/ { BARCODE_MICROPDF417, DATA_MODE, -1, -1,
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456",
|
"123456789012345678901234567890123456789012345678901234567890123456",
|
||||||
366, -1, 0 }, /* Max numerics */
|
366, 0, 1, ""
|
||||||
/*22*/ { BARCODE_MICROPDF417, DATA_MODE | FAST_MODE,
|
}, /* Max numerics */
|
||||||
|
/* 22*/ { BARCODE_MICROPDF417, DATA_MODE | FAST_MODE, -1, -1,
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"1234567890123456789012345678901234567890123456789012345678901234567",
|
"1234567890123456789012345678901234567890123456789012345678901234567",
|
||||||
367, -1, ZINT_ERROR_TOO_LONG },
|
367, ZINT_ERROR_TOO_LONG, 1, ""
|
||||||
/*23*/ { BARCODE_MICROPDF417, DATA_MODE,
|
},
|
||||||
|
/* 23*/ { BARCODE_MICROPDF417, DATA_MODE, -1, -1,
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
"123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||||
"1234567890123456789012345678901234567890123456789012345678901234567",
|
"1234567890123456789012345678901234567890123456789012345678901234567",
|
||||||
367, -1, ZINT_ERROR_TOO_LONG },
|
367, ZINT_ERROR_TOO_LONG, 1, ""
|
||||||
/*24*/ { BARCODE_MICROPDF417, DATA_MODE | FAST_MODE,
|
},
|
||||||
|
/* 24*/ { BARCODE_MICROPDF417, DATA_MODE | FAST_MODE, -1, -1,
|
||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOP",
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOP",
|
||||||
250, -1, 0 }, /* Max text */
|
250, 0, 1, ""
|
||||||
/*25*/ { BARCODE_MICROPDF417, DATA_MODE,
|
}, /* Max text */
|
||||||
|
/* 25*/ { BARCODE_MICROPDF417, DATA_MODE, -1, -1,
|
||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOP",
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOP",
|
||||||
250, -1, 0 }, /* Max text */
|
250, 0, 1, ""
|
||||||
/*26*/ { BARCODE_MICROPDF417, DATA_MODE | FAST_MODE,
|
}, /* Max text */
|
||||||
|
/* 26*/ { BARCODE_MICROPDF417, DATA_MODE | FAST_MODE, -1, -1,
|
||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQ",
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQ",
|
||||||
251, -1, ZINT_ERROR_TOO_LONG },
|
251, ZINT_ERROR_TOO_LONG, 1, ""
|
||||||
/*27*/ { BARCODE_MICROPDF417, DATA_MODE,
|
},
|
||||||
|
/* 27*/ { BARCODE_MICROPDF417, DATA_MODE, -1, -1,
|
||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQ",
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQ",
|
||||||
251, -1, ZINT_ERROR_TOO_LONG },
|
251, ZINT_ERROR_TOO_LONG, 1, ""
|
||||||
/*28*/ { BARCODE_PDF417COMP, DATA_MODE | FAST_MODE,
|
},
|
||||||
|
/* 28*/ { BARCODE_PDF417COMP, DATA_MODE | FAST_MODE, 0, -1,
|
||||||
"\000\000\000\377\377\010\002\000\000\033\005\031\000\000\002\000\000\000\000\101\101\101\101\101\101\101\101\000\000\000\000\000\000\000\374\000\101\101\101\000"
|
"\000\000\000\377\377\010\002\000\000\033\005\031\000\000\002\000\000\000\000\101\101\101\101\101\101\101\101\000\000\000\000\000\000\000\374\000\101\101\101\000"
|
||||||
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\323\000\000\000\000\000\010\000\000\000\000\165\000\000\000\000\000\000\000\000\000\000\000\000\056"
|
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\323\000\000\000\000\000\010\000\000\000\000\165\000\000\000\000\000\000\000\000\000\000\000\000\056"
|
||||||
"\000\000\000\000\000\000\000\000\000\000\100\000\000\101\101\101\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\323\000\000\000\000\000\010\000"
|
"\000\000\000\000\000\000\000\000\000\000\100\000\000\101\101\101\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\323\000\000\000\000\000\010\000"
|
||||||
@ -5324,12 +5355,229 @@ static void test_fuzz(const testCtx *const p_ctx) {
|
|||||||
"\101\000\000\000\000\374\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\323\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
|
"\101\000\000\000\000\374\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\323\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
|
||||||
"\000\000\000\000\000\000\000\000\323\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
|
"\000\000\000\000\000\000\000\000\323\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
|
||||||
"\000\000\000\000\000\000\000\000",
|
"\000\000\000\000\000\000\000\000",
|
||||||
1048, 0, 0 }, /* #300 (#1) Andre Maute */
|
1048, 0, 0, "BWIPP different encodation"
|
||||||
|
}, /* #300 (#1) Andre Maute */
|
||||||
|
/* 29*/ { BARCODE_PDF417, DATA_MODE | FAST_MODE, -1, -1,
|
||||||
|
"\060\060\060\060\060\060\060\060\060\060\060\162\162\162\162\162\162\162\162\162\162\047\122\162\000\000\167\211\206\001\000\047\153\153\153\153\153\067\066\164"
|
||||||
|
"\060\060\060\060\060\060\060\060\060\060\060\162\162\162\162\162\162\162\162\162\162\047\122\162\000\000\167\211\206\001\000\047\153\153\153\153\153\153\153\164"
|
||||||
|
"\164\164\164\164\164\124\164\164\164\164\164\164\164\164\164\164\164\164\164\164\060\060\060\060\060\060\060\060\060\060\060\162\162\162\162\162\162\162\162\162"
|
||||||
|
"\162\047\122\162\162\162\162\162\162\162\167\167\167\162\162\162\162\047\122\162\000\000\167\167\167\001\152\152\152\152\152\152\051\050\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\050\051\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\107\107\107\107\107\107\107\107"
|
||||||
|
"\107\107\162\107\107\107\107\107\107\107\107\107\107\107\107\107\107\051\051\051\051\051\051\051\051\051\051\051\051\050\051\051\050\051\051\152\152\152\152\152"
|
||||||
|
"\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152"
|
||||||
|
"\152\152\152\152\152\152\152\152\152\107\107\051\051\051\051\051\051\051\051\051\051\051\051\050\051\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050"
|
||||||
|
"\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\051\051\050\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152"
|
||||||
|
"\152\152\051\050\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152\152\152\152\152\152\152\152\152\107\107\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\050\051\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152"
|
||||||
|
"\152\152\152\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\152\152\051\051\051\051\051\051\051\051\051\051\051\051\051\107\107\051\051\051\051\051\051\051\051\051\051\051\051\050\051\051"
|
||||||
|
"\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152\152\152\152\152\152\152\152\152\107"
|
||||||
|
"\107\107\107\107\152\051\051\051\051\107\107\107\107\107\107\107\107\107\107\107\051\051\051\051\051\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152\152\152\152\152\152\152\152\152\107\107\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\050\051\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152\152\152\051\050\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152\152\152\152"
|
||||||
|
"\152\152\152\152\152\107\107\107\107\107\152\051\051\051\152\051\050\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\152\152\152\152\152\152\152\152\152\152\107\107\051\051\051\051\051\051\051\051\051\051\051\051\050\051\051\050\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152\051\051\051\051\051\051\051\051\051\051\051\051\051\050\051\051\050\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152\152\152\152\152\152\152\152\152\107\107\107\107\107\152"
|
||||||
|
"\051\051\051\051\107\107\107\107\107\107\107\107\107\107\107\051\051\051\051\051\051\050\051\051\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152"
|
||||||
|
"\152\152\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\152\152\152\152\152\152\152\152\152\152\107\107\051\051\051\051\051\051\051\051\051\051\051\051\050\051\051\050\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\051\050\051\107\107\107\107\107\107\107\107\107\107\107\051\051\051\051\051\051\050\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152\152\152\152\152\152"
|
||||||
|
"\152\152\152\107\107\051\051\051\051\051\051\051\051\051\051\050\051\051\051\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152\152\152\152\152\152\152\152\152\107\107\107\107\107\152\051"
|
||||||
|
"\051\051\051\107\107\107\107\107\107\107\107\107\107\107\051\051\051\051\051\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152\152\152\152\152\152\152\152\152\107\107\051\051\051\051\051\051\051\051\051\051\051\051\050\051\051"
|
||||||
|
"\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152\152\152\152\152\152\152\152\152\107"
|
||||||
|
"\107\107\107\107\152\051\051\051\051\107\107\107\107\107\107\107\107\107\107\107\051\051\051\051\051\051\050\051\051\051\051\051\051\051\051\051\051\051\050\152"
|
||||||
|
"\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152\152\152\152\152\152"
|
||||||
|
"\152\152\152\107\107\051\051\051\051\051\051\051\051\051\051\051\051\050\051\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\152\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\152\152\152\152\152\152\152\152\152\152\107\107\051\051\051\051\051\051\051\051\051\051\050\051\051\051\051\050\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\051\051\050\051\051\051\051\051\051\051\051\152\152\152\152\152\152\152\152\152\152\107\107\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\050\051\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152\152\152\051"
|
||||||
|
"\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152"
|
||||||
|
"\152\152\152\152\152\152\152\152\107\107\107\107\107\152\051\051\051\051\107\107\107\107\107\107\107\107\107\107\107\051\051\051\051\051\051\050\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\152\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\152\152\152\152\152\152\152\152\152\152\107\107\051\051\051\051\051\051\051\051\051\051\051\051\050\051\051\050\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\107\107\051\051\051\051\051\051\051\051\051\051\051\051\050\051\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\000\124\164\164\162\162\162\047\122\162\162"
|
||||||
|
"\162\162\001\100\167\167\001\044\204\167\167",
|
||||||
|
2611, ZINT_ERROR_TOO_LONG, 1, ""
|
||||||
|
}, /* #300 (#7) Andre Maute */
|
||||||
|
/* 30*/ { BARCODE_PDF417, DATA_MODE, -1, -1,
|
||||||
|
"\060\060\060\060\060\060\060\060\060\060\060\162\162\162\162\162\162\162\162\162\162\047\122\162\000\000\167\211\206\001\000\047\153\153\153\153\153\067\066\164"
|
||||||
|
"\060\060\060\060\060\060\060\060\060\060\060\162\162\162\162\162\162\162\162\162\162\047\122\162\000\000\167\211\206\001\000\047\153\153\153\153\153\153\153\164"
|
||||||
|
"\164\164\164\164\164\124\164\164\164\164\164\164\164\164\164\164\164\164\164\164\060\060\060\060\060\060\060\060\060\060\060\162\162\162\162\162\162\162\162\162"
|
||||||
|
"\162\047\122\162\162\162\162\162\162\162\167\167\167\162\162\162\162\047\122\162\000\000\167\167\167\001\152\152\152\152\152\152\051\050\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\050\051\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\107\107\107\107\107\107\107\107"
|
||||||
|
"\107\107\162\107\107\107\107\107\107\107\107\107\107\107\107\107\107\051\051\051\051\051\051\051\051\051\051\051\051\050\051\051\050\051\051\152\152\152\152\152"
|
||||||
|
"\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152"
|
||||||
|
"\152\152\152\152\152\152\152\152\152\107\107\051\051\051\051\051\051\051\051\051\051\051\051\050\051\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050"
|
||||||
|
"\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\051\051\050\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152"
|
||||||
|
"\152\152\051\050\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152\152\152\152\152\152\152\152\152\107\107\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\050\051\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152"
|
||||||
|
"\152\152\152\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\152\152\051\051\051\051\051\051\051\051\051\051\051\051\051\107\107\051\051\051\051\051\051\051\051\051\051\051\051\050\051\051"
|
||||||
|
"\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152\152\152\152\152\152\152\152\152\107"
|
||||||
|
"\107\107\107\107\152\051\051\051\051\107\107\107\107\107\107\107\107\107\107\107\051\051\051\051\051\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152\152\152\152\152\152\152\152\152\107\107\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\050\051\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152\152\152\051\050\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152\152\152\152"
|
||||||
|
"\152\152\152\152\152\107\107\107\107\107\152\051\051\051\152\051\050\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\152\152\152\152\152\152\152\152\152\152\107\107\051\051\051\051\051\051\051\051\051\051\051\051\050\051\051\050\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152\051\051\051\051\051\051\051\051\051\051\051\051\051\050\051\051\050\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152\152\152\152\152\152\152\152\152\107\107\107\107\107\152"
|
||||||
|
"\051\051\051\051\107\107\107\107\107\107\107\107\107\107\107\051\051\051\051\051\051\050\051\051\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152"
|
||||||
|
"\152\152\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\152\152\152\152\152\152\152\152\152\152\107\107\051\051\051\051\051\051\051\051\051\051\051\051\050\051\051\050\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\051\050\051\107\107\107\107\107\107\107\107\107\107\107\051\051\051\051\051\051\050\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152\152\152\152\152\152"
|
||||||
|
"\152\152\152\107\107\051\051\051\051\051\051\051\051\051\051\050\051\051\051\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152\152\152\152\152\152\152\152\152\107\107\107\107\107\152\051"
|
||||||
|
"\051\051\051\107\107\107\107\107\107\107\107\107\107\107\051\051\051\051\051\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152\152\152\152\152\152\152\152\152\107\107\051\051\051\051\051\051\051\051\051\051\051\051\050\051\051"
|
||||||
|
"\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152\152\152\152\152\152\152\152\152\107"
|
||||||
|
"\107\107\107\107\152\051\051\051\051\107\107\107\107\107\107\107\107\107\107\107\051\051\051\051\051\051\050\051\051\051\051\051\051\051\051\051\051\051\050\152"
|
||||||
|
"\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152\152\152\152\152\152"
|
||||||
|
"\152\152\152\107\107\051\051\051\051\051\051\051\051\051\051\051\051\050\051\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\152\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\152\152\152\152\152\152\152\152\152\152\107\107\051\051\051\051\051\051\051\051\051\051\050\051\051\051\051\050\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\051\051\050\051\051\051\051\051\051\051\051\152\152\152\152\152\152\152\152\152\152\107\107\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\050\051\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152\152\152\051"
|
||||||
|
"\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152"
|
||||||
|
"\152\152\152\152\152\152\152\152\107\107\107\107\107\152\051\051\051\051\107\107\107\107\107\107\107\107\107\107\107\051\051\051\051\051\051\050\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\152\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\152\152\152\152\152\152\152\152\152\152\107\107\051\051\051\051\051\051\051\051\051\051\051\051\050\051\051\050\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\051\051\050\152\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\152\152\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\051\051\107\107\051\051\051\051\051\051\051\051\051\051\051\051\050\051\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051"
|
||||||
|
"\051\051\050\152\152\152\152\152\152\152\152\051\050\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\051\000\124\164\164\162\162\162\047\122\162\162"
|
||||||
|
"\162\162\001\100\167\167\001\044\204\167\167",
|
||||||
|
2611, ZINT_ERROR_TOO_LONG, 1, ""
|
||||||
|
}, /* #300 (#7) Andre Maute !FAST_MODE */
|
||||||
|
/* 31*/ { BARCODE_PDF417, DATA_MODE | FAST_MODE, -1, 242,
|
||||||
|
"\000\000\000\000\000\000\000\000\000\000\000\212\377\000\000\153\153\153\153\153\153\153\060\047\047\043\047\057\153\000\153\153\137\377\153\153\000\134\000\000"
|
||||||
|
"\000\153\153\343\153\153\153\060\047\047\043\047\057\157\153\153\153\000\162\162\162\162\162\162\377\053\377\377\377\134\134\134\142\134\162\162\377\377\377\167"
|
||||||
|
"\001\100\000\377\004\002\000\000\000\000\000\001\000\000\134\077\162\072\176\000\162\162\162\162\162\162\377\053\377\377\377\134\134\134\142\134\162\162\162\162"
|
||||||
|
"\077\162\072\176\000\162\362\377\377\377\377\377\377\134\134\134\142\134\162\362\162\162\364\072\176\000\162\162\162\162\162\174\174\377\134\134\134\162\142\362"
|
||||||
|
"\134\162\162\162\072\176\000\215\215\162\162\162\174\174\174\174\072\176\000\162\162\162\162\162\162\377\053\377\377\377\134\134\134\142\134\162\162\162\162\077"
|
||||||
|
"\162\072\176\000\162\162\377\377\377\377\377\377\134\134\134\162\162\072\176\000\162\162\162\162\162\174\174\377\134\134\134\162\142\362\377\134\134\126\142\134"
|
||||||
|
"\162\362\162\162\162\072\176\000\162\134\134\126\142\134\162\362\162\162\162\072\176\000\162\162\162\162\162\174\174\377\134\362\162\362\162\162\162\072\176\000"
|
||||||
|
"\162\362\162\162\162\174\174\377\134\134\134\162\142\362\134\162\162\162\072\176\000\000\044\162\162\162\162\174\174\377\134\362\162\162\162\134\134\134\142\162"
|
||||||
|
"\072\176\000\215\215\162\162\162\174\174\174\174\072\176\000\162\162\162\162\162\162\377\053\377\377\377\134\134\134\142\134\162\162\162\162\077\162\072\176\000"
|
||||||
|
"\162\162\377\377\377\377\377\377\134\134\134\142\134\162\153\153\153\153\153\153\142\134\162\162\162\162\077\162\072\176\000\162\162\377\377\377\377\377\377\134"
|
||||||
|
"\134\134\142\134\162\362\162\162\162\072\176\000\162\000\001\000\000\134\077\162\072\176\000\162\162\162\162\162\162\377\053\377\377\377\134\134\134\142\134\162"
|
||||||
|
"\162\162\162\077\162\072\176\000\162\362\377\377\377\377\377\377\134\134\134\142\134\162\362\162\162\364\072\176\000\162\162\162\162\162\174\174\377\134\134\134"
|
||||||
|
"\162\142\362\134\162\162\162\072\176\000\215\215\162\162\162\174\174\174\174\072\176\000\162\162\162\162\162\162\377\053\377\377\377\134\134\134\142\134\162\162"
|
||||||
|
"\162\162\077\162\162\162\162\377\053\377\377\377\134\134\134\142\134\162\162\162\162\077\162\072\176\000\162\162\377\377\377\377\377\377\134\134\134\162\162\072"
|
||||||
|
"\176\000\162\162\162\162\162\174\174\377\134\134\134\162\142\362\377\134\134\126\142\134\162\362\162\162\162\072\176\000\174\174\377\134\362\162\362\162\162\162"
|
||||||
|
"\072\176\000\162\362\162\162\162\174\174\377\134\134\134\162\142\362\134\162\162\162\072\176\000\162\362\162\162\162\134\134\134\142\134\162\162\162\162\077\173"
|
||||||
|
"\153\153\153\165\000\000\000\153\151\153\153\153\153\153\153\153\153\153\153\153\153\153\153\176\000\162\362\377\377\377\377\377\377\134\134\134\142\134\162\362"
|
||||||
|
"\162\162\162\072\176\162\377\053\377\377\377\134\134\134\142\134\162\162\162\162\077\162\072\176\000\162\162\377\377\377\377\377\377\134\134\134\142\134\162\362"
|
||||||
|
"\162\162\162\072\176\000\162\162\162\162\162\174\174\377\134\134\134\162\142\362\377\134\134\134\167\167\167\167\167\001\100\000\002\000\000\000\000\000\000\000"
|
||||||
|
"\000\153\153\067\000\000\000\153\153\300\000\000\000\000\000\000\000\000\000\000\000\000\212\377\000\000\153\153\153\153\153\153\153\060\047\047\043\047\057\153"
|
||||||
|
"\000\153\153\137\377\153\153\000\134\000\000\000\153\153\343\153\153\153\060\047\047\043\047\057\157\153\153\153\162\162\077\162\072\176\000\162\134\142\134\162"
|
||||||
|
"\162\162\162\077\162\072\176\000\162\162\162\162\162\162\377\053\377\377\377\134\134\134\142\134\162\162\377\377\377\167\001\100\000\377\004\002\000\000\000\000"
|
||||||
|
"\000\001\000\000\134\077\162\072\176\000\162\162\162\162\162\162\377\053\377\377\377\134\134\134\142\134\162\162\162\162\077\162\072\176\000\162\362\377\377\377"
|
||||||
|
"\377\377\377\134\134\134\142\134\162\362\162\162\364\072\176\000\162\162\162\162\162\174\174\377\134\134\134\162\142\362\134\162\162\162\072\176\000\215\215\162"
|
||||||
|
"\162\162\174\174\174\174\072\176\000\162\162\162\162\162\162\377\053\377\377\377\134\134\134\142\134\162\162\162\162\077\162\072\176\000\162\162\377\377\377\377"
|
||||||
|
"\377\377\134\134\134\162\162\072\176\000\162\162\162\162\162\174\174\377\134\134\134\162\142\362\377\134\134\126\142\134\162\362\162\162\162\072\176\000\162\162"
|
||||||
|
"\162\162\162\174\174\377\134\362\162\362\162\162\162\072\176\000\162\362\162\162\162\174\174\377\134\134\134\162\142\362\134\162\162\162\072\176\000\000\044\162"
|
||||||
|
"\162\162\162\174\174\377\134\362\162\162\162\134\134\134\142\162\072\176\000\215\215\162\162\162\174\174\174\174\072\176\000\162\162\162\162\162\162\377\053\377"
|
||||||
|
"\377\377\134\134\134\142\134\162\162\162\162\077\162\072\176\000\162\162\377\377\377\377\377\377\134\134\134\142\134\162\153\153\153\153\153\153\142\134\162\162"
|
||||||
|
"\162\162\077\162\072\176\000\162\162\377\377\377\377\377\377\134\134\134\142\134\162\362\162\162\162\072\176\000\162\000\001\000\000\134\077\162\072\176\000\162"
|
||||||
|
"\162\162\162\162\162\377\053\377\377\377\134\134\134\142\134\162\162\162\162\077\162\072\176\000\162\362\377\377\377\377\377\377\134\134\134\142\134\162\362\162"
|
||||||
|
"\162\364\072\176\000\162\162\162\162\162\174\174\377\134\134\134\162\142\362\134\162\162\162\072\176\000\215\215\162\162\162\174\174\174\174\072\176\000\162\162"
|
||||||
|
"\162\162\162\162\377\053\377\377\377\134\134\134\142\134\162\162\162\162\077\162\072\176\000\162\162\377\377\377\377\377\377\134\134\134\162\162\072\176\000\162"
|
||||||
|
"\162\162\162\162\174\174\377\134\134\134\142\134\162\362\162\162\162\072\176\000\162\162\162\162\162\174\174\377\134\362\162\172\162\134\134\134\142\162\072\162"
|
||||||
|
"\162\162\162\174\174\377\134\362\162\362\162\162\162\072\176\000\162\362\162\162\162\174\174\377\134\134\134\162\142\362\134\162\162\162\072\176\000\000\044\162"
|
||||||
|
"\162\162\162\174\174\377\134\362\162\162\162\134\134\134\142\162\072\176\000\215\215\162\162\162\174\174\174\174\072\176\000\162\162\162\162\162\162\377\053\377"
|
||||||
|
"\377\377\134\134\134\142\134\162\162\162\162\077\162\072\176\000\162\162\377\377\377\377\377\377\134\134\134\142\134\162\153\153\153\153\153\153\142\134\162\162"
|
||||||
|
"\162\162\077\162\072\176\000\162\162\377\377\377\377\377\377\134\134\134\142\134\162\362\162\162\162\072\176\000\162\000\001\000\000\134\077\162\072\176\000\162"
|
||||||
|
"\162\162\162\162\162\377\053\377\377\377\134\134\134\142\134\162\162\162\162\077\162\072\176\000\162\362\377\377\377\377\377\377\134\134\134\142\134\162\362\162"
|
||||||
|
"\162\364\072\176\000\162\162\162\162\162\174\174\377\134\134\134\162\142\362\134\162\162\162\072\176\000\215\215\162\162\162\174\174\174\174\072\176\000\162\162"
|
||||||
|
"\162\162\162\162\377\053\377\377\377\134\134\134\142\134\162\162\162\162\077\162\162\162\162\377\053\377\377\377\134\134\134\142\134\162\162\162\162\077\162\072"
|
||||||
|
"\176\000\162\162\377\377\377\377\377\377\134\134\134\162\162\072\176\000\162\162\162\162\162\174\174\377\134\134\134\162\142\362\377\134\134\126\142\134\162\362"
|
||||||
|
"\162\162\162\072\176\000\174\174\377\134\362\162\362\162\162\162\072\176\000\162\362\162\162\162\174\174\377\134\134\134\162\142\362\134\162\162\162\072\176\000"
|
||||||
|
"\162\362\162\162\162\134\134\134\142\134\162\162\162\162\077\173\153\153\153\165\000\000\000\153\151\153\153\153\153\153\153\153\153\153\153\153\153\153\153\176"
|
||||||
|
"\000\162\362\377\377\377\377\377\377\134\134\134\142\134\162\362\162\162\162\072\176\162\377\053\377\377\377\134\134\134\142\134\162\162\162\162\077\162\072\176"
|
||||||
|
"\000\162\162\377\377\377\377\377\377\134\134\134\142\134\162\362\162\162\162\072\176\000\162\162\162\162\162\174\174\377\134\134\134\162\142\362\377\134\134\134"
|
||||||
|
"\167\167\167\167\167\001\100\000\002\000\000\000\000\000\000\000\000\153\153\067\000\000\000\153\153\300\000\000\000\000\000\000\000\000\000\000\000\000\212\377"
|
||||||
|
"\000\000\153\153\153\153\153\153\153\060\047\047\043\047\057\153\000\153\153\137\377\153\153\000\134\000\000\000\153\153\343\153\153\153\060\047\047\043\047\057"
|
||||||
|
"\157\153\153\153\162\162\077\162\072\176\000\162\134\142\134\162\162\162\162\077\162\072\176\000\162\162\162\162\162\162\377\053\377\377\377\134\134\134\142\134"
|
||||||
|
"\162\162\377\377\377\167\001\100\000\377\004\002\000\000\000\000\000\001\000\000\134\077\162\072\176\000\162\162\162\162\162\162\377\053\377\377\377\134\134\134"
|
||||||
|
"\142\134\162\162\162\162\077\162\072\176\000\162\362\377\377\377\377\377\377\134\134\134\142\134\162\362\162\162\364\072\176\000\162\162\162\162\162\174\174\377"
|
||||||
|
"\134\134\134\162\142\362\134\162\162\162\072\176\000\215\215\162\162\162\174\174\174\174\072\176\000\162\162\162\162\162\162\377\053\377\377\377\134\134\134\142"
|
||||||
|
"\134\162\162\162\162\077\162\072\176\000\162\162\377\377\377\377\377\377\134\134\134\162\162\072\176\000\162\162\162\162\162\174\174\377\134\134\134\162\142\362"
|
||||||
|
"\377\134\134\126\142\134\162\362\162\162\162\072\176\000\162\162\162\162\162\174\174\377\134\362\162\362\162\162\162\072\176\000\162\362\162\162\162\174\174\377"
|
||||||
|
"\134\134\134\162\142\362\134\162\162\162\072\176\000\000\044\162\162\162\162\174\174\377\134\362\162\162\162\134\134\134\142\162\072\176\000\215\215\162\162\162"
|
||||||
|
"\174\174\174\174\072\176\000\162\162\162\162\162\162\377\053\377\377\377\134\134\134\142\134\162\162\162\162\077\162\072\176\000\162\162\377\377\377\377\377\377"
|
||||||
|
"\134\134\134\142\134\162\153\153\153\153\153\153\142\134\162\162\162\162\077\162\072\176\000\162\162\377\377\377\377\377\377\134\134\134\142\134\162\362\162\162"
|
||||||
|
"\162\072\176\000\162\000\001\000\000\134\077\162\072\176\000\162\162\162\162\162\162\377\053\377\377\377\134\134\134\142\134\162\162\162\162\077\162\072\176\000"
|
||||||
|
"\162\362\377\377\377\377\377\377\134\134\134\142\134\162\362\162\162\364\072\176\000\162\162\162\162\162\174\174\377\134\134\134\162\142\362\134\162\162\162\072"
|
||||||
|
"\176\000\215\215\162\162\162\174\174\174\174\072\176\000\162\162\162\162\162\162\377\053\377\377\377\134\134\134\142\134\162\162\162\162\077\162\072\176\000\162"
|
||||||
|
"\162\377\377\377\377\377\377\134\134\134\162\162\072\176\000\162\162\162\162\162\174\174\377\134\134\134\142\134\162\362\162\162\162\072\176\000\162\162\162\162"
|
||||||
|
"\162\174\174\377\134\362\162\172\162\134\134\134\142\162\072\176\000\215\215\162\162\162\174\174\174\171\072\176\000\162\162\162\162\162\162\377\053\377\377\377"
|
||||||
|
"\134\134\134\142\134\162\162\162\162\077\162\072\176\000\162\162\377\377\377\377\377\377\134\134\134\142\134\162\362\162\162\162\072\176\000\162\362\162\162\162"
|
||||||
|
"\174\174\377\134\134\134\162\142\362\134\162\162\162\072\176\000\162\362\162\162\162\134\134\142\134\162\362\162\162\162\072\176\000\044\162\162\162\162\174\174"
|
||||||
|
"\377\134\362\162\162\162\134\134\134\142\162\072\176\000\215\215\162\162\162\174\174\174\174\072\176\000\162\162\162\162\162\162\377\053\377\377\377\134\134\134"
|
||||||
|
"\142\134\162\162\162\162\077\162\072\176\000\162\162\377\377\377\377\377\377\134\134\134\142\134\162\362\162\162\162\072\176\000\162\162\162\162\162\174\174\377"
|
||||||
|
"\134\134\134\162\142\362\134\162\162\162\072\176\000\215\215\162\162\162\174\174\174\174\134\134\134\142\134\000\153\153\153\153\153\153\153\062\047\047\043\047"
|
||||||
|
"\057\262\054\377\134\134\142\153\330\153",
|
||||||
|
2690, ZINT_ERROR_TOO_LONG, 1, ""
|
||||||
|
}, /* #300 (#10) Andre Maute */
|
||||||
};
|
};
|
||||||
int data_size = ARRAY_SIZE(data);
|
int data_size = ARRAY_SIZE(data);
|
||||||
int i, length, ret;
|
int i, length, ret;
|
||||||
struct zint_symbol *symbol = NULL;
|
struct zint_symbol *symbol = NULL;
|
||||||
|
|
||||||
|
char escaped[16834];
|
||||||
|
char cmp_buf[32768];
|
||||||
|
char cmp_msg[32768];
|
||||||
|
|
||||||
|
int do_bwipp = (debug & ZINT_DEBUG_TEST_BWIPP) && testUtilHaveGhostscript(); /* Only do BWIPP test if asked, too slow otherwise */
|
||||||
|
int do_zxingcpp = (debug & ZINT_DEBUG_TEST_ZXINGCPP) && testUtilHaveZXingCPPDecoder(); /* Only do ZXing-C++ test if asked, too slow otherwise */
|
||||||
|
|
||||||
testStartSymbol("test_fuzz", &symbol);
|
testStartSymbol("test_fuzz", &symbol);
|
||||||
|
|
||||||
for (i = 0; i < data_size; i++) {
|
for (i = 0; i < data_size; i++) {
|
||||||
@ -5339,36 +5587,54 @@ static void test_fuzz(const testCtx *const p_ctx) {
|
|||||||
symbol = ZBarcode_Create();
|
symbol = ZBarcode_Create();
|
||||||
assert_nonnull(symbol, "Symbol not created\n");
|
assert_nonnull(symbol, "Symbol not created\n");
|
||||||
|
|
||||||
symbol->symbology = data[i].symbology;
|
length = testUtilSetSymbol(symbol, data[i].symbology, data[i].input_mode, -1 /*eci*/, data[i].option_1, data[i].option_2, -1, -1 /*output_options*/, data[i].data, data[i].length, debug);
|
||||||
if (data[i].input_mode != -1) {
|
|
||||||
symbol->input_mode = data[i].input_mode;
|
|
||||||
}
|
|
||||||
if (data[i].option_1 != -1) {
|
|
||||||
symbol->option_1 = data[i].option_1;
|
|
||||||
}
|
|
||||||
symbol->debug |= debug;
|
|
||||||
|
|
||||||
length = data[i].length;
|
|
||||||
if (length == -1) {
|
|
||||||
length = (int) strlen(data[i].data);
|
|
||||||
}
|
|
||||||
|
|
||||||
ret = ZBarcode_Encode(symbol, (unsigned char *) data[i].data, length);
|
ret = ZBarcode_Encode(symbol, (unsigned char *) data[i].data, length);
|
||||||
assert_equal(ret, data[i].ret, "i:%d ZBarcode_Encode ret %d != %d (%s)\n", i, ret, data[i].ret, symbol->errtxt);
|
assert_equal(ret, data[i].ret, "i:%d ZBarcode_Encode ret %d != %d (%s)\n", i, ret, data[i].ret, symbol->errtxt);
|
||||||
|
|
||||||
|
if (ret < ZINT_ERROR) {
|
||||||
|
|
||||||
|
if (do_bwipp && testUtilCanBwipp(i, symbol, data[i].option_1, data[i].option_2, -1, debug)) {
|
||||||
|
if (!data[i].bwipp_cmp) {
|
||||||
|
if (debug & ZINT_DEBUG_TEST_PRINT) printf("i:%d %s not BWIPP compatible (%s)\n", i, testUtilBarcodeName(symbol->symbology), data[i].comment);
|
||||||
|
} else {
|
||||||
|
char modules_dump[32768];
|
||||||
|
assert_notequal(testUtilModulesDump(symbol, modules_dump, sizeof(modules_dump)), -1, "i:%d testUtilModulesDump == -1\n", i);
|
||||||
|
ret = testUtilBwipp(i, symbol, data[i].option_1, data[i].option_2, -1, data[i].data, length, NULL, cmp_buf, sizeof(cmp_buf), NULL);
|
||||||
|
assert_zero(ret, "i:%d %s testUtilBwipp ret %d != 0\n", i, testUtilBarcodeName(symbol->symbology), ret);
|
||||||
|
|
||||||
|
ret = testUtilBwippCmp(symbol, cmp_msg, cmp_buf, modules_dump);
|
||||||
|
assert_zero(ret, "i:%d %s testUtilBwippCmp %d != 0 %s\n actual: %s\nexpected: %s\n",
|
||||||
|
i, testUtilBarcodeName(symbol->symbology), ret, cmp_msg, cmp_buf, modules_dump);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (do_zxingcpp && testUtilCanZXingCPP(i, symbol, data[i].data, length, debug)) {
|
||||||
|
int cmp_len, ret_len;
|
||||||
|
char modules_dump[32768];
|
||||||
|
assert_notequal(testUtilModulesDump(symbol, modules_dump, sizeof(modules_dump)), -1, "i:%d testUtilModulesDump == -1\n", i);
|
||||||
|
ret = testUtilZXingCPP(i, symbol, data[i].data, length, modules_dump, cmp_buf, sizeof(cmp_buf), &cmp_len);
|
||||||
|
assert_zero(ret, "i:%d %s testUtilZXingCPP ret %d != 0\n", i, testUtilBarcodeName(symbol->symbology), ret);
|
||||||
|
|
||||||
|
ret = testUtilZXingCPPCmp(symbol, cmp_msg, cmp_buf, cmp_len, data[i].data, length, NULL /*primary*/, escaped, &ret_len);
|
||||||
|
assert_zero(ret, "i:%d %s testUtilZXingCPPCmp %d != 0 %s\n actual: %.*s\nexpected: %.*s\n",
|
||||||
|
i, testUtilBarcodeName(symbol->symbology), ret, cmp_msg, cmp_len, cmp_buf, ret_len, escaped);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
ZBarcode_Delete(symbol);
|
ZBarcode_Delete(symbol);
|
||||||
}
|
}
|
||||||
|
|
||||||
testFinish();
|
testFinish();
|
||||||
}
|
}
|
||||||
|
|
||||||
INTERNAL void pdf_numbprocess_test(int *chainemc, int *p_mclength, const unsigned char chaine[], const int start,
|
|
||||||
|
INTERNAL void pdf_numbprocess_test(short *chainemc, int *p_mclength, const unsigned char chaine[], const int start,
|
||||||
const int length);
|
const int length);
|
||||||
|
|
||||||
#include "../large.h"
|
#include "../large.h"
|
||||||
|
|
||||||
/* Max codewords 12 */
|
/* Max codewords 12 */
|
||||||
static int annex_d_decode_dump(int chainemc[], int mclength, unsigned char *chaine, int length, char *buf1, char *buf2) {
|
static int annex_d_decode_dump(short chainemc[], int mclength, unsigned char *chaine, int length, char *buf1, char *buf2) {
|
||||||
static const large_uint pow900s[] = {
|
static const large_uint pow900s[] = {
|
||||||
{ 0x1, 0 }, /*1*/
|
{ 0x1, 0 }, /*1*/
|
||||||
{ 0x384, 0 }, /*900*/
|
{ 0x384, 0 }, /*900*/
|
||||||
@ -5494,7 +5760,7 @@ static void test_numbprocess(const testCtx *const p_ctx) {
|
|||||||
int data_size = ARRAY_SIZE(data);
|
int data_size = ARRAY_SIZE(data);
|
||||||
int i, length;
|
int i, length;
|
||||||
|
|
||||||
int chainemc[32];
|
short chainemc[32];
|
||||||
int mclength;
|
int mclength;
|
||||||
|
|
||||||
testStart("test_numbprocess");
|
testStart("test_numbprocess");
|
||||||
|
@ -22,6 +22,7 @@ run_bwipp_test "test_bc412"
|
|||||||
run_bwipp_test "test_channel" "encode"
|
run_bwipp_test "test_channel" "encode"
|
||||||
run_bwipp_test "test_codablock" "input"
|
run_bwipp_test "test_codablock" "input"
|
||||||
run_bwipp_test "test_codablock" "encode"
|
run_bwipp_test "test_codablock" "encode"
|
||||||
|
run_bwipp_test "test_codablock" "fuzz"
|
||||||
run_bwipp_test "test_code" "encode"
|
run_bwipp_test "test_code" "encode"
|
||||||
run_bwipp_test "test_code1" "encode"
|
run_bwipp_test "test_code1" "encode"
|
||||||
run_bwipp_test "test_code1" "encode_segs"
|
run_bwipp_test "test_code1" "encode_segs"
|
||||||
@ -51,6 +52,7 @@ run_bwipp_test "test_medical" "encode"
|
|||||||
run_bwipp_test "test_pdf417" "input"
|
run_bwipp_test "test_pdf417" "input"
|
||||||
run_bwipp_test "test_pdf417" "encode"
|
run_bwipp_test "test_pdf417" "encode"
|
||||||
run_bwipp_test "test_pdf417" "encode_segs"
|
run_bwipp_test "test_pdf417" "encode_segs"
|
||||||
|
run_bwipp_test "test_pdf417" "fuzz"
|
||||||
run_bwipp_test "test_plessey" "encode"
|
run_bwipp_test "test_plessey" "encode"
|
||||||
run_bwipp_test "test_postal" "input"
|
run_bwipp_test "test_postal" "input"
|
||||||
run_bwipp_test "test_postal" "encode"
|
run_bwipp_test "test_postal" "encode"
|
||||||
|
@ -20,6 +20,7 @@ run_zxingcpp_test "test_aztec" "encode_segs"
|
|||||||
run_zxingcpp_test "test_aztec" "fuzz"
|
run_zxingcpp_test "test_aztec" "fuzz"
|
||||||
run_zxingcpp_test "test_codablock" "input"
|
run_zxingcpp_test "test_codablock" "input"
|
||||||
run_zxingcpp_test "test_codablock" "encode"
|
run_zxingcpp_test "test_codablock" "encode"
|
||||||
|
run_zxingcpp_test "test_codablock" "fuzz"
|
||||||
run_zxingcpp_test "test_code" "encode"
|
run_zxingcpp_test "test_code" "encode"
|
||||||
run_zxingcpp_test "test_code128" "input"
|
run_zxingcpp_test "test_code128" "input"
|
||||||
run_zxingcpp_test "test_code128" "encode"
|
run_zxingcpp_test "test_code128" "encode"
|
||||||
@ -43,6 +44,7 @@ run_zxingcpp_test "test_pdf417" "reader_init"
|
|||||||
run_zxingcpp_test "test_pdf417" "input"
|
run_zxingcpp_test "test_pdf417" "input"
|
||||||
run_zxingcpp_test "test_pdf417" "encode"
|
run_zxingcpp_test "test_pdf417" "encode"
|
||||||
run_zxingcpp_test "test_pdf417" "encode_segs"
|
run_zxingcpp_test "test_pdf417" "encode_segs"
|
||||||
|
run_zxingcpp_test "test_pdf417" "fuzz"
|
||||||
run_zxingcpp_test "test_qr"
|
run_zxingcpp_test "test_qr"
|
||||||
run_zxingcpp_test "test_rss" "binary_div_modulo_divisor"
|
run_zxingcpp_test "test_rss" "binary_div_modulo_divisor"
|
||||||
run_zxingcpp_test "test_rss" "examples"
|
run_zxingcpp_test "test_rss" "examples"
|
||||||
|
Loading…
Reference in New Issue
Block a user