Harald Welte
b534e5c085
introduce ue_context management
...
We keep one 'ue_context' structure for every UE that we see
a UE REGISTER REQUEST for.
2015-09-11 00:15:54 +02:00
Harald Welte
e2e5d4dd53
Back RUA/RANAP integration until RANAP Reset works for cs+ps
...
The hNodeB is now actively transmitting and we are getting up to the
HNBAP UE-REGISTER.req with the IMSI of the MS.
2015-09-10 23:49:45 +02:00
Harald Welte
350814a5cb
first dispatch of RUA into RANAP
...
This is becoming more and more of a hack, as asn1c + asn1tostruct.py
don't really deal well with the RANAP syntax :(
2015-09-10 22:32:15 +02:00
Harald Welte
ac9c024432
ranap: Add more manual definitions to RANAP-PDUs
...
It seems that individual IEs contain nested containers, and
asn1c is not generating code for that unless we help it by some
hand-crafted additional definitions. *sigh*
2015-09-10 21:18:16 +02:00
Harald Welte
68fcff219f
don't attempt to regenerate ranap-common, it is not auto generated!
2015-09-10 19:35:09 +02:00
Harald Welte
64b4ebe57c
rua: dispatch different message types and print context/cause
2015-09-10 19:29:59 +02:00
Harald Welte
318e4d5713
actually dispatch RUA messages to RUA handling code
2015-09-10 18:47:08 +02:00
Harald Welte
656ad301a8
enable building + linking of RUA support
2015-09-10 18:33:47 +02:00
Harald Welte
84839c04ea
asn1tostruct.py: Add support for type prefixing
...
If asn1c generates prefixed type names, the asn1tostruct.py of course
also needs to be modified to do so.
2015-09-10 18:33:14 +02:00
Harald Welte
3bc7ff0bb5
hnbap Makefile: add asn1c include directory
2015-09-10 16:43:44 +02:00
Harald Welte
71733fe9b3
add AGPLv3 license text
2015-09-10 11:02:31 +02:00
Harald Welte
b908f638f4
Add README file about current state
2015-09-10 11:01:59 +02:00
Harald Welte
0ec7f13667
Cleanups (rename 'asn1c' to 'hnbap', Makefile sanitizing)
2015-09-10 10:53:37 +02:00
Harald Welte
b90c37dbaf
build + link to RUA and RANAP libraries
2015-09-10 10:53:36 +02:00
Harald Welte
ee0918971f
add asn1c generated C source for RANAP (and Makefile to regenerate)
2015-09-10 10:53:36 +02:00
Harald Welte
019830c460
add asn1c generated RUA c+header files
2015-09-10 10:53:36 +02:00
Harald Welte
3ca78c8607
add Makefile.local to generate prefixed RUA code
2015-09-10 10:53:36 +02:00
Harald Welte
f2f3000457
msgb_free() all received messages after handling
2015-09-08 00:09:23 +02:00
Harald Welte
17878e267f
avoid parsing SCTP noficiations as user data
2015-09-08 00:09:13 +02:00
Harald Welte
7b54e32c63
hnbap: Don't enqueue a NULL msgb for transmit
2015-09-07 22:41:45 +02:00
Harald Welte
9e270b4834
hnbgw.c: Fix double-free in wait-queue transmit code
2015-09-07 22:41:26 +02:00
Harald Welte
1c1c53ca11
hnbap encode: don't pass 0 as available buffer space
2015-09-07 22:41:02 +02:00
Harald Welte
c060b7bf2c
more error logging in hnbap TX successful outcome
2015-09-07 22:40:41 +02:00
Harald Welte
cfcc1e67ad
use htonl(ppid) when sending a SCTP message
2015-09-07 22:39:56 +02:00
Harald Welte
3f71256750
Use implement HNBAP transmit using per-hnb write_queue
2015-09-07 22:25:35 +02:00
Harald Welte
2204f9d43d
hnbgw: zero-initialize the output struct before aper_decode()
...
asn1c has this strange behavior that the _output_ struct must be
zero-initialized.
2015-09-07 22:25:35 +02:00
Harald Welte
5c11c94637
hnbgw: Fix SCTP server/receiver
...
* we need to swap PPID endianness
* we need to explicitly subscrie to the event(s) for sctp_sndrcvinfo
2015-09-07 22:25:35 +02:00
Harald Welte
08a793be9f
hnbgw: Initialize linked list header of hnbgw's
2015-09-07 22:25:35 +02:00
Harald Welte
1c0f538a8b
hnbgw: Bind to INADDR_ANY, not to localhost only
2015-09-07 22:25:35 +02:00
Harald Welte
385836171b
update .gitignore
2015-08-31 09:58:12 +02:00
Harald Welte
ff4750fde8
cosmetics: asn1c now no longer explicitly states -fnative-types
2015-08-31 09:55:28 +02:00
Harald Welte
08de638790
start using the shared libasn1c, now that it has aper support
2015-08-31 09:54:45 +02:00
Harald Welte
9da9697f55
makefile: asn1tostruct.py rules for RUA and RANAP
2015-08-31 09:38:13 +02:00
Harald Welte
0bdea4da55
Makefile: chrdir to asn1c subdir and build library there
2015-08-30 23:13:06 +02:00
Harald Welte
d523a69dbe
import ans1c generated C sources for HNBAP
...
TODO: split the HNBAP specific code from the core runtime code
and use libosmo-asn1c instead. This is required as we will be
dealing with multiple ASN.1 data formats from within a single
executable.
2015-08-30 23:11:19 +02:00
Harald Welte
11e0306a3a
add .gitignore for src directory
2015-08-30 23:10:13 +02:00
Harald Welte
76427b753b
implement HNBAP_DEBUG via osmocore DEBUGP
2015-08-30 23:08:48 +02:00
Harald Welte
339b8e2a77
successful has only one 'l' (copy+paste error)
2015-08-30 23:08:32 +02:00
Harald Welte
4d42551466
actually build + link the asn1c generated HNBAP ASN.1
2015-08-30 23:04:23 +02:00
Harald Welte
27f9c4ab4b
migration of code from ffasn1c to asn1c + asn1tostruct.py
2015-08-30 22:48:59 +02:00
Harald Welte
547b76c5b4
asn1tostruct.py: Don't claim copyright on auto-generated code
...
It is a legal impossibility to claim copyright on something that
has been automatically generated by a computer program.
2015-08-30 22:48:59 +02:00
Harald Welte
245daf9422
import ans1tostruct.py from Eurecom OpenAirInterface
2015-08-30 22:48:59 +02:00
Harald Welte
1c2b568d79
HNBAP: Remove HNBRegisterAccept / HNBRegisterResposne naming inconsistency
...
A HNBRegisterAccept message should not contain HNBRegisterResponse IEs
This spec inconsistency is confusing the asn1tostruct.py code generator,
so let's remove it.
2015-08-30 20:11:50 +02:00
Harald Welte
8d6026742f
generate ASN.1 structures for each message withotu iformation object class
...
this is done semi-automatically using the asn1msgs.pl script.
2015-08-30 19:57:43 +02:00
Harald Welte
96ec96e3b4
asn1 syntax fixup for ffasn1c
2015-08-30 19:10:58 +02:00
Harald Welte
3bd59c9d59
Add Procedure Codes and IEI constants to CommonDataTypes
...
... this is what's required for asn1c to generate nice C language
enums for it. Conversion was performed semi-automatically by use
of asn1enum.pl
2015-08-30 19:09:55 +02:00
Harald Welte
f24cabee15
RANAP: Further qualify Constants. They're not just integer
2015-08-30 19:03:57 +02:00
Harald Welte
2facbada27
remove ffasn1c generated hnbap.[ch] from source
...
we want to use asn1c instead.
2015-08-30 19:03:37 +02:00
Harald Welte
ba404f9e48
RUA ASN.1 Rewrite to avoid information object classes
...
If we avoid using Information Object Classes in the IE definitions
(which are only used for Extension Containers), then we can compile the
ASN.1 source using Lev Walkin's asn1c.
2015-08-30 17:46:36 +02:00
Harald Welte
4f119e58e9
RANAP ASN.1 Rewrite to avoid information object classes
...
If we avoid using Information Object Classes in the IE definitions
(which are only used for Extension Containers), then we can compile the
ASN.1 source using Lev Walkin's asn1c.
2015-08-30 17:46:03 +02:00