aboutsummaryrefslogtreecommitdiffstats
path: root/include/osmocom/netif/ipa.h
AgeCommit message (Collapse)AuthorFilesLines
2023-10-09stream: Add and use helper function osmo_ipa_push_headers()arehbein1-0/+2
Related OS#5753, OS#5751 Change-Id: I61e1fe59166c46595efe8c1f32b8f2607cb6c529
2023-09-19ipa: Don't break strict aliasing rulearehbein1-1/+13
Somehow gcc doesn't always warn about this rule being broken. We are breaking the strict aliasing rule here and libosmo-netif currently does not make use of the '-fno-strict-aliasing' flag. It's possible that this has also been causing nondeterministic timestamps in libosmo-netif stream tests every once in a while. Related: OS#6164, OS#5753 Change-Id: Ibed543cdfcdda8c0256ce7d8818ff96d6d46e9b0
2023-08-07ipa: Add segmentation callbackarehbein1-0/+11
Related: OS#5753 Change-Id: I87ef4c7023126b783dd79e7ed47be31e1b76f975
2023-08-07examples: Add extension header octet to examplearehbein1-0/+2
Mainly to make data/packets look (pseudo-)correct in Wireshark. Also: Add helper for allocating message buffers with extended headroom for IPA. Change-Id: I962b9edcba65cdc98da00d2f8753dc5acd481502
2018-08-01Migrate from osmo_ipa_idtag_parse() to ipa_ccm_id_resp_parse()Harald Welte1-1/+0
In libosmocore Change-ID I1834d90fbcdbfcb05f5b8cfe39bfe9543737ef8f we have introduced ipa_ccm_id_resp_parse() as a bugfixed replacement of ipa_ccm_idtag_parse(). The main difference is that the returned "value" parts now have a correct reported "length", whereas before this commit they all reported a one-byte too-long "length" for each IE. Let's use this opportunity to remove the copy+pasted osmo_ipa_idtag_parse() function from the libosmo-netif codebase. Change-Id: I4626d247626543e032593bf226b6c233f6678562
2017-04-15netif/ipa.h: Don't redefine 'struct ipaccess_unit' from libosmocoreHarald Welte1-13/+1
'struct ipaccess_unit' is defined in libosmocore/gsm/ipa.h, we shouldn't re-define it here. This entire IPA code duplication accross multiple libraries and programs is a big mess. Change-Id: If378a088c741df540befb928a5557fc62dea954a
2017-04-14ipa.h: Don't redefine what libosmocore already definesHarald Welte1-33/+5
Change-Id: Ibd81efc1dc61b8c2019d55a8fa6e3bb99b5acb20
2012-08-21ipa: add osmo_ipa_parse_msg_id_respPablo Neira Ayuso1-0/+2
Code extracted from ipa_stream_server.c.
2012-08-19ipa: add ipa_cli_id_ack and ipa_cli_id_respPablo Neira Ayuso1-0/+5
This functions were before located in channel/abis/ipa_stream_client.c, but they are generic for IPA units.
2012-08-19ipa: add osmo_ipa_process_msg and remove osmo_ipa_recv_msgPablo Neira Ayuso1-1/+2
This patch removes osmo_ipa_recv_msg, it performs two syscall invocations and it's stream generic. Now we use the specific receival function we want to use (no matter if stream or datagram based) and then we call osmo_ipa_process_msg to check that the IPA message correct.
2012-08-16ipa: change osmo_ipa_rcvmsg_base to take argument depending on rolePablo Neira Ayuso1-1/+1
If we're acting as client, we don't have to reply ID_ACK to one received ID_ACK (otherwise, we enter a loop).
2011-11-08src: add generic channel infrastructure and A-bis IPA server supportPablo Neira Ayuso1-9/+33
This patch adds the generic channel infrastructure that allows to create channel of different types. Each channel has their own configuration functions. struct osmo_chan *chan; chan = osmo_chan_create(tall_example, CHAN_ABIS_IPA_SERVER); ... /* specific configuration functions per supported channel. */ osmo_chan_abis_ipa_server_set_cb_signalmsg(chan, signal_msg_cb); osmo_chan_abis_ipa_unit_add(chan, 1801, 0); /* open channel. */ osmo_chan_open(chan); The input path requires a callback to be registered. The output path is handled through: int osmo_chan_enqueue(struct osmo_chan *c, struct msgb *msg); The msg->dst must be set (it can be taken from the original message to route one reply). This patch also adds A-bis IPA server support. It has been tested with e1inp_ipa_bsc_test available in libosmo-abis.
2011-10-17ipa: initial addition of helper functions and examplesPablo Neira Ayuso1-0/+52
This patch adds IPA helper function that can be use on top of stream sockets. The current API is just a copy and paste from libosmo-abis, it will change in follow up patches to improve it.