1
0
mirror of https://git.code.sf.net/p/zint/code synced 2025-12-18 02:17:06 +00:00

GS1: update to latest gs1-syntax-dictionary (new AIs 717

(GSCN 25-199) and 8040-3 (GSCN 25-047)
manual: fix grammar "chose" -> "choose"
win32/README: add missing "of"
pandoc: update to latest
bwipp: update to latest
testcommon: allow for GS1PARENS_MODE now implying ESCAPE_MODE;
  allow for `input_mode` option `GS1SYNTAXENGINE_MODE`
CI: freebsd: use latest version 1
This commit is contained in:
gitlost
2025-12-09 16:43:57 +00:00
parent f0c7248b62
commit 2ac0e508b8
14 changed files with 315 additions and 270 deletions

View File

@@ -653,6 +653,28 @@ static int gs1_z__90(const unsigned char *data,
&& gs1_cset64(data, data_len, 0, 1, 90, p_err_no, p_err_posn, err_msg);
}
/* N15 (Used by IMEI, IMEI2) */
static int gs1_n15(const unsigned char *data,
const int data_len, int *p_err_no, int *p_err_posn, char err_msg[50]) {
return data_len == 15
&& gs1_numeric(data, data_len, 0, 15, 15, p_err_no, p_err_posn, err_msg);
}
/* N32 (Used by ESIM) */
static int gs1_n32(const unsigned char *data,
const int data_len, int *p_err_no, int *p_err_posn, char err_msg[50]) {
return data_len == 32
&& gs1_numeric(data, data_len, 0, 32, 32, p_err_no, p_err_posn, err_msg);
}
/* N18 [N..2] (Used by PSIM) */
static int gs1_n18__n__2_(const unsigned char *data,
const int data_len, int *p_err_no, int *p_err_posn, char err_msg[50]) {
return data_len >= 18 && data_len <= 20
&& gs1_numeric(data, data_len, 0, 18, 18, p_err_no, p_err_posn, err_msg)
&& gs1_numeric(data, data_len, 18, 0, 2, p_err_no, p_err_posn, err_msg);
}
/* X..70,couponcode */
static int gs1_x__70_couponcode(const unsigned char *data,
const int data_len, int *p_err_no, int *p_err_posn, char err_msg[50]) {
@@ -773,7 +795,7 @@ static int gs1_lint(const int ai, const unsigned char *data, const int data_len,
} else if (ai < 800) {
if (ai >= 710 && ai <= 716) {
if (ai >= 710 && ai <= 717) {
return gs1_x__20(data, data_len, p_err_no, p_err_posn, err_msg);
}
@@ -1016,6 +1038,15 @@ static int gs1_lint(const int ai, const unsigned char *data, const int data_len,
if (ai == 8030) {
return gs1_z__90(data, data_len, p_err_no, p_err_posn, err_msg);
}
if (ai == 8040 || ai == 8041) {
return gs1_n15(data, data_len, p_err_no, p_err_posn, err_msg);
}
if (ai == 8042) {
return gs1_n32(data, data_len, p_err_no, p_err_posn, err_msg);
}
if (ai == 8043) {
return gs1_n18__n__2_(data, data_len, p_err_no, p_err_posn, err_msg);
}
} else if (ai < 8200) {