mirror of https://github.com/wb2osz/direwolf.git
"decode_aprs" utility should not get so upset over q-constructs.
This commit is contained in:
parent
a6f0ad5af7
commit
ee2805a307
14
ax25_pad.c
14
ax25_pad.c
|
@ -755,8 +755,8 @@ int ax25_parse_addr (int position, char *in_addr, int strict, char *out_addr, in
|
||||||
if (strict && strlen(in_addr) >= 2 && strncmp(in_addr, "qA", 2) == 0) {
|
if (strict && strlen(in_addr) >= 2 && strncmp(in_addr, "qA", 2) == 0) {
|
||||||
|
|
||||||
text_color_set(DW_COLOR_ERROR);
|
text_color_set(DW_COLOR_ERROR);
|
||||||
dw_printf ("%sAddress \"%s\" is a \"q-construct\" used for communicating\n", position_name[position], in_addr);
|
dw_printf ("%sAddress \"%s\" is a \"q-construct\" used for communicating with\n", position_name[position], in_addr);
|
||||||
dw_printf ("with APRS Internet Servers. It was not expected here.\n");
|
dw_printf ("APRS Internet Servers. It should never appear when going over the radio.\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
//dw_printf ("ax25_parse_addr in: %s\n", in_addr);
|
//dw_printf ("ax25_parse_addr in: %s\n", in_addr);
|
||||||
|
@ -779,11 +779,21 @@ int ax25_parse_addr (int position, char *in_addr, int strict, char *out_addr, in
|
||||||
|
|
||||||
out_addr[i++] = *p;
|
out_addr[i++] = *p;
|
||||||
out_addr[i] = '\0';
|
out_addr[i] = '\0';
|
||||||
|
|
||||||
|
#if DECAMAIN // Hack when running in decode_aprs utility.
|
||||||
|
// Exempt the "qA..." case because it was already mentioned.
|
||||||
|
|
||||||
|
if (strict && islower(*p) && strncmp(in_addr, "qA", 2) != 0) {
|
||||||
|
text_color_set(DW_COLOR_ERROR);
|
||||||
|
dw_printf ("%sAddress has lower case letters. \"%s\" must be all upper case.\n", position_name[position], in_addr);
|
||||||
|
}
|
||||||
|
#else
|
||||||
if (strict && islower(*p)) {
|
if (strict && islower(*p)) {
|
||||||
text_color_set(DW_COLOR_ERROR);
|
text_color_set(DW_COLOR_ERROR);
|
||||||
dw_printf ("%sAddress has lower case letters. \"%s\" must be all upper case.\n", position_name[position], in_addr);
|
dw_printf ("%sAddress has lower case letters. \"%s\" must be all upper case.\n", position_name[position], in_addr);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
j = 0;
|
j = 0;
|
||||||
|
|
|
@ -4891,7 +4891,9 @@ int main (int argc, char *argv[])
|
||||||
|
|
||||||
decode_aprs_print (&A); // Now print it in human readable format.
|
decode_aprs_print (&A); // Now print it in human readable format.
|
||||||
|
|
||||||
(void)ax25_check_addresses(pp); // Errors for invalid addresses.
|
// This seems to be redundant because we used strict option
|
||||||
|
// when parsing the monitoring format text.
|
||||||
|
//(void)ax25_check_addresses(pp); // Errors for invalid addresses.
|
||||||
|
|
||||||
// Future? Add -d option to include hex dump and maybe KISS?
|
// Future? Add -d option to include hex dump and maybe KISS?
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue