Hi Sylvain,
On Thu, Jun 10, 2010 at 12:37:28PM +0200, Sylvain Munaut wrote:
I'll test my updated code tonight and push it to my encryption if it doesn't break.
First off, I tested the code in sylvain/encryption (which is mostly some minor db fixes from me and the code you fw-ported) and it works fine.
Great. As zecke can probably consider possible BSC/MSC merge fallout from all of this, I will lean back and let him decide if/how to merge your encryption branch. Zecke: hope this is fine with you.
(you also need my pending branch of libosmocore as I put the utility classmark2 a5 testing func there)
ok, i have merged this already.
What I would do (and imho helps the bsc/msc split) is create a 'msc_paging_request' somewhere that would wrap the paging. The flow would then be:
- Somewhere, msc_paging_request is called (from gsm_04_08 or
gsm_04_11) with a given call back.
- msc_paging_request calls paging_request with a cb_msc_paging.
- [paging is done]
- gsm_04_08_utils would _not_ dispatch then SS_PAGING event it self,
it would just call back cb_msc_paging given in paging_request
- Inside cb_msc_paging, I would then dispatch SS_PAGING event and
call the original call back.
Then to add the auth part, I could just modify cb_msc_paging to call secure channel if required.
This makes a lot of sense with me and is probably pretty much how a normal MSC-internal dispatch for paging would look like. On top of this you would then have a transaction table and once all transactions are completed, you close the channel.
Once again probably best to coordinate with zecke on this, I have never studied the bsc_msc_ip in detail so far (and prefer to focus on GPRS for now until I'm satisfied with it)
Regards, Harald