Commit Graph

1289 Commits

Author SHA1 Message Date
Oliver Smith 61469d1d86 Fix DISTCHECK_CONFIGURE_FLAGS override
Set AM_DISTCHECK_CONFIGURE_FLAGS in Makefile.am instead of
DISTCHECK_CONFIGURE_FLAGS. This is the recommended way from the
automake manual, as otherwise the flag can't be changed by the user
anymore.

Related: OS#3718
Change-Id: I10d1eef9838c0b843a3a4103b7b03e8e9457b69e
2018-12-04 15:31:28 +01:00
Oliver Smith 47aab58ec3 build manuals moved here from osmo-gsm-manuals.git
Moved to doc/manuals/, with full commit history, in preceding merge commit.
Now incorporate in the build system.

Build with:

$ autoreconf -fi
$ ./configure --enable-manuals
$ make

Shared files from osmo-gsm-manuals.git are found automatically if
- the repository is checked out in ../osmo-gsm-manuals; or
- if it osmo-gsm-manuals was installed with "make install"; or
- OSMO_GSM_MANUALS_DIR is set.

Related: OS#3385
Change-Id: I7270652de393a98748c0cdc51e626c17ab8f44c2
2018-11-27 18:30:56 +01:00
Neels Hofmeyr dfb08d31fe Merge history from osmo-gsm-manuals.git
Change-Id: I33ce528bb58a8a730a15cc8a7a74852a14f42921
2018-11-27 18:30:39 +01:00
Daniel Willmann 96481c8d3f Change OpenBSC mentions to OsmoBSC where applicable
Change-Id: I4cc6874302b6089a54d44b09f08660a25e46d4dc
2018-11-27 18:30:23 +01:00
Harald Welte 2eeddee132 vty-ref: Update URI of docbook 5.0 schema
... to match the /etc/xml/catalog file on debian (no "www" in hostname)

Change-Id: Id9f3579c7f2bc3af13fe30b5268f249b6f59ed0d
2018-11-27 18:30:23 +01:00
Alexander Couzens 57d91ea785 OsmoPCU: add rate counter documentation
Change-Id: Ieb4e1dab415a70ded5c65c21752dca497856e96f
2018-11-27 18:30:23 +01:00
Neels Hofmeyr d2829b89c1 refactor Makefile build rules, don't use the FORCE
The initial goal was to make sure we don't have overall FORCE rules causing
unnecessary rebuilds -- annoying while writing documentation. As I looked
through possible dependencies, I finally understood what's going on here.

Remove code dup and nicely sort which belongs where in build/Makefile.*.inc. In
each, describe in a top comment how to use it, and also unify how they are
used:

- Rename Makefile.inc to Makefile.docbook.inc and refactor
- Add Makefile.vty-reference.inc
- Add Makefile.common.inc

Make sure that we accurately pick up all dependencies.

Drop use of the macro called 'command', that silenced the actual command lines
invoked and replaced them with short strings: it obscures what is actually
going on and makes the Makefiles hard to read and understand.

Each manual's makefile is greatly reduced to few definitions and a Makefile
include, e.g. one for asciidoc, one for VTY reference.

Move common/bsc_vty_additions.xml to OsmoBSC/vty/libbsc_vty_additions.xml, link
from OsmoNITB. It applies only to OsmoBSC and OsmoNITB.

Add a script that combines a VTY reference file with *all* additions files
found in a manual's vty/ dir. Call this from Makefile.vty-reference.inc.

Change-Id: I9758e04162a480e28c7dc83475b514cf7fd25ec0
2018-11-27 18:30:23 +01:00
Pau Espin f605f3d891 Allow easily disabling GFDL references
All parts referencing GFDL can be easily disabled by removing the
'gfdl-enabled' attribute from the document.

Change-Id: I2489726ad2e90301bceadfada926e31ae0f85986
2018-11-27 18:30:23 +01:00
Philipp Maier 452b533114 configuration: fixing typos
configuration.adoc has some minor typos in it, this commit fixes
that.

Change-Id: Id84238b89e5deeac99c043b79b26c7e7b8b8534b
2018-11-27 18:30:23 +01:00
Neels Hofmeyr 5c8f1ccff0 fix 'make clean': shell glob, ignore failure
Unfortunately a glob like osmo-x__*.{svg,png} doesn't work, so have the
suffixes in separate globs.

