osmo-hlr/src
Neels Hofmeyr 76328bdc91 D-GSM 3/n: implement roaming by mslookup in osmo-hlr
Add mslookup client to find remote home HLRs of unknown IMSIs, and
proxy/forward GSUP for those to the right remote HLR instances.

Add remote_hlr.c to manage one GSUP client per remote HLR GSUP address.

Add proxy.c to keep state about remotely handled IMSIs (remote GSUP address,
MSISDN, and probably more in future patches).  The mslookup_server that
determines whether a given MSISDN is attached locally now also needs to look in
the proxy record: it is always the osmo-hlr immediately peering for the MSC
that should respond to mslookup service address queries like SIP and SMPP.
(Only gsup.hlr service is always answered by the home HLR.)

Add dgsm.c to set up an mdns mslookup client, ask for IMSI homes, and to decide
which GSUP is handled locally and which needs to go to a remote HLR.

Add full VTY config and VTY tests.

For a detailed overview of the D-GSM and mslookup related files, please see the
elaborate comment at the top of mslookup.c (already added in an earlier patch).

Change-Id: I2fe453553c90e6ee527ed13a13089900efd488aa
2020-04-30 19:22:24 +02:00
..
gsupclient gsup client: add up_down_cb(), add osmo_gsup_client_create3() 2020-04-30 19:21:18 +02:00
mslookup mdns_rfc.c: fix possible access of uninit. mem 2020-01-31 15:27:50 +00:00
Makefile.am D-GSM 3/n: implement roaming by mslookup in osmo-hlr 2020-04-30 19:22:24 +02:00
auc.c move headers to include/osmocom/hlr 2019-11-20 01:25:39 +01:00
ctrl.c move headers to include/osmocom/hlr 2019-11-20 01:25:39 +01:00
db.c db v5: prep for D-GSM: add vlr_via_proxy and sgsn_via_proxy 2020-04-30 19:22:24 +02:00
db_auc.c AUC: Add support for setting the AMF separation bit to '1' for EUTRAN 2019-12-01 16:09:16 +01:00
db_debug.c src/db.c: integrate SQLite3 with talloc allocator 2019-07-30 17:15:17 +00:00
db_hlr.c db v5: prep for D-GSM: add vlr_via_proxy and sgsn_via_proxy 2020-04-30 19:22:24 +02:00
db_sql2c.sed Rename db_bootstrap.sed to db_sql2c.sed 2018-12-04 14:13:47 +01:00
dbd_decode_binary.c add osmo-hlr-db-tool, program to migrate from osmo-nitb db 2017-10-28 20:34:01 +02:00
dgsm.c D-GSM 3/n: implement roaming by mslookup in osmo-hlr 2020-04-30 19:22:24 +02:00
dgsm_vty.c D-GSM 3/n: implement roaming by mslookup in osmo-hlr 2020-04-30 19:22:24 +02:00
gsup_router.c 1/2: refactor: add and use lu_fsm, osmo_gsup_req, osmo_ipa_name 2020-04-30 19:16:09 +02:00
gsup_send.c 1/2: refactor: add and use lu_fsm, osmo_gsup_req, osmo_ipa_name 2020-04-30 19:16:09 +02:00
gsup_server.c D-GSM 3/n: implement roaming by mslookup in osmo-hlr 2020-04-30 19:22:24 +02:00
hlr.c D-GSM 3/n: implement roaming by mslookup in osmo-hlr 2020-04-30 19:22:24 +02:00
hlr_db_tool.c move headers to include/osmocom/hlr 2019-11-20 01:25:39 +01:00
hlr_ussd.c 2/2: wrap ipa_name in osmo_cni_peer_id with type enum and union 2020-04-30 19:19:17 +02:00
hlr_vty.c D-GSM 3/n: implement roaming by mslookup in osmo-hlr 2020-04-30 19:22:24 +02:00
hlr_vty_subscr.c db v4: add column last_lu_seen_ps 2019-11-27 03:19:06 +01:00
logging.c D-GSM 3/n: implement roaming by mslookup in osmo-hlr 2020-04-30 19:22:24 +02:00
lu_fsm.c 2/2: wrap ipa_name in osmo_cni_peer_id with type enum and union 2020-04-30 19:19:17 +02:00
mslookup_server.c D-GSM 3/n: implement roaming by mslookup in osmo-hlr 2020-04-30 19:22:24 +02:00
mslookup_server_mdns.c D-GSM 2/n: implement mDNS method of mslookup server 2020-04-30 19:22:24 +02:00
osmo-euse-demo.c move headers to include/osmocom/hlr 2019-11-20 01:25:39 +01:00
populate_hlr_db.pl populate_hlr_db.pl: Script to generate a HLR database 2016-05-03 18:51:40 +02:00
proxy.c D-GSM 3/n: implement roaming by mslookup in osmo-hlr 2020-04-30 19:22:24 +02:00
rand_fake.c initial import of osmo-gsup-hlr code so far 2016-04-28 07:18:49 +02:00
rand_urandom.c initial import of osmo-gsup-hlr code so far 2016-04-28 07:18:49 +02:00
remote_hlr.c D-GSM 3/n: implement roaming by mslookup in osmo-hlr 2020-04-30 19:22:24 +02:00
timestamp.c D-GSM 1/n: add mslookup server in osmo-hlr 2020-04-30 19:22:24 +02:00