OsmoSGSN doesn't provide unique IDTAG_SERNR in IPA CCM
OsmoSGSN currently identifies itself simply as "SGSN" over the IPA/GSUP link to OsmoHLR.
This is wrong as it results in all OsmoSGSNs (in a multi-SGSN network) to register using the same identity, which in turn will render the HLR unable to store which SGSN is actually serving the subscriber, and/or to route messages accordingly.
It appears the change to "SGSN" was made in Change-Id: I0a60681ab4a4d73e26fe8f0637447db4b6fe6eb2 from "SGSN-00-00-00-00-00-00" before. Both the old and the new name are wrong though, as they're not unique.
The correct behavior AFAICT is "SGSN-" prefix with whatever unique identifier behind. We could make that suffix configurable in the VTY, if there's no other way to derive any other locally unique identifier. MAC addresses work fine for BTSs, but not for SGSNs: There might be any number of OsmoSGSNs running on the same physical / virtual machine with only one MAC address...
Would uuid_generate be a reasonable solution?
The difficulty is to get the same UUID across program restarts, i.e. no random involved.
We should probably use an ID to be set in the config file (and loudly error-log if missing)?
it would be good if the identification were at most 15 characters wide, so it fits in the HLR's sgsn_number.
OK, turns out the GSUP clients are free to send pretty much anything they want (in the sense of arbitrary Global Title),
and osmo-hlr should be able to deal with that.