Add dashes to indicate that failure should be ignored.

Change-Id: I6bc4d9ea72b43a573acbc860c23397f748de2c7b
2018-11-27 18:30:23 +01:00
Neels Hofmeyr 6bc5c2aac6 add 'make check' target
Generate *.check files from asciidoc output and grep for WARNINGs.
Add *.check files to gitignore and to 'make clean'.

Change-Id: Ibccc83a3415930a528f2e8e4e4dda3b81c6d0b64
2018-11-27 18:30:23 +01:00
Neels Hofmeyr 5828b60af5 make clean: also remove generated image files
Change-Id: I80798e79b4ccee64f26f58f9754de02b2958e33e
2018-11-27 18:30:23 +01:00
Jonathan Brielmaier 58721eb350 fix various typos across all manuals 2018-11-27 18:30:23 +01:00
Harald Welte 6fb29639df gb/NS: Clarify the language regarding the UDP port numbers / socket 2018-11-27 18:30:23 +01:00
Harald Welte 032f94b099 consistently use '3GPP TS' not sometimes 3GPP TS and sometimes TS. 2018-11-27 18:30:23 +01:00
Harald Welte 32b58e6418 gb: Some language improvements, formatting changes 2018-11-27 18:30:23 +01:00
Harald Welte a27873f1e2 Gb: Various spelling fixes 2018-11-27 18:30:23 +01:00
Harald Welte 3a89f21540 Gb message sequence chart: Add notion of PCU unix domain socket 2018-11-27 18:30:23 +01:00
Harald Welte d930b4d5f4 Gb message sequence chart: flip sides (SGSN should be right)
... also, re-word some of th labels for more clarity
2018-11-27 18:30:23 +01:00
Max 8f934f55d7 OsmoPCU: add MSC chart 2018-11-27 18:30:23 +01:00
Max b1776b65b3 OsmoPCU: expand BSSGP documentation 2018-11-27 18:30:23 +01:00
Max 4e2a1e3e98 OsmoPCU: expand NS documentation
Add table with NS messages.
Add corresponding sections.
Clarify spec numbers.
2018-11-27 18:30:23 +01:00
Max c182b98998 OsmoPCU: fix Gb documentation front page
Add date and commit refs.
Add relevant standards.
Fix email typo.
2018-11-27 18:30:23 +01:00
Harald Welte b682cd6a51 Initial place-holder for the new Gb/IP interface documentation 2018-11-27 18:30:23 +01:00
Harald Welte 4095f31fea Add link to Asciidoc source code of manual 2018-11-27 18:30:23 +01:00
Harald Welte 4ff37feb4c initial checkin of manuals to public repo
The manuals existed in different form for several years in an internal
sysmocom repository.  However, since they had just recently been
converted from docboox-xml to asciidoc and all files have been
re-shuffled for enabling the public release, there's not much point in
keeping the history with git-filter-branch.
2018-11-27 18:30:23 +01:00
Neels Hofmeyr b9ba5ad239 Importing history from osmo-gsm-manuals.git
Change-Id: I23320be18612dd1eb800d3b16594166f33b3d984
2018-11-27 18:30:08 +01:00
Max 4214c4ae53 deb: add missing copyright file
File is imported as-is from current .deb package

Change-Id: Ib05480c0eea91bfb55bfc7ab446ea60932096d3d
2018-11-07 14:20:27 +01:00
Harald Welte 099f4f2169 gprs_rlcmac_received_lost(): Fix regression / uninitialized now_tv
In Change-Id I7d22e7b5902c230efeae66eb20c17026a4037887 we
introduced the use of timespecsub(). Unfortuantely, we also
accidentially removed the call to osmo_clock_gettime() along
with it, leaving now_tv completely uninitialized.

Change-Id: Ieced0c62700b2fe4ab0208258183154cc701490b
Related: OS#3225
Fixes: Coverity CID#188872
2018-10-21 11:50:10 +02:00
Stefan Sperling 173d7fdbb9 check for overlong unix socket paths
In pcu_l1if_open(), use osmo_strlcpy() instead of strncpy() and check for
overflow. This catches overlong and non-NUL-terminated socket paths.

