Code Monkey home page Code Monkey logo

easyasn_ngap's Introduction

EasyAsn

Features

  1. Easy to use (that is why we call it EasyAsn)
  2. Automatically generate codec source codes (C style only for the moment) for 3GPP NGAP, S1AP, X2AP, XNAP etc.
  3. Automatically generate dummy test source codes
  4. Automatically generate wireshark-like message dumpping codes (for trouble-shootings)

Quick Start

  1. Prerequisite

    Any Linux style system with gcc 4.3.0 or above.

  2. Clone project to local folder, saying /workings/tmp/easyasn_ngap

    NOTE: Do not change the sub folders' structure.

  3. Generate example codec using the shipped tool asn_aper_gen_v125

   linux-vm2:/ # cd /workings/tmp/easyasn_ngap/   
   linux-vm2:/workings/tmp/easyasn_ngap # ls   
   asn_aper_gen_v125  ngap_asn  README  test   
   linux-vm2:/workings/tmp/easyasn_ngap # ./asn_aper_gen_v125 NGAP ./ngap_asn/ngap-class-0.8.0.asn ./ngap_asn/ngap-const-0.8.0.asn ./ngap_asn/ngap-main-1.0.0.asn LTE_ ./test/ngap_codes/
  1. Check that codes shall be generated in sub-folder test/ngap_codes
   linux-vm2:/workings/tmp/easyasn_ngap # ls test/ngap_codes/
   LTE_NGAP_Dec.c  LTE_NGAP_Dec.h  LTE_NGAP_DISP.c  LTE_NGAP_DISP.h  LTE_NGAP_Enc.c  LTE_NGAP_Enc.h  LTE_NGAP_IE.h  LTE_NGAP_TST.c  LTE_NGAP_TST.h
  1. Build test executable ngap_code_tst based on the generated codes
   linux-vm2:/workings/tmp/easyasn_ngap # cd test/release/   
   linux-vm2:/workings/tmp/easyasn_ngap/test/release # make clean   
   linux-vm2:/workings/tmp/easyasn_ngap/test/release # make
   Building file: ../ngap_codes/LTE_NGAP_DISP.c   
   Invoking: GCC C Compiler   
   gcc -O3 -Wall -c -fmessage-length=0 -MMD -MP -MF"ngap_codes/LTE_NGAP_DISP.d" -MT"ngap_codes/LTE_NGAP_DISP.d" -o "ngap_codes/LTE_NGAP_DISP.o" "../ngap_codes/LTE_NGAP_DISP.c"   
   ...   
   Finished building target: ngap_code_tst
  1. Run the test executable and generate a log file
   linux-vm2:/workings/tmp/easyasn_ngap/test/release # ls   
   makefile  manual  ngap_codes  ngap_code_tst   
   linux-vm2:/workings/tmp/easyasn_ngap/test/release # ./ngap_code_tst    
   >> [INFO ] Choice bunch 1 ...   
   >> 1 Test OK, 0 Test failed.
  1. The test result is logged into file ngap_src_test.log
   linux-vm2:/workings/tmp/easyasn_ngap/test/release # ls
   
   makefile  manual  ngap_codes  ngap_code_tst  ngap_src_test.log

Help

  1. For more usage of the tool please try:
  linux-vm2:/workings/tmp/easyasn_ngap # ./asn_aper_gen_v125 -h
  1. For extended help, contact author via email (included in source codes generated).

easyasn_ngap's People

Contributors

asnautogen avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.