Attention is currently required from: pespin.
2 comments:
File library/DIAMETER_Emulation.ttcn:
Patch Set #1, Line 90: var uint32_t g_sess_id_seed_h32;
I suspect that's because uint64_t is not supported in TTCN3?
It's supported, but... the problem is that bitwise and shift operators in TTCN-3 can be applied to bitstring, hexstring or octetstring, but *not to integers*. So when doing the initialization and then encoding I would need to convert to one of the supported types. I find this cumbersome.
";" & oct2char(int2oct(g_sess_id_seed, 8) >> 32)
";" & oct2char(int2oct(g_sess_id_seed, 8) and4b 'FFFFFFFF'O)
Alternatively, I could use substr(), but it's still rather clumsy:
";" & oct2char(substr(int2oct(g_sess_id_seed, 8), 0, 8))
";" & oct2char(substr(int2oct(g_sess_id_seed, 8), 8, 8))
I also would not say my solution is perfect, suggestions are welcome.
Patch Set #1, Line 393: [] DIAMETER_PROC.getcall(DIAMETEREM_gen_sess_id:{?,?}) -> param(identity) {
ah so they are encoded visibly as 2 parts, weird.
Well, this encoding format is recommended by RFC3588, section 8.8. "Session-Id AVP".
I'll add this reference to the commit message.
To view, visit change 31455. To unsubscribe, or for help writing mail filters, visit settings.