[MERGED] libosmocore[master]: tests/conv: add GSM 05.03 specific test

2017-05-01 Thread Vadim Yanitskiy
Vadim Yanitskiy has submitted this change and it was merged.

Change subject: tests/conv: add GSM 05.03 specific test
..


tests/conv: add GSM 05.03 specific test

This change extends the convolutional code test coverage, adding
the GSM 05.03 specific test vectors, generated by the conv_gen.py.

Inspired by Tom's patch:
http://lists.osmocom.org/pipermail/openbsc/2014-April/007364.html

Change-Id: I76d1cd4032d2f74c5bb93bde4fab99aa655b7f1a
---
M .gitignore
M tests/Makefile.am
M tests/conv/conv.h
A tests/conv/conv_gsm0503_test.c
A tests/conv/conv_gsm0503_test.ok
M tests/testsuite.at
6 files changed, 355 insertions(+), 5 deletions(-)

Approvals:
  Harald Welte: Looks good to me, approved
  Jenkins Builder: Verified



diff --git a/.gitignore b/.gitignore
index 4c6a78f..5111b25 100644
--- a/.gitignore
+++ b/.gitignore
@@ -122,6 +122,7 @@
 include/osmocom/core/crc*gen.h
 include/osmocom/core/bit*gen.h
 include/osmocom/gsm/gsm0503.h
+tests/conv/gsm0503_test_vectors.c
 
 # vi files
 *.sw?
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 3ce7620..d9816ef 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -15,7 +15,8 @@
 bitvec/bitvec_test msgb/msgb_test bits/bitcomp_test\
 tlv/tlv_test gsup/gsup_test oap/oap_test fsm/fsm_test  \
 write_queue/wqueue_test socket/socket_test \
-coding/coding_test abis/abis_test
+coding/coding_test conv/conv_gsm0503_test  \
+abis/abis_test
 
 if ENABLE_MSGFILE
 check_PROGRAMS += msgfile/msgfile_test
@@ -63,6 +64,10 @@
 
 conv_conv_test_SOURCES = conv/conv_test.c conv/conv.c
 conv_conv_test_LDADD = $(top_builddir)/src/libosmocore.la 
$(top_builddir)/src/gsm/libgsmint.la
+
+conv_conv_gsm0503_test_SOURCES = conv/conv_gsm0503_test.c conv/conv.c 
conv/gsm0503_test_vectors.c
+conv_conv_gsm0503_test_LDADD = $(top_builddir)/src/libosmocore.la 
$(top_builddir)/src/gsm/libgsmint.la
+conv_conv_gsm0503_test_CPPFLAGS = $(AM_CPPFLAGS) -I$(top_srcdir)/tests/conv
 
 gsm0808_gsm0808_test_SOURCES = gsm0808/gsm0808_test.c
 gsm0808_gsm0808_test_LDADD = $(top_builddir)/src/libosmocore.la 
$(top_builddir)/src/gsm/libosmogsm.la
@@ -198,9 +203,11 @@
 socket/socket_test.err coding/coding_test.ok   \
 osmo-auc-gen/osmo-auc-gen_test.sh  \
 osmo-auc-gen/osmo-auc-gen_test.ok  \
-osmo-auc-gen/osmo-auc-gen_test.err
+osmo-auc-gen/osmo-auc-gen_test.err \
+conv/conv_gsm0503_test.ok
 
-DISTCLEANFILES = atconfig atlocal
+DISTCLEANFILES = atconfig atlocal conv/gsm0503_test_vectors.c
+BUILT_SOURCES = conv/gsm0503_test_vectors.c
 noinst_HEADERS = conv/conv.h
 
 TESTSUITE = $(srcdir)/testsuite
@@ -221,3 +228,7 @@
 $(TESTSUITE): $(srcdir)/testsuite.at $(srcdir)/package.m4
