FreeCalypso > hg > fc-sim-tools
view utils/sim-iccid-mkrange.c @ 64:dba24129027e
doc/ADM-PIN-numbering article written
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Tue, 23 Mar 2021 23:30:00 +0000 |
parents | 9c9f6adbaedb |
children |
line wrap: on
line source
/* * This program is a special utility for generating lists of ICCIDs * following the 18+1 convention. The first argument is the starting * ICCID without Luhn (entered as shorthand, expanded to 18 digits), * the second argument is the number of consecutive ICCIDs to generate. * The output is a list of full 19-digit ICCIDs. */ #include <sys/types.h> #include <stdio.h> #include <stdlib.h> main(argc, argv) char **argv; { u_char digits[19]; char asc[20]; unsigned total, n; int rc; if (argc != 3) { fprintf(stderr, "usage: %s start-iccid num-cards\n", argv[0]); exit(1); } rc = parse_decimal_shorthand(argv[1], digits, 18); if (rc < 0) exit(1); /* error msg already printed */ total = atoi(argv[2]); for (n = 0; n < total; n++) { digits[18] = compute_iccid_luhn(digits); nibbles_to_ascii(digits, 19, asc); puts(asc); decimal_string_increment(digits, 18); } exit(0); }