summaryrefslogtreecommitdiffstats
path: root/src/gsm
diff options
context:
space:
mode:
authorMax Suraev msuraev@sysmocom.de <laforge@gnumonks.org>2016-04-29 13:17:22 +0200
committerHarald Welte <laforge@gnumonks.org>2016-04-29 13:17:22 +0200
commit84da22f96429f77276783d28622d0c6acb5c484d (patch)
tree04f15b1af1013d0e9bf49ec552c0048c2efdcf87 /src/gsm
parentaa16d63c273204dc69108f7361d38b751bfb69e4 (diff)
Add code generator for convolutional codes
Add python utility to generate .c code with convolutional encoder/decoder based on polynomial description of the code. If argument given it'll be interpreted as intended output directory, otherwise current working directory is used. Codes for *CCH, CS2/3 and TCH/AFS are generated. Corresponding manual implementations are removed from tests. This introduce build-time dependency on python. The main work for this patch was generously contributed by Sylvain Munaut. Fixes: OS#1629
Diffstat (limited to 'src/gsm')
-rw-r--r--src/gsm/Makefile.am8
-rw-r--r--src/gsm/libosmogsm.map12
2 files changed, 20 insertions, 0 deletions
diff --git a/src/gsm/Makefile.am b/src/gsm/Makefile.am
index b0ea643e..1b186b1e 100644
--- a/src/gsm/Makefile.am
+++ b/src/gsm/Makefile.am
@@ -18,6 +18,11 @@ libgsmint_la_SOURCES = a5.c rxlev_stat.c tlv_parser.c comp128.c comp128v23.c \
gprs_cipher_core.c gsm0480.c abis_nm.c gsm0502.c \
gsm0411_utils.c gsm0411_smc.c gsm0411_smr.c \
lapd_core.c lapdm.c kasumi.c \
+ conv_cs2_gen.c conv_cs3_gen.c conv_xcch_gen.c \
+ conv_tch_afs_12_2_gen.c conv_tch_afs_10_2_gen.c \
+ conv_tch_afs_7_95_gen.c conv_tch_afs_7_4_gen.c \
+ conv_tch_afs_6_7_gen.c conv_tch_afs_5_9_gen.c \
+ conv_tch_afs_5_15_gen.c conv_tch_afs_4_75_gen.c \
auth_core.c auth_comp128v1.c auth_comp128v23.c \
auth_milenage.c milenage/aes-encblock.c \
milenage/aes-internal.c milenage/aes-internal-enc.c \
@@ -30,3 +35,6 @@ libosmogsm_la_LDFLAGS = $(LTLDFLAGS_OSMOGSM) -version-info $(LIBVERSION) -no-und
libosmogsm_la_LIBADD = libgsmint.la
EXTRA_DIST = libosmogsm.map
+
+conv%gen.c: ../../utils/conv_gen.py
+ $(AM_V_GEN)python ../../utils/conv_gen.py
diff --git a/src/gsm/libosmogsm.map b/src/gsm/libosmogsm.map
index f9a83697..5ed9499c 100644
--- a/src/gsm/libosmogsm.map
+++ b/src/gsm/libosmogsm.map
@@ -56,6 +56,18 @@ gsm0480_wrap_invoke;
gsm0502_calc_paging_group;
+gsm0503_xcch;
+gsm0503_cs2;
+gsm0503_cs3;
+gsm0503_tch_afs_12_2;
+gsm0503_tch_afs_10_2;
+gsm0503_tch_afs_7_95;
+gsm0503_tch_afs_7_4;
+gsm0503_tch_afs_6_7;
+gsm0503_tch_afs_5_9;
+gsm0503_tch_afs_5_15;
+gsm0503_tch_afs_4_75;
+
gsm0808_att_tlvdef;
gsm0808_bssap_name;
gsm0808_bssmap_name;