Attention is currently required from: neels.

neels uploaded patch set #8 to this change.

View Change

libosmo-gtlv: add auto dec/enc to/from structs

Add osmo_gtlv_coding: describe the value part of a TLV (decode and
encode), describe a struct with its members, and get/put readily decoded
structs from/to a raw PDU, directly.

With osmo_gtlv_coding defined for a protocol's tags, we only deal with
encoded PDUs or fully decoded C structs, no TLV related
re-implementations clutter up the message handling code.

A usage example is given in gtlv_dec_enc_test. The first real use will be
the PFCP protocol in osmo-upf.git.

With osmo_gtlv_coding, there still is a lot of monkey work involved in
describing the decoded structs. A subsequent patch adds a generator for
osmo_gtlv_coding and message structs from tag value lists.

Related: SYS#5599
Change-Id: I65de793105882a452124ee58adb0e58469e6e796
---
M include/osmocom/gtlv/Makefile.am
A include/osmocom/gtlv/gtlv_dec_enc.h
M src/libosmo-gtlv/Makefile.am
A src/libosmo-gtlv/gtlv_dec_enc.c
M tests/libosmo-gtlv/Makefile.am
A tests/libosmo-gtlv/gtlv_dec_enc_test.c
A tests/libosmo-gtlv/gtlv_dec_enc_test.ok
M tests/testsuite.at
8 files changed, 1,288 insertions(+), 0 deletions(-)

git pull ssh://gerrit.osmocom.org:29418/osmo-upf refs/changes/18/27218/8

To view, visit change 27218. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: osmo-upf
Gerrit-Branch: master
Gerrit-Change-Id: I65de793105882a452124ee58adb0e58469e6e796
Gerrit-Change-Number: 27218
Gerrit-PatchSet: 8
Gerrit-Owner: neels <nhofmeyr@sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: pespin <pespin@sysmocom.de>
Gerrit-Attention: neels <nhofmeyr@sysmocom.de>
Gerrit-MessageType: newpatchset