osmux: Match remote address in osmux_lchan_find()

Related: SYS#5987
Depends: libosmo-netif.git I95433b18802f73fa70e758f4aa02128eee940d88
Change-Id: I6813686b55fc3a74f1676a7965186e1e5fa00481
This commit is contained in:
Pau Espin 2022-10-03 18:19:57 +02:00
parent 53e566247d
commit 3fd60a5784
1 changed files with 7 additions and 2 deletions

View File

@ -234,10 +234,15 @@ static struct gsm_lchan *osmux_lchan_find(struct gsm_bts *bts, const struct osmo
subslots = ts_subslots(ts);
for (subslot = 0; subslot < subslots; subslot++) {
struct gsm_lchan *lchan = &ts->lchan[subslot];
struct osmux_handle *h;
if (!lchan->abis_ip.osmux.use)
continue;
if (lchan->abis_ip.osmux.local_cid == osmux_cid)
return lchan;
if (lchan->abis_ip.osmux.local_cid != osmux_cid)
continue;
h = osmux_xfrm_input_get_deliver_cb_data(lchan->abis_ip.osmux.in);
if (osmo_sockaddr_cmp(&h->rem_addr, rem_addr) != 0)
continue;
return lchan; /* Found it! */
}
}
}