annotate utils/themwi-short-dial.c @ 15:a24f0794ab4d default tip

INSTALL: document the new way
author Mychaela Falconia <falcon@freecalypso.org>
date Tue, 21 May 2024 00:29:21 +0000
parents 0b4d54289ef3
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
8
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
1 /*
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
2 * This command line utility looks up a 4-digit short dialing code
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
3 * in ThemWi number database and reports its status: not defined,
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
4 * ITN or mapping to NANP.
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
5 */
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
6
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
7 #include <stdio.h>
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
8 #include <stdint.h>
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
9 #include <stdlib.h>
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
10 #include <syslog.h>
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
11
9
0b4d54289ef3 themwi-short-dial compiles in the new model
Mychaela Falconia <falcon@freecalypso.org>
parents: 8
diff changeset
12 #include <themwi/nanp/number_db_v2.h>
0b4d54289ef3 themwi-short-dial compiles in the new model
Mychaela Falconia <falcon@freecalypso.org>
parents: 8
diff changeset
13 #include <themwi/nanp/number_lookup.h>
0b4d54289ef3 themwi-short-dial compiles in the new model
Mychaela Falconia <falcon@freecalypso.org>
parents: 8
diff changeset
14 #include <themwi/nanp/number_utils.h>
0b4d54289ef3 themwi-short-dial compiles in the new model
Mychaela Falconia <falcon@freecalypso.org>
parents: 8
diff changeset
15
0b4d54289ef3 themwi-short-dial compiles in the new model
Mychaela Falconia <falcon@freecalypso.org>
parents: 8
diff changeset
16 int main(int argc, char **argv)
8
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
17 {
9
0b4d54289ef3 themwi-short-dial compiles in the new model
Mychaela Falconia <falcon@freecalypso.org>
parents: 8
diff changeset
18 const struct short_number_rec *rec;
8
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
19
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
20 if (argc != 2) {
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
21 usage: fprintf(stderr, "usage: %s 4-digit-number\n", argv[0]);
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
22 exit(1);
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
23 }
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
24 if (grok_number_string(argv[1], 0) != 4)
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
25 goto usage;
9
0b4d54289ef3 themwi-short-dial compiles in the new model
Mychaela Falconia <falcon@freecalypso.org>
parents: 8
diff changeset
26 openlog("themwi-short-dial", LOG_PERROR, LOG_USER);
8
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
27 if (read_number_db() < 0) {
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
28 fprintf(stderr, "error reading number database\n");
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
29 exit(1);
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
30 }
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
31 rec = numdb_lookup_short(argv[1]);
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
32 if (!rec) {
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
33 printf("Short number %s is not defined\n", argv[1]);
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
34 exit(0);
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
35 }
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
36 switch (rec->short_num_type) {
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
37 case SHORT_NUM_TYPE_ABBREV:
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
38 printf("Short number %s is abbrev for +1-%03u-%03u-%04u\n",
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
39 argv[1], rec->fullnum_prefix[0], rec->fullnum_prefix[1],
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
40 rec->short_num);
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
41 break;
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
42 case SHORT_NUM_TYPE_ITN:
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
43 printf("Short number %s is an ITN\n", argv[1]);
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
44 break;
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
45 case SHORT_NUM_TYPE_TEST_SINK:
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
46 printf("Short number %s is a test sink\n", argv[1]);
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
47 break;
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
48 default:
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
49 printf("Short number %s has unknown type 0x%02X\n", argv[1],
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
50 rec->short_num_type);
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
51 }
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
52 exit(0);
db3c657efafa themwi-short-dial: old source as starting point
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
53 }