GSUP: add f_unregister_imsi() to unregister an imsi/connhdlr
Change-Id: I13f6784533fe0e1f42d9595f028861d4645ec1a9
This commit is contained in:
parent
17f3208195
commit
130110c895
|
@ -227,6 +227,10 @@ function main(GsupOps ops, charstring id) runs on GSUP_Emulation_CT {
|
||||||
GSUP_PROC.reply(GSUPEM_unregister_expect:{imsi, vc_hdlr}) to vc_hdlr;
|
GSUP_PROC.reply(GSUPEM_unregister_expect:{imsi, vc_hdlr}) to vc_hdlr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[] GSUP_PROC.getcall(GSUPEM_unregister_connhdlr:{?}) -> param(imsi) sender vc_hdlr {
|
||||||
|
f_imsi_table_del(imsi);
|
||||||
|
GSUP_PROC.reply(GSUPEM_unregister_connhdlr:{imsi}) to vc_hdlr;
|
||||||
|
}
|
||||||
[] GSUP_PROC.getcall(GSUPEM_change_connhdlr:{?,?}) -> param(imsi, vc_hdlr) {
|
[] GSUP_PROC.getcall(GSUPEM_change_connhdlr:{?,?}) -> param(imsi, vc_hdlr) {
|
||||||
f_imsi_table_del(imsi);
|
f_imsi_table_del(imsi);
|
||||||
f_imsi_table_add(vc_hdlr, imsi);
|
f_imsi_table_add(vc_hdlr, imsi);
|
||||||
|
@ -252,10 +256,12 @@ type record ExpectData {
|
||||||
/* procedure based port to register for incoming calls */
|
/* procedure based port to register for incoming calls */
|
||||||
signature GSUPEM_register_expect(in charstring imsi, in GSUP_ConnHdlr hdlr);
|
signature GSUPEM_register_expect(in charstring imsi, in GSUP_ConnHdlr hdlr);
|
||||||
signature GSUPEM_unregister_expect(in charstring imsi, in GSUP_ConnHdlr hdlr);
|
signature GSUPEM_unregister_expect(in charstring imsi, in GSUP_ConnHdlr hdlr);
|
||||||
|
signature GSUPEM_unregister_connhdlr(in charstring imsi);
|
||||||
signature GSUPEM_change_connhdlr(in charstring imsi, in GSUP_ConnHdlr hdlr);
|
signature GSUPEM_change_connhdlr(in charstring imsi, in GSUP_ConnHdlr hdlr);
|
||||||
|
|
||||||
type port GSUPEM_PROC_PT procedure {
|
type port GSUPEM_PROC_PT procedure {
|
||||||
inout GSUPEM_register_expect, GSUPEM_unregister_expect, GSUPEM_change_connhdlr;
|
inout GSUPEM_register_expect, GSUPEM_unregister_expect,
|
||||||
|
GSUPEM_unregister_connhdlr, GSUPEM_change_connhdlr;
|
||||||
} with { extension "internal" };
|
} with { extension "internal" };
|
||||||
|
|
||||||
/* CreateCallback that can be used as create_cb and will use the expectation table */
|
/* CreateCallback that can be used as create_cb and will use the expectation table */
|
||||||
|
@ -329,6 +335,13 @@ function f_destroy_gsup_expect(charstring imsi) runs on GSUP_ConnHdlr {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function f_unregister_gsup_imsi(charstring imsi) runs on GSUP_ConnHdlr {
|
||||||
|
GSUP_PROC.call(GSUPEM_unregister_connhdlr:{imsi}) {
|
||||||
|
[] GSUP_PROC.getreply(GSUPEM_unregister_connhdlr:{?}) {};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* Same as f_create_gsup_expect, but with explicit addressing. Needed when connecting multiple ports to GSUP_PROC. */
|
/* Same as f_create_gsup_expect, but with explicit addressing. Needed when connecting multiple ports to GSUP_PROC. */
|
||||||
function f_create_gsup_expect_explicit(charstring imsi, GSUP_Emulation_CT ct) runs on GSUP_ConnHdlr {
|
function f_create_gsup_expect_explicit(charstring imsi, GSUP_Emulation_CT ct) runs on GSUP_ConnHdlr {
|
||||||
|
|
Loading…
Reference in New Issue