FreeCalypso > hg > themwi-system-sw
view libnumdb/check_nanp.c @ 152:7176dc850d7a
sip-in hold/retr error handling: simply send BYE
Because we know that the SIP state is CONNECTED at the time of any
such error event, we can call initiate_bye() instead of disconnect_sip(),
and thereby get rid of struct gsm_mncc_cause which will never be used
in this scenario anyway.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Tue, 11 Oct 2022 16:11:21 -0800 |
parents | 960ffce6c542 |
children |
line wrap: on
line source
/* * The library function implemented in this module consults ThemWi number db * to see if a given NANP number is owned by us or not. */ #include <stdio.h> #include <stdint.h> #include <stdlib.h> #include "../include/number_db_file.h" extern struct numdb_file_hdr numdb_hdr; extern uint64_t *numdb_owned_numbers; static int compare_owned_num(p1, p2) uint64_t *p1, *p2; { if (*p1 < *p2) return(-1); else if (*p1 > *p2) return(1); else return(0); } is_nanp_locally_owned(numstr) char *numstr; { uint64_t key, *res; if (!numdb_owned_numbers || !numdb_hdr.owned_number_count) return(0); key = strtoull(numstr, 0, 10); res = bsearch(&key, numdb_owned_numbers, numdb_hdr.owned_number_count, sizeof(uint64_t), compare_owned_num); if (res) return(1); else return(0); }