Change-Id: I825190cbb34d052b797e9fb5208884d6f5992839
Related: OS#2673
2018-09-20 18:31:36 +02:00
Pau Espin 076122f592 Install osmo-pcu.cfg to docdir/examples
Change-Id: I42938d9abd17575c2e0ce69cc20d44a131f26b6a
2018-09-13 11:36:01 +02:00
Pau Espin ac5e3e222a Move examples/ to doc/examples/
Change-Id: I1e163e10f8a2e22b9ebdcb2d0f13f6ad07c84efe
2018-09-13 11:36:01 +02:00
Pau Espin 516697e29a Install systemd services with autotools
Change-Id: Ie4c7e81495181059d1dff1c194d52d11fb72ed03
2018-09-10 16:09:54 +02:00
Pau Espin 3e9c071aa6 configure.ac: Set CXXFLAGS during --enable-sanitize
For some unknown reason ld was failing to find some asan symbols until I
enabled asan too in CXXFLAGS.

Change-Id: I695314b284277674dc336b40765313a37d238d6e
2018-09-10 14:52:21 +02:00
Pau Espin e63c72acfb Cleanup of systemd service files
Let's use a symlink in debian/ as we do in other projects,
and merge the two service files since anyway they call the same binary.

Change-Id: Ibd82ec12cbeb73a27ca5860266587efb58be14ab
2018-09-06 15:06:22 +02:00
Harald Welte 54af2dba78 debian/rules: Don't overwrite .tarball-version
The .tarball-version file should contain the *source version* uniquely
identifying the git commit, and not the Debian package name.

With https://gerrit.osmocom.org/#/c/osmo-ci/+/10343/ there is a correct
.tarball-version file in the .tar.xz of the nightly source packages.

Change-Id: I093c9c1943e5f09d8f91f94af438f697a93e7127
Related: OS#3449
2018-08-06 11:18:24 +02:00
Pau Espin 448750e4e2 Bump version: 0.5.0.11-218e-dirty → 0.5.1
Change-Id: I0c5a3f3cee8332d5088982117037d5a0b077061b
2018-07-27 21:56:39 +02:00
Pau Espin 218ee98de0 tbf: Replace '.' in counter names with ':'
The '.' is illegal character in counter names, as they are exported
via CTRL interface, where '.' has a special meaning that cannot be
used by strings comprising the variable name.

Change-Id: Ieb7496e1a30ab4f2bfe36c7b664dcdc034010a15
2018-07-11 22:20:31 +02:00
Pau Espin 09269017d3 tbf: Use incrementing id for rate_ctr_group_alloc
Wrap-around of var handling next id will luckly happen
long after initially assigned TBFs are already released.

Change-Id: I90ef64133986c556c1a529f5b966e847e6cabbad
2018-07-11 22:20:31 +02:00
Stefan Sperling 3df1532e97 check bssgp_tlv_parse() return code in gprs_bssgp_pcu_rcvmsg()
The return code from bssgp_tlv_parse() was not checked for a parsing
error. In case of a parsing error the stored return code could have
been overwritten later in this function.

Explicitly check for a parsing error, log corresponding packets,
and return an "invalid mandatory information" error status to
the sender. To avoid loops, do not respond with an error status
to STATUS PDUs.

Change-Id: I56e10a97cda7fd2d40bc7b4b2e6202f97772e1b3
Related: OS#3178
2018-06-25 13:02:06 +02:00
Pau Espin e176a4d047 jenkins.sh: use flag --enable-werror for sysmo and none
The lc15 flavour still contains compilation warnings and thus the flag
cannot be enabled while building it.

Change-Id: I66a43822f8a40764d7d6e09503892cea6030e697
2018-06-20 23:30:40 +02:00
Stefan Sperling 082443d2c7 change log level of "DL packet loss" log messages
The TBF tests are failing on some machines due to unexpected
log output: "DL packet loss of IMSI= / TLLI=0xffeeddcc: 0%"
These messages are printed if >= 1 second has passed between
loss reports. This timing is machine-dependent so the test
is unstable as a result. Only print these messages at log
level debug to (hopefully) make TBF tests pass consistently.
Update expected test output accordingly.

