Hi
On 05.06.2015 15:15, ☎ wrote:
Could you perhaps summarize what's happening around tests/gb/gprs_bssgp_test.c:229?
The line before the failing test is
rc = bssgp_tx_fc_bvc(&bctx, tag, bmax, rate, bmax_ms, rate_ms, NULL, NULL);
The bssgp_tx_fc_bvc function will in general call gprs_ns_sendmsg -> gprs_ns_tx -> nsip_sendmsg -> sendto. The sendto function had been "replaced" by redefining it locally which worked at least with the default ld up to ubuntu 14.04. (see Holger's replies).
The system's sendto will fail in the test, since the UDP socket has not been configured. The local replacement (see gprs_bbsgp_test.c:37) will call
fprintf(stderr, "MESSAGE to 0x%08x, msg length %d\n%s\n", dest_host, len, osmo_hexdump(buf, len));
so you just need to look into the stderr output to see, whether this is a linker issue.
If yes, the issue will appear in more test programs, since that pattern has been used many times.
If there is no way to trick the linker to use the "old" behaviour, those test programs will have to be changed to use another mocking mechanism, e.g. by using the --wrap feature (if it is supported by the linker), see openbsc:openbsc/tests/sgsn/sgsn_test.c.
HTH
Jacob
The test fails for me (and another person with ubuntu 15.04 x86_64) on OSMO_ASSERT(rc
= 0);
This is 100% reproducible but I don't know much about Gb part so I'm not sure how to track this down properly. Any ideas/advices?