| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
This adds and improves doxygen API descriptions all over libosmocore,
reducing the 'white spots' that don't have any documentation.
|
| |
|
|
|
|
|
|
| |
The definitions in this header file (and associated strings in the
c file) are generic about the GPRS Layer3 signalling protocols, and
thus should be part of the library.
|
|
|
|
|
| |
This is e.g. quite useful to call at the end of test code, in order to
show that all memory allocated actually is released before exit().
|
|
|
|
|
| |
This function performs the C5+C4 conversion to derive UMTS key
material from a 2G-only subscriber.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The script does not work with python3:
$ python3 utils/conv_gen.py
File "utils/conv_gen.py", line 124
def _print_term(self, fi, num_states, pack = False):
Second there is no 'python' on FreeBSD and one needs to select
the major version to use.
GEN conv_cs3_gen.c
GEN conv_xcch_gen.c
GEN conv_cs2_gen.c
python: not found
python: not found
python: not found
By using python2 we solve both issues. On Debian python2 is located
inside the python-minimal package.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Extend the u8 to u32 before going to shift it.
Fixes:
milenage/aes-internal.c:799:4: runtime error: left shift of 128 by 24 places cannot be represented in type 'int'
#0 0x7f84e9fe86a2 in rijndaelKeySetupEnc (/home/builder/jenkins/workspace/Osmocom_Sanitizer/source/libosmocore/src/gsm/.libs/libosmogsm.so.5+0xfa6a2)
#1 0x7f84e9febad8 in aes_encrypt_init (/home/builder/jenkins/workspace/Osmocom_Sanitizer/source/libosmocore/src/gsm/.libs/libosmogsm.so.5+0xfdad8)
#2 0x7f84e9fe7d14 in aes_128_encrypt_block (/home/builder/jenkins/workspace/Osmocom_Sanitizer/source/libosmocore/src/gsm/.libs/libosmogsm.so.5+0xf9d14)
#3 0x7f84e9febe7d in milenage_f1 (/home/builder/jenkins/workspace/Osmocom_Sanitizer/source/libosmocore/src/gsm/.libs/libosmogsm.so.5+0xfde7d)
#4 0x7f84e9fee2ce in milenage_generate (/home/builder/jenkins/workspace/Osmocom_Sanitizer/source/libosmocore/src/gsm/.libs/libosmogsm.so.5+0x1002ce)
#5 0x7f84e9fe76d7 in milenage_gen_vec (/home/builder/jenkins/workspace/Osmocom_Sanitizer/source/libosmocore/src/gsm/.libs/libosmogsm.so.5+0xf96d7)
#6 0x7f84e9fe6c08 in osmo_auth_gen_vec (/home/builder/jenkins/workspace/Osmocom_Sanitizer/source/libosmocore/src/gsm/.libs/libosmogsm.so.5+0xf8c08)
#7 0x401441 in main (/home/builder/jenkins/workspace/Osmocom_Sanitizer/source/libosmocore/tests/auth/.libs/lt-milenage_test+0x401441)
#8 0x7f84e8e33a3f in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x20a3f)
#9 0x400e58 in _start (/home/builder/jenkins/workspace/Osmocom_Sanitizer/source/libosmocore/tests/auth/.libs/lt-milenage_test+0x400e58)
|
|
|
|
|
|
|
|
|
|
|
| |
Hopefully last patch:
ERROR: files left in build directory after distclean:
./doc/libosmocore.tag
./doc/libosmovty.tag
./doc/libosmogsm.tag
./doc/libosmocodec.tag
Makefile:800: recipe for target 'distcleancheck' failed
|
|
|
|
| |
Use /* to remove the files
|
|
|
|
|
|
|
|
|
|
|
| |
Try to fix this by putting the search directory first as I don't
know how to pass -r to the RM command.
rm -f doc/{core,gsm,vty,codec}/{html,latex}/* doc/html.tar doc/{core,gsm,vty,codec}/doxygen_sqlite3.db
rm: cannot remove ‘doc/core/html/search’: Is a directory
rm: cannot remove ‘doc/gsm/html/search’: Is a directory
rm: cannot remove ‘doc/vty/html/search’: Is a directory
rm: cannot remove ‘doc/codec/html/search’: Is a directory
|
|
|
|
|
|
| |
According to https://www.debian.org/doc/debian-policy/ch-sharedlibs.html
and http://packaging.ubuntu.com/html/libraries.html that's where it
belongs.
|
|
|
|
| |
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
|
|
|
|
| |
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
|
|
|
|
|
|
|
|
| |
gprs_bssgp.c:461:9: runtime error: load of misaligned address
0x62100001a66b for type 'uint32_t', which requires 4 byte alignment
gprs_ns.c:937:16: runtime error: load of misaligned address
0x61d00002a97f for type 'uint16_t', which requires 2 byte alignment
|
|
|
|
|
| |
Add convenience function to append range1024 encoded data (see 3GPP TS
44.018 Annex J) to a given bitvec.
|
|
|
|
|
| |
Mark function as deprecated to discourage its usage: people should use
generic API in osmocom/crypt/auth.h
|
|
|
|
|
| |
Mark the functions as deprecated to discourage their use: people should
use unified osmo_a5 which supports all the A5/1-4 ciphers.
|
|
|
|
| |
Use generic functions covered by testsuit for SQN calculations.
|
|
|
|
|
| |
Update internal API (for GPRS cipher implementors): make it compliant
with ETSI TS 155.22. External API left untouched.
|
|
|
|
|
| |
Add classmark check function according to GSM 04.08 Chapter 10.5.1.7
Fix interface to use unsigned for unsigned value.
|
|
|
|
|
|
| |
This function returns the number of bits necessary to pack osmo_earfcn
into Repeated E-UTRAN Neighbour Cells IE (3GPP TS 44.018 Table
10.5.2.33b.1).
|
| |
|
|
|
|
|
| |
Like jenkins we want to see what is actually being executed
and fail if a subcommand has failed.
|
|
|
|
|
|
| |
The actual script (removed unused and commented out handling) as
invoked by jenkins. This can be used to locally try to reproduce
the build.
|
|
|
|
|
| |
Move functions for conversion between soft and unpacked bits to main
library as they are generally useful.
|
|
|
|
| |
[hfreyther: To be used by osmo-pcu]
|
|
|
|
| |
Fixes the build failure with extended tests enabled.
|
|
|
|
|
| |
It's useful for debugging and is similar to existing reset command for
nsvc.
|
|
|
|
|
| |
The osmo-sip-connector is a new application and is a MNCC to SIP
bridge. It is not implementing transcoding or RTP proxying at all.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
To integrate with an external event loop (in this case glib) we
need to allow an application to get a filled out fd_set and then
dispatch it. osmo_fds and maxfds are static and I decided to keep
it that way and instead create two routines to fill the fdset and
then one to dispatch the result.
The public header file does not include sys/select.h and we can
compile the library without select, so I didn't want to require
having to include this file, and used void * for the parameter.
Mark the routines as inline to avoid a call from the select
function. I have confirmed that inlining has an effect on x86
using Debian's gcc-4.9.2-10 compiler
|
|
|
|
| |
This can be used with get_value_string() to improve debugging output.
|
| |
|
| |
|
|
|
|
|
|
| |
This function can be used to obtain the osmo_fd corresponding to a given
fd. The latter can be useful when integrating libosmocore main loop
with other libraries.
|
| |
|
|
|
|
|
| |
The tables permit code to determine the APDU class of an APDU
based on it APDU/TPDU header (CLA/INS/P1/P2/P3).
|
|
|
|
|
| |
Print string representation of Cause IE and PDU type instead of
numerical value.
|
| |
|
| |
|
|
|
|
| |
This reverts commit f451ce66eb8206bad1078849723edcb209632834.
|
|
|
|
| |
Signed-off-by: Vadim Yanitskiy <axilirator@gmail.com>
|
|
|
|
|
|
| |
Add structure representing group of EARFCNs with common priority,
threshold etc.
Add functions to populate this structure.
|
|
|
|
|
|
|
|
|
| |
Add function which adds specified number of bits from each element of
array to the bit vector prefixing each addition with one and finishing
entire sequence with adding 0. This is very common patter for various
repetitive data structures described with CSN.1 in 3GPP standards.
Corresponding test vectors and doxygen headers are added too.
|
|
|
|
|
|
|
|
|
|
| |
For 3G, I need a BCD composer/parser similar to gsm48_generate_lai()/
gsm48_decode_lai(). Those functions also handle a trivial extra
member (lac) which I don't need in this way for 3G.
So create new functions to take on the MCC+MNC BCD handling and call those
from gsm48_generate_lai() and gsm48_decode_lai(). In this way, the 3G code
in openbsc can use only the BCD functionality without code duplication.
|
|
|
|
|
|
| |
Various users of gsm48_hdr apply the same hardcoded shifts/bitmasks to obtain
the transaction ID encoded in the upper nibble of the protocol discriminator.
Centralize. Patch for openbsc.git will follow.
|
|
|
|
|
| |
[hfreyther: Separated from the previous patch to allow an easy
revert]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add inline functions for both release <= 98 and release >= 99 as well as a
default define. Use the release 98 by default since the current code base uses
the r98 bitmasks.
These inline functions relieve callers of the decision on masking bits of the
protocol discriminator and message type octets.
Also add a define for the protocol discriminator extension to one octet length
(GSM48_PDISC_EXTEND).
Apply new pdisc function in gsm0480.c.
[hfreyther: Make the hdr param const]
|
| |
|