Change-Id: Ie43f0e3a8740f0fc132809a09a153886c51fadf9
2018-06-05 11:42:12 +02:00
Stefan Sperling 78ab624c2a fix time-delta calculations for measurement reports
The previous implementation unconditionally subtracted nanosecond
values from different time measurements, causing overflow if the
current measurement was taken in less of a fraction of a second
than the past measurement. Use timespecsub() instead, which
accounts for nanoseconds correctly.

Also, fix calculations of KBit/s throughtput. It was not being
calculated correctly, since it was actually accounting for one
KB per 128th-part-of-a-second.

Change-Id: I7d22e7b5902c230efeae66eb20c17026a4037887
Related: OS#3225
2018-05-31 14:12:58 +02:00
Stefan Sperling f0f7df1b87 read monotonic clock with clock_gettime() instead of gettimeofday()
There have been test failures on the osmo-pcu Jenkins builders due
to apparent clock drift. Switch relevant code from gettimeofday()
to clock_gettime() with CLOCK_MONOTONIC to prevent time from going
backwards and causing negative time deltas in calculations.

Change-Id: I775d85d0d3ac740330879e588bdab6fce7f0b46c
Related: OS#3225
2018-05-25 17:33:06 +00:00
Stefan Sperling 143b2da4f8 fix a one-byte stack buffer overrun in osmo-pcu
Address sanitizer uncovered a one-byte stack overrun due to an
off-by-one in the size of the 'data' buffer in pcu_l1if_tx_pch().
Fix the problem and add an assertion which triggers before the
overrun can occur.

Change-Id: I08a879d72fcb916f78f175612fd90467d7bdd57c
Related: OS#3289
2018-05-25 15:19:50 +02:00
Pau Espin 7a9c1660cc rlc: Fix memset(0) on object with no trivial copy-assignment
As warned by gcc 8.1.0, the cs field is a class (GprsCodingScheme) and
should not be memset.

Change-Id: Id742f82aa856e696b5fb414991dfd0883d0ac7fe
2018-05-16 15:22:27 +02:00
Pau Espin 0b0748a4be tbf: Fix memset(0) on object with no trivial copy-assignment
As warned by gcc 8.1.0:
osmo-pcu/src/tbf.cpp: In constructor ‘gprs_rlcmac_tbf::gprs_rlcmac_tbf(BTS*, gprs_rlcmac_tbf_direction)’:
osmo-pcu/src/tbf.cpp:222:33: error: ‘void* memset(void*, int, size_t)’ clearing an object of type ‘struct gprs_rlc’ with no trivial copy-assignment; use assignment or value-initialization instead [-Werror=class-memaccess]
  memset(&m_rlc, 0, sizeof(m_rlc));
                                 ^
In file included from osmo-pcu/src/tbf.h:24,
                 from osmo-pcu/src/bts.h:37,
                 from osmo-pcu/src/tbf.cpp:22:
osmo-pcu/src/rlc.h:234:8: note: ‘struct gprs_rlc’ declared here
 struct gprs_rlc {
        ^~~~~~~~

Change-Id: Ifb0529b9ae6cd4300e5cbbd9151054792edbfe06
2018-05-16 15:20:43 +02:00
Harald Welte 45143d270c Don't register SIGHUP handler without actually handling SIGHUP
In libosmocore, we normally register a SIGHUP handler for log file
rotation.

However, the osmo-pcu code so far installed its own signal handler,
which did exactly nothing in the SIGHUP case.

Let's fix this by removing SIGHUP handling here, letting libosmocore
take care about this.

Change-Id: Ifa20d79770bc4d88d40601b008a3a2a79d083c04
Closes: OS#3265
2018-05-15 16:23:04 +02:00
Pau Espin f1a334be63 Bump version: 0.4.0.115-513c-dirty → 0.5.0
Change-Id: I6ce6fb40690a66b0980eba4fa03b47da2f59ee6e
2018-05-03 16:20:01 +02:00
Stefan Sperling 513c9bca17 improve documentation of Encoding::write_paging_request()
Add pointers to relevant parts of the spec. Tweak comments to be
more specific about the values being written and abbreviations used.

Change-Id: Ia5bf3f7f8846198b7b4e25ff1accf6206764be74
2018-05-02 14:53:16 +02:00