Osmocom code for the Iuh interface (HNBAP, RUA, RANAP) https://osmocom.org/projects/libosmo-ranap
Go to file
Neels Hofmeyr 135bc06c35 ranap: make X.213 NSAP 160 bits long, zero padded
For IPv4 addresses, only 56bit of X.213 NSAP are used. The sysmocell5000
accepts such a field that is 56bits long, but the ip.access nano3G does not
(and crashes instead). Both work when zero-padded to 160bits size.

So far we used to send the IPv4 address as "raw" 32bits to the nano3G to avoid
the crash. With this zero padding we no longer need such a workaround and can
use identical config for both cells.

Change-Id: I070bbfe887ab93d08322df30571050a381d082d5
2017-02-02 04:53:41 +01:00
asn1 asn1tostruct.py: use '#\!/usr/bin/env python', not '#\!/usr/bin/python' 2016-07-12 00:44:18 +02:00
contrib jenkins.sh: use osmo-build-dep.sh 2016-10-12 11:29:30 +00:00
doc doc: add example osmo-hnbgw.cfg 2016-08-20 00:30:37 +00:00
include hnbgw: parameterize IuCS and IuPS ips and ports: add vty cmds 2016-10-27 14:01:25 +02:00
pcap Better capture for PS Data 2016-02-18 13:21:30 +01:00
specs import TR 25.931 with examples of signalling procedures 2016-02-22 09:17:15 +01:00
src ranap: make X.213 NSAP 160 bits long, zero padded 2017-02-02 04:53:41 +01:00
.gitignore build: fix ranap gen, use same for gen hnbap and rua gen 2016-09-09 06:43:31 +00:00
COPYING move COPYING file to root directory 2015-12-21 21:01:00 +01:00
Makefile.am add to dist: doc subdir with all current doc files 2016-08-18 16:14:40 +02:00
README update dependencies in README file 2016-04-09 20:29:37 +02:00
configure.ac configure: check for pkg-config presence 2016-10-01 01:05:34 +02:00
git-version-gen add git-version-gen to auto-generate git based version number 2016-01-03 18:08:05 +01:00
libosmo-ranap.pc.in add pkg-config file for libosmo-ranap 2016-01-03 18:12:22 +01:00
move-asn1-header-files.sh make regen: ~8x faster: use sed script instead of single invocations 2016-07-12 00:44:18 +02:00

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)