$(AUTOTEST) -I '$(srcdir)' -o $@.tmp $@.at
mv $@.tmp $@
+
+conv/gsm0503_test_vectors.c: $(top_srcdir)/utils/conv_gen.py 
$(top_srcdir)/utils/conv_codes_gsm.py
+   $(AM_V_GEN)python2 $(top_srcdir)/utils/conv_gen.py gen_vectors gsm \
+   --target-path $(builddir)/conv
diff --git a/tests/conv/conv.h b/tests/conv/conv.h
index 676c5af..0604859 100644
--- a/tests/conv/conv.h
+++ b/tests/conv/conv.h
@@ -1,7 +1,7 @@
 #pragma once
 
-#define MAX_LEN_BITS   512
-#define MAX_LEN_BYTES  (512/8)
+#define MAX_LEN_BITS   2048
+#define MAX_LEN_BYTES  (2048 / 8)
 
 struct conv_test_vector {
const char *name;
diff --git a/tests/conv/conv_gsm0503_test.c b/tests/conv/conv_gsm0503_test.c
new file mode 100644
index 000..6704129
--- /dev/null
+++ b/tests/conv/conv_gsm0503_test.c
@@ -0,0 +1,28 @@
+#include 
+#include 
+#include 
+#include 
+
+#include 
+#include 
+#include 
+#include 
+
+#include "conv.h"
+
+/* Forward declaration of GSM 05.03 specific test vectors */
+extern const struct conv_test_vector gsm0503_vectors[];
+extern const int gsm0503_vectors_len;
+
+int main(int argc, char *argv[])
+{
+   int rc, i;
+
+   for (i = 0; i < gsm0503_vectors_len; i++) {
+   rc = do_check(&gsm0503_vectors[i]);
+   if (rc)
+   return rc;
+   }
+
+   return 0;
+}
diff --git a/tests/conv/conv_gsm0503_test.ok b/tests/conv/conv_gsm0503_test.ok
new file mode 100644
index 000..e6e2572
--- /dev/null
+++ b/tests/conv/conv_gsm0503_test.ok
@@ -0,0 +1,304 @@
+[+] Testing: gsm0503_xcch
+[.] Input length  : ret = 224  exp = 224 -> OK
+[.] Output length : ret = 456  exp = 456 -> OK
+[.] Random vector checks:
+[..] Encoding / Decoding cycle : OK
+[..] Encoding / Decoding cycle : OK
+[..] Encoding / Decoding cycle : OK
+
+[+] Testing: gsm0503_rach
+[.] Input length  : ret =  14  exp =  14 -> OK
+[.] Output length : ret =  36  exp =  36 -> OK
+[.] Random vector checks:
+[..] Encoding / Decoding cycle : OK
+[..] Encoding / Decoding cycle : OK
+[

libosmocore[master]: tests/conv: add GSM 05.03 specific test

2017-04-30 Thread Harald Welte

Patch Set 7: Code-Review+2

deferring to Tom's judgement here, but generally it looks fine to me, and if 
there are issues remaining, they can be adressed later on.

-- 
To view, visit https://gerrit.osmocom.org/1628
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I76d1cd4032d2f74c5bb93bde4fab99aa655b7f1a
Gerrit-PatchSet: 7
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Owner: Vadim Yanitskiy 
Gerrit-Reviewer: Harald Welte 
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: Max 
Gerrit-Reviewer: Neels Hofmeyr 
Gerrit-Reviewer: Tom Tsou 
Gerrit-Reviewer: Vadim Yanitskiy 
Gerrit-Reviewer: tnt 
Gerrit-HasComments: No


[PATCH] libosmocore[master]: tests/conv: add GSM 05.03 specific test

2017-04-29 Thread Vadim Yanitskiy
Hello Max, Harald Welte, Jenkins Builder,

I'd like you to reexamine a change.  Please visit

https://gerrit.osmocom.org/1628

to look at the new patch set (#7).

tests/conv: add GSM 05.03 specific test

This change extends the convolutional code test coverage, adding
the GSM 05.03 specific test vectors, generated by the conv_gen.py.

Inspired by Tom's patch:
http://lists.osmocom.org/pipermail/openbsc/2014-April/007364.html

Change-Id: I76d1cd4032d2f74c5bb93bde4fab99aa655b7f1a
---
M .gitignore
M tests/Makefile.am
M tests/conv/conv.h
A tests/conv/conv_gsm0503_test.c
A tests/conv/conv_gsm0503_test.ok
M tests/testsuite.at
6 files changed, 355 insertions(+), 5 deletions(-)


  git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/28/1628/7

diff --git a/.gitignore b/.gitignore
index 4c6a78f..5111b25 100644
--- a/.gitignore
+++ b/.gitignore
@@ -122,6 +122,7 @@
 include/osmocom/core/crc*gen.h
 include/osmocom/core/bit*gen.h
 include/osmocom/gsm/gsm0503.h
+tests/conv/gsm0503_test_vectors.c
 
 # vi files
 *.sw?
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 3ce7620..d9816ef 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -15,7 +15,8 @@
 bitvec/bitvec_test msgb/msgb_test bits/bitcomp_test\
 tlv/tlv_test gsup/gsup_test oap/oap_test fsm/fsm_test  \
 write_queue/wqueue_test socket/socket_test \
-coding/coding_test abis/abis_test
+coding/coding_test conv/conv_gsm0503_test  \
+abis/abis_test
 
 if ENABLE_MSGFILE
 check_PROGRAMS += msgfile/msgfile_test
@@ -63,6 +64,10 @@
 
 conv_conv_test_SOURCES = conv/conv_test.c conv/conv.c
 conv_conv_test_LDADD = $(top_builddir)/src/libosmocore.la 
$(top_builddir)/src/gsm/libgsmint.la
+
+conv_conv_gsm0503_test_SOURCES = conv/conv_gsm0503_test.c conv/conv.c 
conv/gsm0503_test_vectors.c
+conv_conv_gsm0503_test_LDADD = $(top_builddir)/src/libosmocore.la 
$(top_builddir)/src/gsm/libgsmint.la
+conv_conv_gsm0503_test_CPPFLAGS = $(AM_CPPFLAGS) -I$(top_srcdir)/tests/conv
 
 gsm0808_gsm0808_test_SOURCES = gsm0808/gsm0808_test.c
 gsm0808_gsm0808_test_LDADD = $(top_builddir)/src/libosmocore.la 
$(top_builddir)/src/gsm/libosmogsm.la
@@ -198,9 +203,11 @@
 socket/socket_test.err coding/coding_test.ok   \
 osmo-auc-gen/osmo-auc-gen_test.sh  \
 osmo-auc-gen/osmo-auc-gen_test.ok  \
-osmo-auc-gen/osmo-auc-gen_test.err
+osmo-auc-gen/osmo-auc-gen_test.err \
+conv/conv_gsm0503_test.ok
 
-DISTCLEANFILES = atconfig atlocal
+DISTCLEANFILES = atconfig atlocal conv/gsm0503_test_vectors.c
+BUILT_SOURCES = conv/gsm0503_test_vectors.c
 noinst_HEADERS = conv/conv.h
 
 TESTSUITE = $(srcdir)/testsuite
@@ -221,3 +228,7 @@
 $(TESTSUITE): $(srcdir)/testsuite.at $(srcdir)/package.m4
$(AUTOTEST) -I '$(srcdir)' -o $@.tmp $@.at
mv $@.tmp $@
+
+conv/gsm0503_test_vectors.c: $(top_srcdir)/utils/conv_gen.py 
$(top_srcdir)/utils/conv_codes_gsm.py
+   $(AM_V_GEN)python2 $(top_srcdir)/utils/conv_gen.py gen_vectors gsm \
+   --target-path $(builddir)/conv
diff --git a/tests/conv/conv.h b/tests/conv/conv.h
index 676c5af..0604859 100644
--- a/tests/conv/conv.h
+++ b/tests/conv/conv.h
@@ -1,7 +1,7 @@
 #pragma once
 
-#define MAX_LEN_BITS   512
-#define MAX_LEN_BYTES  (512/8)
+#define MAX_LEN_BITS   2048
+#define MAX_LEN_BYTES  (2048 / 8)
 
 struct conv_test_vector {
const char *name;
diff --git a/tests/conv/conv_gsm0503_test.c b/tests/conv/conv_gsm0503_test.c
new file mode 100644
index 000..6704129
--- /dev/null
+++ b/tests/conv/conv_gsm0503_test.c
@@ -0,0 +1,28 @@
+#include 
+#include 
+#include 
+#include 
+
+#include 
+#include 
+#include 
+#include 
+
+#include "conv.h"
+
+/* Forward declaration of GSM 05.03 specific test vectors */
+extern const struct conv_test_vector gsm0503_vectors[];
+extern const int gsm0503_vectors_len;
+
+int main(int argc, char *argv[])
+{
+   int rc, i;
+
+   for (i = 0; i < gsm0503_vectors_len; i++) {
+   rc = do_check(&gsm0503_vectors[i]);
+   if (rc)
+   return rc;
+   }
+
+   return 0;
+}
diff --git a/tests/conv/conv_gsm0503_test.ok b/tests/conv/conv_gsm0503_test.ok
new file mode 100644
index 000..e6e2572
--- /dev/null
+++ b/tests/conv/conv_gsm0503_test.ok
@@ -0,0 +1,304 @@
+[+] Testing: gsm0503_xcch
+[.] Input length  : ret = 224  exp = 224 -> OK
+[.] Output length : ret = 456  exp = 456 -> OK
+[.] Random vector checks:
+[..] Encoding / Decoding cycle : OK
+[..] Encoding / Decoding cycle : OK
+[..] Encoding / Decoding cycle : OK
+
+[+] Testing: gsm0503_rach
+[.] Input length  : ret =  14  exp =  14 -> OK
+[.] Output length : ret =  36  exp =  36 -> OK
+[.] Random vector checks:
+[..] Encoding / Decoding cycle : OK
+[..] Encoding / Decoding cycle : OK
+[..] Encoding / Decoding cycle 

[PATCH] libosmocore[master]: tests/conv: add GSM 05.03 specific test

2017-04-29 Thread Vadim Yanitskiy
Hello Max, Harald Welte, Jenkins Builder,

I'd like you to reexamine a change.  Please visit

https://gerrit.osmocom.org/1628

to look at the new patch set (#6).

tests/conv: add GSM 05.03 specific test

This change extends the convolutional code test coverage, adding
the GSM 05.03 specific test vectors, generated by the conv_gen.py.

Inspired by Tom's patch:
http://lists.osmocom.org/pipermail/openbsc/2014-April/007364.html

Change-Id: I76d1cd4032d2f74c5bb93bde4fab99aa655b7f1a
---
M .gitignore
M tests/Makefile.am
M tests/conv/conv.h
A tests/conv/conv_gsm0503_test.c
A tests/conv/conv_gsm0503_test.ok
M tests/testsuite.at
6 files changed, 355 insertions(+), 5 deletions(-)


  git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/28/1628/6

diff --git a/.gitignore b/.gitignore
index 4c6a78f..5111b25 100644
--- a/.gitignore
+++ b/.gitignore
@@ -122,6 +122,7 @@
 include/osmocom/core/crc*gen.h
 include/osmocom/core/bit*gen.h
 include/osmocom/gsm/gsm0503.h
+tests/conv/gsm0503_test_vectors.c
 
 # vi files
 *.sw?
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 3ce7620..ce7e0cb 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -15,7 +15,8 @@
 bitvec/bitvec_test msgb/msgb_test bits/bitcomp_test\
 tlv/tlv_test gsup/gsup_test oap/oap_test fsm/fsm_test  \
 write_queue/wqueue_test socket/socket_test \
-coding/coding_test abis/abis_test
+coding/coding_test conv/conv_gsm0503_test  \
+abis/abis_test
 
 if ENABLE_MSGFILE
 check_PROGRAMS += msgfile/msgfile_test
@@ -63,6 +64,10 @@
 
 conv_conv_test_SOURCES = conv/conv_test.c conv/conv.c
 conv_conv_test_LDADD = $(top_builddir)/src/libosmocore.la 
$(top_builddir)/src/gsm/libgsmint.la
+
+conv_conv_gsm0503_test_SOURCES = conv/conv_gsm0503_test.c conv/conv.c 
conv/gsm0503_test_vectors.c
+conv_conv_gsm0503_test_LDADD = $(top_builddir)/src/libosmocore.la 
$(top_builddir)/src/gsm/libgsmint.la
+conv_conv_gsm0503_test_CPPFLAGS = -I$(top_srcdir)/tests/conv
 
 gsm0808_gsm0808_test_SOURCES = gsm0808/gsm0808_test.c
 gsm0808_gsm0808_test_LDADD = $(top_builddir)/src/libosmocore.la 
$(top_builddir)/src/gsm/libosmogsm.la
@@ -198,9 +203,11 @@
 socket/socket_test.err coding/coding_test.ok   \
 osmo-auc-gen/osmo-auc-gen_test.sh  \
 osmo-auc-gen/osmo-auc-gen_test.ok  \
-osmo-auc-gen/osmo-auc-gen_test.err
+osmo-auc-gen/osmo-auc-gen_test.err \
+conv/conv_gsm0503_test.ok
 
-DISTCLEANFILES = atconfig atlocal
+DISTCLEANFILES = atconfig atlocal conv/gsm0503_test_vectors.c
+BUILT_SOURCES = conv/gsm0503_test_vectors.c
 noinst_HEADERS = conv/conv.h
 
 TESTSUITE = $(srcdir)/testsuite
@@ -221,3 +228,7 @@
 $(TESTSUITE): $(srcdir)/testsuite.at $(srcdir)/package.m4
$(AUTOTEST) -I '$(srcdir)' -o $@.tmp $@.at
mv $@.tmp $@
+
+conv/gsm0503_test_vectors.c: $(top_srcdir)/utils/conv_gen.py 
$(top_srcdir)/utils/conv_codes_gsm.py
+   $(AM_V_GEN)python2 $(top_srcdir)/utils/conv_gen.py gen_vectors gsm \
+   --target-path $(builddir)/conv
diff --git a/tests/conv/conv.h b/tests/conv/conv.h
index 676c5af..0604859 100644
--- a/tests/conv/conv.h
+++ b/tests/conv/conv.h
@@ -1,7 +1,7 @@
 #pragma once
 
-#define MAX_LEN_BITS   512
-#define MAX_LEN_BYTES  (512/8)
+#define MAX_LEN_BITS   2048
+#define MAX_LEN_BYTES  (2048 / 8)
 
 struct conv_test_vector {
const char *name;
diff --git a/tests/conv/conv_gsm0503_test.c b/tests/conv/conv_gsm0503_test.c
new file mode 100644
index 000..6704129
--- /dev/null
+++ b/tests/conv/conv_gsm0503_test.c
@@ -0,0 +1,28 @@
+#include 
+#include 
+#include 
+#include 
+
+#include 
+#include 
+#include 
+#include 
+
+#include "conv.h"
+
+/* Forward declaration of GSM 05.03 specific test vectors */
+extern const struct conv_test_vector gsm0503_vectors[];
+extern const int gsm0503_vectors_len;
+
+int main(int argc, char *argv[])
+{
+   int rc, i;
+
+   for (i = 0; i < gsm0503_vectors_len; i++) {
+   rc = do_check(&gsm0503_vectors[i]);
+   if (rc)
+   return rc;
+   }
+
+   return 0;
+}
diff --git a/tests/conv/conv_gsm0503_test.ok b/tests/conv/conv_gsm0503_test.ok
new file mode 100644
index 000..e6e2572
--- /dev/null
+++ b/tests/conv/conv_gsm0503_test.ok
@@ -0,0 +1,304 @@
+[+] Testing: gsm0503_xcch
+[.] Input length  : ret = 224  exp = 224 -> OK
+[.] Output length : ret = 456  exp = 456 -> OK
+[.] Random vector checks:
+[..] Encoding / Decoding cycle : OK
+[..] Encoding / Decoding cycle : OK
+[..] Encoding / Decoding cycle : OK
+
+[+] Testing: gsm0503_rach
+[.] Input length  : ret =  14  exp =  14 -> OK
+[.] Output length : ret =  36  exp =  36 -> OK
+[.] Random vector checks:
+[..] Encoding / Decoding cycle : OK
+[..] Encoding / Decoding cycle : OK
+[..] Encoding / Decoding cycle : OK
+
+[+] Tes

[PATCH] libosmocore[master]: tests/conv: add GSM 05.03 specific test

2017-03-16 Thread Vadim Yanitskiy
Hello Max, Harald Welte, Jenkins Builder,

I'd like you to reexamine a change.  Please visit

https://gerrit.osmocom.org/1628

to look at the new patch set (#5).

tests/conv: add GSM 05.03 specific test

This change extends the convolutional code test coverage, adding
the GSM 05.03 specific test vectors, generated by the conv_gen.py.

Inspired by Tom's patch:
http://lists.osmocom.org/pipermail/openbsc/2014-April/007364.html

Change-Id: I76d1cd4032d2f74c5bb93bde4fab99aa655b7f1a
---
M .gitignore
M tests/Makefile.am
A tests/conv/conv_gsm0503_test.c
A tests/conv/conv_gsm0503_test.ok
M tests/testsuite.at
5 files changed, 229 insertions(+), 3 deletions(-)


  git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/28/1628/5

diff --git a/.gitignore b/.gitignore
index ecbcedd..4b198d9 100644
--- a/.gitignore
+++ b/.gitignore
@@ -121,6 +121,7 @@
 include/osmocom/core/crc*gen.h
 include/osmocom/core/bit*gen.h
 include/osmocom/gsm/gsm0503.h
+tests/conv/gsm0503_test_vectors.c
 
 # vi files
 *.sw?
diff --git a/tests/Makefile.am b/tests/Makefile.am
index f8d326e..d69a72a 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -15,7 +15,7 @@
 bitvec/bitvec_test msgb/msgb_test bits/bitcomp_test\
 tlv/tlv_test gsup/gsup_test oap/oap_test fsm/fsm_test  \
 write_queue/wqueue_test socket/socket_test \
-coding/coding_test
+coding/coding_test conv/conv_gsm0503_test
 
 if ENABLE_MSGFILE
 check_PROGRAMS += msgfile/msgfile_test
@@ -60,6 +60,9 @@
 
 conv_conv_test_SOURCES = conv/conv_test.c conv/conv.c
 conv_conv_test_LDADD = $(top_builddir)/src/libosmocore.la 
$(top_builddir)/src/gsm/libgsmint.la
+
+conv_conv_gsm0503_test_SOURCES = conv/conv_gsm0503_test.c conv/conv.c 
conv/gsm0503_test_vectors.c
+conv_conv_gsm0503_test_LDADD = $(top_builddir)/src/libosmocore.la 
$(top_builddir)/src/gsm/libgsmint.la
 
 gsm0808_gsm0808_test_SOURCES = gsm0808/gsm0808_test.c
 gsm0808_gsm0808_test_LDADD = $(top_builddir)/src/libosmocore.la 
$(top_builddir)/src/gsm/libosmogsm.la
@@ -195,9 +198,11 @@
 socket/socket_test.err coding/coding_test.ok   \
 osmo-auc-gen/osmo-auc-gen_test.sh  \
 osmo-auc-gen/osmo-auc-gen_test.ok  \
-osmo-auc-gen/osmo-auc-gen_test.err
+osmo-auc-gen/osmo-auc-gen_test.err \
+conv/conv_gsm0503_test.ok
 
-DISTCLEANFILES = atconfig atlocal
+DISTCLEANFILES = atconfig atlocal conv/gsm0503_test_vectors.c
+BUILT_SOURCES = conv/gsm0503_test_vectors.c
 
 TESTSUITE = $(srcdir)/testsuite
 
@@ -217,3 +222,7 @@
 $(TESTSUITE): $(srcdir)/testsuite.at $(srcdir)/package.m4
$(AUTOTEST) -I '$(srcdir)' -o $@.tmp $@.at
mv $@.tmp $@
+
+conv/gsm0503_test_vectors.c: $(top_srcdir)/utils/conv_gen.py 
$(top_srcdir)/utils/conv_codes_gsm.py
+   $(AM_V_GEN)python2 $(top_srcdir)/utils/conv_gen.py gen_vectors gsm \
+   --target-path $(builddir)/conv
diff --git a/tests/conv/conv_gsm0503_test.c b/tests/conv/conv_gsm0503_test.c
new file mode 100644
index 000..1b0a724
--- /dev/null
+++ b/tests/conv/conv_gsm0503_test.c
@@ -0,0 +1,27 @@
+#include 
+#include 
+#include 
+#include 
+
+#include 
+#include 
+#include 
+#include 
+#include 
+
+/* Forward declaration of GSM 05.03 specific test vectors */
+extern const struct conv_test_vector gsm0503_vectors[];
+extern const int gsm0503_vectors_len;
+
+int main(int argc, char *argv[])
+{
+   int rc, i;
+
+   for (i = 0; i < gsm0503_vectors_len; i++) {
+   rc = do_check(&gsm0503_vectors[i]);
+   if (rc)
+   return rc;
+   }
+
+   return 0;
+}
diff --git a/tests/conv/conv_gsm0503_test.ok b/tests/conv/conv_gsm0503_test.ok
new file mode 100644
index 000..05761f2
--- /dev/null
+++ b/tests/conv/conv_gsm0503_test.ok
@@ -0,0 +1,183 @@
+[+] Testing: gsm0503_xcch
+[.] Input length  : ret = 224  exp = 224 -> OK
+[.] Output length : ret = 456  exp = 456 -> OK
+[.] Random vector checks:
+[..] Encoding / Decoding cycle : OK
+[..] Encoding / Decoding cycle : OK
+[..] Encoding / Decoding cycle : OK
+
+[+] Testing: gsm0503_rach
+[.] Input length  : ret =  14  exp =  14 -> OK
+[.] Output length : ret =  36  exp =  36 -> OK
+[.] Random vector checks:
+[..] Encoding / Decoding cycle : OK
+[..] Encoding / Decoding cycle : OK
+[..] Encoding / Decoding cycle : OK
+
+[+] Testing: gsm0503_sch
+[.] Input length  : ret =  35  exp =  35 -> OK
+[.] Output length : ret =  78  exp =  78 -> OK
+[.] Random vector checks:
+[..] Encoding / Decoding cycle : OK
+[..] Encoding / Decoding cycle : OK
+[..] Encoding / Decoding cycle : OK
+
+[+] Testing: gsm0503_cs2
+[.] Input length  : ret = 290  exp = 290 -> OK
+[.] Output length : ret = 456  exp = 456 -> OK
+[.] Random vector checks:
+[..] Encoding / Decoding cycle : OK
+[..] Encoding / Decoding cycle : OK
+[..] Encoding / Decoding cycle : OK
+
+[+] Te

libosmocore[master]: tests/conv: add GSM 05.03 specific test

2017-03-15 Thread Tom Tsou

Patch Set 4:

> I think we should refer to latest version of the standard in here
 > which is 3GPP TS 45.003 and if the test vectors are part of the
 > spec than we should even refer to particular §.

The older 3GPP specification naming (05.03) is still used throughout - 
filenames for example. Perhaps refer to both '45' and '05' standard prefixes?

-- 
To view, visit https://gerrit.osmocom.org/1628
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I76d1cd4032d2f74c5bb93bde4fab99aa655b7f1a
Gerrit-PatchSet: 4
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Owner: Vadim Yanitskiy 
Gerrit-Reviewer: Harald Welte 
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: Max 
Gerrit-Reviewer: Neels Hofmeyr 
Gerrit-Reviewer: Tom Tsou 
Gerrit-Reviewer: Vadim Yanitskiy 
Gerrit-Reviewer: tnt 
Gerrit-HasComments: No


libosmocore[master]: tests/conv: add GSM 05.03 specific test

2017-03-15 Thread Max

Patch Set 4:

I think we should refer to latest version of the standard in here which is 3GPP 
TS 45.003 and if the test vectors are part of the spec than we should even 
refer to particular §.

-- 
To view, visit https://gerrit.osmocom.org/1628
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I76d1cd4032d2f74c5bb93bde4fab99aa655b7f1a
Gerrit-PatchSet: 4
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Owner: Vadim Yanitskiy 
Gerrit-Reviewer: Harald Welte 
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: Max 
Gerrit-Reviewer: Neels Hofmeyr 
Gerrit-Reviewer: Tom Tsou 
Gerrit-Reviewer: Vadim Yanitskiy 
Gerrit-Reviewer: tnt 
Gerrit-HasComments: No


libosmocore[master]: tests/conv: add GSM 05.03 specific test

2017-03-15 Thread Harald Welte

Patch Set 4:

the address sanitizer bug will have to be resolved first, befor the patch is 
verified and can be merged: 

+=
+==23280==ERROR: AddressSanitizer: heap-buffer-overflow on address 
0x6150d700 at pc 0x7f490faf014e bp 0x7fff5635a060 sp 0x7fff5635a058
+WRITE of size 1 at 0x6150d700 thread T0
+#0 0x7f490faf014d in _conv_encode_do_output 
/home/osmocom-build/jenkins/workspace/libosmocore-gerrit/label/linux_amd64_debian8/src/conv.c:130
+#1 0x7f490faf014d in osmo_conv_encode_raw 
/home/osmocom-build/jenkins/workspace/libosmocore-gerrit/label/linux_amd64_debian8/src/conv.c:156
+#2 0x7f490faf16fb in osmo_conv_encode 
/home/osmocom-build/jenkins/workspace/libosmocore-gerrit/label/linux_amd64_debian8/src/conv.c:226
+#3 0x401608 in do_check conv/conv.c:109
+#4 0x400ed7 in main conv/conv_gsm0503_test.c:21
+#5 0x7f490e603b44 in __libc_start_main 
(/lib/x86_64-linux-gnu/libc.so.6+0x21b44)
+#6 0x400fb6 
(/home/osmocom-build/jenkins/workspace/libosmocore-gerrit/label/linux_amd64_debian8/tests/conv/.libs/lt-conv_gsm0503_test+0x400fb6)
+
+0x6150d700 is located 0 bytes to the right of 512-byte region 
[0x6150d500,0x6150d700)
+allocated by thread T0 here:
+#0 0x7f490fdd173f in malloc 
(/usr/lib/x86_64-linux-gnu/libasan.so.1+0x5473f)
+#1 0x4010b7 in do_check conv/conv.c:26
+
+SUMMARY: AddressSanitizer: heap-buffer-overflow 
/home/osmocom-build/jenkins/workspace/libosmocore-gerrit/label/linux_amd64_debian8/src/conv.c:130
 _conv_encode_do_output

More details see 
http://jenkins.osmocom.org/jenkins/job/libosmocore-gerrit/851/label=linux_amd64_debian8/console

-- 
To view, visit https://gerrit.osmocom.org/1628
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I76d1cd4032d2f74c5bb93bde4fab99aa655b7f1a
Gerrit-PatchSet: 4
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Owner: Vadim Yanitskiy 
Gerrit-Reviewer: Harald Welte 
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: Max 
Gerrit-Reviewer: Neels Hofmeyr 
Gerrit-Reviewer: Tom Tsou 
Gerrit-Reviewer: Vadim Yanitskiy 
Gerrit-Reviewer: tnt 
Gerrit-HasComments: No