blob: a2188521dc69f69c2ff47dfc11b607658aca0d1b [file] [log] [blame]
Neels Hofmeyrb984f362016-02-18 01:18:20 +01001
2#include <asn1c/ANY.h>
Neels Hofmeyr83457922016-08-26 23:56:44 +02003#include <osmocom/rua/rua_ies_defs.h>
Neels Hofmeyrb984f362016-02-18 01:18:20 +01004
Neels Hofmeyr4470f932016-04-19 00:13:53 +02005#include "hnb-test-layers.h"
Neels Hofmeyrb984f362016-02-18 01:18:20 +01006
Neels Hofmeyr4470f932016-04-19 00:13:53 +02007void hnb_test_rua_dt_handle(struct hnb_test *hnb, ANY_t *in)
Neels Hofmeyrb984f362016-02-18 01:18:20 +01008{
9 RUA_DirectTransferIEs_t ies;
10 int rc;
11
12 rc = rua_decode_directtransferies(&ies, in);
13 if (rc < 0) {
Neels Hofmeyr4470f932016-04-19 00:13:53 +020014 printf("failed to decode RUA DT IEs\n");
Neels Hofmeyrb984f362016-02-18 01:18:20 +010015 return;
16 }
17
Neels Hofmeyr4470f932016-04-19 00:13:53 +020018 rc = ranap_cn_rx_co(hnb_test_rua_dt_handle_ranap, hnb, ies.ranaP_Message.buf, ies.ranaP_Message.size);
Neels Hofmeyrb984f362016-02-18 01:18:20 +010019
20 /* FIXME: what to do with the asn1c-allocated memory */
21 rua_free_directtransferies(&ies);
22}
23
Neels Hofmeyr5ad72b92016-04-19 18:09:05 +020024void hnb_test_rua_cl_handle(struct hnb_test *hnb, ANY_t *in)
25{
26 RUA_ConnectionlessTransferIEs_t ies;
27 int rc;
28
29 rc = rua_decode_connectionlesstransferies(&ies, in);
30 if (rc < 0) {
31 printf("failed to decode RUA CL IEs\n");
32 return;
33 }
34
35 rc = ranap_cn_rx_cl(hnb_test_rua_cl_handle_ranap, hnb, ies.ranaP_Message.buf, ies.ranaP_Message.size);
36
37 /* FIXME: what to do with the asn1c-allocated memory */
38 rua_free_connectionlesstransferies(&ies);
39}
40