OSS NAS Tools for C++ for LTE/EPC Documentation

Applies to: NAS/C++ LTE/EPC r15.8.0 v7.2.0

Introduction

The OSS NAS Tools for C++ provides C++ access to the OSS NAS Tools for C. The OSS NAS Tools for C facilitates the creation of user applications that produce, encode, decode, and process messages conforming to 3GPP TS 24.301 (Non-Access-Stratum protocol). Its implementation is based on a description of NAS messages that uses an annotated ASN.1 specification.

This version of the OSS NAS Tools for C++ supports 3GPP NAS version 15.8.0. Contact OSS Nokalva at info@oss.com if you need to support a different version of NAS.

The tool consists of

  • A series of header files containing OSS NAS Tools for C++ class declarations, function prototypes and type definitions.
  • Libraries that can convert an encoded binary NAS message into an in-memory representation using the OSS NAS Tools for C++ classes, and vice versa.

The OSS NAS Tools for C++ API (application program interface) is a collection of functions and classes designed to be called by your application to encode, decode, and perform auxiliary operations on messages (or protocol data units) specified in 3GPP TS 24.301 (NAS) v.15.8.0.

Features of the OSS NAS Tools for C++ include

  • Encoding and decoding NAS protocol data units
  • Printing encoded or unencoded NAS protocol data units in XML form
  • Printing encoded or unencoded NAS protocol data units in JSON form
  • Copying NAS protocol data units to different destinations
  • Comparing unencoded or decoded NAS protocol data units

To use the API described in this document, you must include the provided C++ header file corresponding to the 3GPP NAS release version you plan to use: NAS1580.h. You must also link your application with the OSS NAS Tools for C++ libraries. For example, to use the shared libraries on Linux, link with the libnascpp1580.so library. The resulting application requires access to the dynamic libraries while running, so locate the libraries in the current directory or add their location to the LD_LIBRARY_PATH environment variable.

For more information about how to compile and link an application that uses the OSS NAS Tools for C++ API and for sample programs, see the /samples and /samples-static subdirectories included in your package.


This documentation applies to the OSS NAS Tools for C++ for LTE/EPC v7.2.0 for 3GPP Release 15.8.0.

Copyright © 2020 OSS Nokalva, Inc. All rights reserved.
No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form or by any means electronic, mechanical, photocopying, recording or otherwise, without the prior permission of OSS Nokalva, Inc.
Every distributed copy of the OSS NAS Tools for C++ for LTE/EPC is associated with a specific license and related unique license number. That license determines, among other things, what functions of the OSS NAS Tools for C++ for LTE/EPC are available to you.