Osmocom code for the Iuh interface (HNBAP, RUA, RANAP)
https://osmocom.org/projects/libosmo-ranap
Neels Hofmeyr
4470f93074
Adding the Security Mode Control command would break the current scheme of callbacks across layers. This brought to my attention that the scheme is indeed unnecessarily complex, so simplify it. Instead of passing callbacks, call functions directly. Add hnb-test-layers.h to declare those functions that cross from main to rua, to ranap and back to main and remove the callback type definitions. Instead of copying the NAS PDU to a newly allocated msgb, pass the data and len directly to hnb_test_nas_rx_dtap(). Instead of repeatedly checking the gsm48_hdr length, just pass the struct gsm48_hdr* and len around and assume the basic header length has been checked. In some places, rename 'length' to 'len' for cosmetic consistency. |
||
---|---|---|
asn1 | ||
doc | ||
include | ||
pcap | ||
specs | ||
src | ||
.gitignore | ||
COPYING | ||
Makefile.am | ||
README | ||
configure.ac | ||
git-version-gen | ||
libosmo-ranap.pc.in | ||
move-asn1-header-files.sh |
README
Osmocom Iuh experimentation code (C) 2015 by Harald Welte <laforge@gnumonks.org> This code is a playground for implementing something along the lines of the an Iuh interface of a HNB-GW. The intent is to later integrate this with OsmoNITB + OsmoSGSN, in order to have 3G capable 'network in the box'. h1. Building As external library dependencies, you will need * libosmocore from git://git.osmocom.org/libosmocore * libasn1c from git://git.osmocom.org/libasn1c * libsctp-dev (this is the package name in Debian) * libosmo-netif from git://git.osmocom.org/libosmo-netif (sysmocom/sctp branch) * libosmo-sccp from git://git.osmocom.org/libosmo-sccp (sysmocom/iu branch) To bootstrap the build, in the root directory, run: autoreconf --install After that, run the usual ./configure [options] make [sudo] make install h1. Using Note: osmo-iuh is in active development (December 2015, January 2016) so below statements may outdate rapidly. there's not much to use yet. But if you run the 'hnbgw' executable, it will open a listening SCTP socket and wait for incoming Iuh connections. It will accept any HNB-REGISTER-REQUEST, so the homeNodeB should start to establish RUA and RANAP (which we haven't implemented yet). h1. Regenerating C code from ASN.1 source In order to re-generate the C source code from the ASN.1 source, you will need a modified asn1c which has the following features: * APER support (the patch from Eurecom, or its forward-ported version from the aper branch of git://git.osmocom.org/asn1c) * support for prefixing the generated types (aper-prefix branch of git://git.osmocom.org/asn1c)