Attention is currently required from: pespin.
Hello Jenkins Builder, pespin,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-trx/+/43112?usp=email
to look at the new patch set (#7).
The following approvals got outdated and were removed:
Code-Review+1 by pespin, Verified+1 by Jenkins Builder
Change subject: libosmo-trx/ep: flush pending TRXC messages on endpoint teardown
......................................................................
libosmo-trx/ep: flush pending TRXC messages on endpoint teardown
osmo_trx_ep_close() used to drop any still-queued ctrl socket Tx data
via osmo_iofd_free(), including a 'goodbye' TRXC message (i.e. "CMD
POWEROFF") that may have just been enqueued right before teardown.
Track bytes still pending on each channel's ctrl_iofd (ctrl_wr_pending)
and, if any remain at close() time, swap the iofd's write_cb instead of
freeing it right away: keep waiting until every enqueued byte has
actually completed (or a write fails), then finally free it. Data
sockets and pending Tx data batches (TRXDv2 batching) are still
dropped immediately, as before.
Expose the "still flushing" state via the new osmo_trx_ep_is_closing(),
so a caller can tell it apart from fully closed: re-opening the same
ports while a flush is still in flight would otherwise risk a confusing
EADDRINUSE, so osmo_trx_ep_open() and osmo_trx_ep_set_num_chans() now
return -EBUSY in that case. osmo_trx_ep_free() called while still
closing reparents the whole endpoint to OTC_GLOBAL and defers the
actual free until the last flush completes, instead of dropping
the still-in-flight state.
This follows the async-flush pattern used by osmo-pcap's
osmo_pcap_wr_file_flush()/_is_flushing(), adapted to the osmo_io API
(there is no osmo_iofd_flush()).
Change-Id: I69e6a3bcf49afc3cfca4a72afdf459625cb91e56
---
M libosmo-trx/include/osmocom/trx/ep.h
M libosmo-trx/src/trx_ep.c
M tests/libosmo-trx/trx_ep_test.c
M tests/libosmo-trx/trx_ep_test.err
M tests/libosmo-trx/trx_ep_test.ok
5 files changed, 297 insertions(+), 10 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-trx refs/changes/12/43112/7
--
To view, visit https://gerrit.osmocom.org/c/osmo-trx/+/43112?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newpatchset
Gerrit-Project: osmo-trx
Gerrit-Branch: master
Gerrit-Change-Id: I69e6a3bcf49afc3cfca4a72afdf459625cb91e56
Gerrit-Change-Number: 43112
Gerrit-PatchSet: 7
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Attention is currently required from: laforge, pespin.
Hello Jenkins Builder, laforge, pespin,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-trx/+/43111?usp=email
to look at the new patch set (#8).
The following approvals got outdated and were removed:
Code-Review+1 by laforge, Code-Review+1 by pespin, Verified+1 by Jenkins Builder
Change subject: libosmo-trx/ep: add TRX endpoint module
......................................................................
libosmo-trx/ep: add TRX endpoint module
Add the osmo_trx_ep module, encapsulating the clock/ctrl/data UDP
socket management of the TRX protocol on top of osmo_io. One endpoint
serves an (optional) clock socket plus N channels, each channel being
a ctrl + data socket pair.
The module is role-neutral: struct osmo_trx_ep_cfg carries a mode
(OSMO_TRX_EP_MODE_{L1,TRX}) selecting which side of the protocol the
endpoint implements. The mode is needed to parse datagrams received
on the data sockets, as the wire format alone does not identify the
direction (BURST.ind vs BURST.req). All local and remote ports are
derived from a single base port (default: 5700).
To avoid indirect calls on the hot path, the decoded Rx handlers
(osmo_trx_ep_rx_*) are plain function prototypes bound at link-time,
not function pointers. The library provides weak default stubs to
stay link-complete (-no-undefined), so applications only implement
the handlers for the directions they consume, overriding the stubs.
The Tx path implements TRXDv2 PDU batching for burst requests:
osmo_trx_ep_send_burst_req() accumulates PDUs until it is called
with br == NULL (the batching breaker), like in osmo-bts-trx.
osmo-trx itself will not adopt this module: its per-channel/thread
socket ownership model (dedicated blocking-read threads per socket)
is incompatible with osmo_io's single-select-loop dispatch. It is
meant for osmo-bts, osmocom-bb/trxcon, and the upcoming C rewrite
of fake_trx (osmo-trx-proxy).
Change-Id: I767fa43a9ca88be40c385f6dcb9de22891a6afc3
---
M .gitignore
M libosmo-trx/include/Makefile.am
A libosmo-trx/include/osmocom/trx/ep.h
M libosmo-trx/src/Makefile.am
A libosmo-trx/src/trx_ep.c
M tests/libosmo-trx/Makefile.am
A tests/libosmo-trx/trx_ep_test.c
A tests/libosmo-trx/trx_ep_test.err
A tests/libosmo-trx/trx_ep_test.ok
M tests/testsuite.at
10 files changed, 1,270 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-trx refs/changes/11/43111/8
--
To view, visit https://gerrit.osmocom.org/c/osmo-trx/+/43111?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newpatchset
Gerrit-Project: osmo-trx
Gerrit-Branch: master
Gerrit-Change-Id: I767fa43a9ca88be40c385f6dcb9de22891a6afc3
Gerrit-Change-Number: 43111
Gerrit-PatchSet: 8
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Attention is currently required from: laforge, pespin.
Hello Jenkins Builder, laforge, pespin,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-trx/+/43601?usp=email
to look at the new patch set (#2).
The following approvals got outdated and were removed:
Code-Review+1 by laforge, Code-Review+1 by pespin, Verified+1 by Jenkins Builder
Change subject: libosmo-trx/ep: allow ctrl socket to accept/reply to any peer
......................................................................
libosmo-trx/ep: allow ctrl socket to accept/reply to any peer
By default, the socket stays connect()ed to the configured peer, so
the kernel silently drops datagrams from anyone else. This is fine
for the normal osmo-bts/osmo-trx/trxcon use case, where both ends of
the link are fixed and known ahead of time.
Add an optional promiscuous mode that enables ttcn3-bts-test to
inject path simulation TRXC commands from its own source port: when
enabled, leave the ctrl socket unconnected and always reply to the
actual sender of the last received CMD (tracked in chan->ctrl_peer),
rather than only the configured peer.
This mode will be used by the upcoming osmo-trx-proxy.
Change-Id: I97075eb350e4270f4e909d493ba692e6b65be750
Related: OS#6672
---
M libosmo-trx/include/osmocom/trx/ep.h
M libosmo-trx/src/trx_ep.c
M tests/libosmo-trx/trx_ep_test.c
M tests/libosmo-trx/trx_ep_test.err
M tests/libosmo-trx/trx_ep_test.ok
5 files changed, 171 insertions(+), 25 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-trx refs/changes/01/43601/2
--
To view, visit https://gerrit.osmocom.org/c/osmo-trx/+/43601?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newpatchset
Gerrit-Project: osmo-trx
Gerrit-Branch: master
Gerrit-Change-Id: I97075eb350e4270f4e909d493ba692e6b65be750
Gerrit-Change-Number: 43601
Gerrit-PatchSet: 2
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Attention is currently required from: fixeria.
Hello Jenkins Builder, laforge, pespin,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-trx/+/43113?usp=email
to look at the new patch set (#9).
The following approvals got outdated and were removed:
Verified+1 by Jenkins Builder
The change is no longer submittable: Verified is unsatisfied now.
Change subject: libosmo-trx: generate Doxygen API documentation
......................................................................
libosmo-trx: generate Doxygen API documentation
Add Doxyfile.trx.in (based on Doxyfile.core.in from libosmocore.git,
upgraded using 'doxygen -u' to get rid of obsolete tags) and the
usual rules to build and install the HTML documentation, as well as
the --disable-doxygen configure option, like in other libosmo-*
projects.
Change-Id: I54cf8c0c60215c666d8fa55dafec53379a2382d5
---
M .gitignore
M configure.ac
A libosmo-trx/Doxyfile.trx.in
M libosmo-trx/Makefile.am
4 files changed, 3,027 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-trx refs/changes/13/43113/9
--
To view, visit https://gerrit.osmocom.org/c/osmo-trx/+/43113?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newpatchset
Gerrit-Project: osmo-trx
Gerrit-Branch: master
Gerrit-Change-Id: I54cf8c0c60215c666d8fa55dafec53379a2382d5
Gerrit-Change-Number: 43113
Gerrit-PatchSet: 9
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Attention is currently required from: fixeria.
Hello Jenkins Builder, laforge, pespin,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-trx/+/43114?usp=email
to look at the new patch set (#9).
The following approvals got outdated and were removed:
Verified+1 by Jenkins Builder
The change is no longer submittable: Verified is unsatisfied now.
Change subject: debian: add packaging for libosmo-trx
......................................................................
debian: add packaging for libosmo-trx
Add the usual Debian packaging files, closely following the ones in
libosmocore.git: the shared library package libosmo-trx0, as well as
the -dev, -doc, and -dbg packages.
Change-Id: I56f0074ad121ecacb076b508d1adfdd71cce99ec
---
M debian/control
A debian/libosmo-trx-dev.install
A debian/libosmo-trx-doc.doc-base
A debian/libosmo-trx-doc.install
A debian/libosmo-trx0.install
M debian/rules
6 files changed, 77 insertions(+), 3 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-trx refs/changes/14/43114/9
--
To view, visit https://gerrit.osmocom.org/c/osmo-trx/+/43114?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newpatchset
Gerrit-Project: osmo-trx
Gerrit-Branch: master
Gerrit-Change-Id: I56f0074ad121ecacb076b508d1adfdd71cce99ec
Gerrit-Change-Number: 43114
Gerrit-PatchSet: 9
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Attention is currently required from: fixeria.
Hello Jenkins Builder, laforge, pespin,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-trx/+/43602?usp=email
to look at the new patch set (#2).
The following approvals got outdated and were removed:
Verified+1 by Jenkins Builder
The change is no longer submittable: Verified is unsatisfied now.
Change subject: .checkpatch.c++.conf: --ignore LEADING_SPACE
......................................................................
.checkpatch.c++.conf: --ignore LEADING_SPACE
checkpatch complains about leading spaces in C++ header files.
For instance, the following code:
```
class Transceiver {
public:
Transceiver(const struct trx_cfg *cfg, ...);
```
fails with:
WARNING:LEADING_SPACE: please, no spaces at the start of a line
Ignore it for C++, like the other rules already excluded there.
Change-Id: I542cd4e393c218979e78f56c7d3f9d2ed6d6f379
---
M .checkpatch.c++.conf
1 file changed, 1 insertion(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-trx refs/changes/02/43602/2
--
To view, visit https://gerrit.osmocom.org/c/osmo-trx/+/43602?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newpatchset
Gerrit-Project: osmo-trx
Gerrit-Branch: master
Gerrit-Change-Id: I542cd4e393c218979e78f56c7d3f9d2ed6d6f379
Gerrit-Change-Number: 43602
Gerrit-PatchSet: 2
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Attention is currently required from: Hoernchen, fixeria, tnt.
Hello Hoernchen, Jenkins Builder, laforge, pespin, tnt,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-trx/+/43161?usp=email
to look at the new patch set (#7).
The following approvals got outdated and were removed:
Verified+1 by Jenkins Builder
The change is no longer submittable: Verified is unsatisfied now.
Change subject: Transceiver52M: use lround() for TRXD toa/ci rounding
......................................................................
Transceiver52M: use lround() for TRXD toa/ci rounding
trxd_fill_v0_specific() and trxd_fill_v1_specific() rounded bi->toa
and bi->ci to the nearest integer using the "+ 0.5, then truncate"
idiom. That only rounds correctly for non-negative inputs: for
negative values (toa can be negative for an early burst, ci can be
negative under poor C/I conditions) it biases towards zero instead
of rounding to nearest, e.g. -1.3 + 0.5 = -0.8, truncated to 0
instead of the correct -1.
Use lround() instead, which rounds-half-away-from-zero correctly
for both signs.
Change-Id: I0c52f1b91070e4750a8a0ffbccb222454e694c3b
Related: OS#5283
---
M Transceiver52M/proto_trxd.c
1 file changed, 2 insertions(+), 2 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-trx refs/changes/61/43161/7
--
To view, visit https://gerrit.osmocom.org/c/osmo-trx/+/43161?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newpatchset
Gerrit-Project: osmo-trx
Gerrit-Branch: master
Gerrit-Change-Id: I0c52f1b91070e4750a8a0ffbccb222454e694c3b
Gerrit-Change-Number: 43161
Gerrit-PatchSet: 7
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Hoernchen <ewild(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: tnt <tnt(a)246tNt.com>
Gerrit-Attention: Hoernchen <ewild(a)sysmocom.de>
Gerrit-Attention: tnt <tnt(a)246tNt.com>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Attention is currently required from: Hoernchen, fixeria, tnt.
Hello Hoernchen, Jenkins Builder, laforge, pespin, tnt,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-trx/+/43162?usp=email
to look at the new patch set (#7).
The following approvals got outdated and were removed:
Verified+1 by Jenkins Builder
The change is no longer submittable: Verified is unsatisfied now.
Change subject: Transceiver52M: use lround() for TRXD rssi rounding
......................................................................
Transceiver52M: use lround() for TRXD rssi rounding
trxd_fill_v0_specific() assigned bi->rssi to v0->rssi via a bare
narrowing double->uint8_t cast, silently truncating towards zero
instead of rounding to nearest. Use lround(), consistent with
the toa/ci rounding fixed in the preceding commit.
Change-Id: Ibdfe9f1b84c797bd7a50b4ee3f395c2af0ee88fd
Related: OS#5283
---
M Transceiver52M/proto_trxd.c
1 file changed, 1 insertion(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-trx refs/changes/62/43162/7
--
To view, visit https://gerrit.osmocom.org/c/osmo-trx/+/43162?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newpatchset
Gerrit-Project: osmo-trx
Gerrit-Branch: master
Gerrit-Change-Id: Ibdfe9f1b84c797bd7a50b4ee3f395c2af0ee88fd
Gerrit-Change-Number: 43162
Gerrit-PatchSet: 7
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Hoernchen <ewild(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: tnt <tnt(a)246tNt.com>
Gerrit-Attention: Hoernchen <ewild(a)sysmocom.de>
Gerrit-Attention: tnt <tnt(a)246tNt.com>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Attention is currently required from: fixeria, laforge, pespin.
Hello Jenkins Builder, laforge, pespin,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-trx/+/43603?usp=email
to look at the new patch set (#2).
The following approvals got outdated and were removed:
Code-Review+1 by laforge, Code-Review+1 by pespin, Verified+1 by Jenkins Builder
Change subject: osmo-trx-proxy: initial app skeleton
......................................................................
osmo-trx-proxy: initial app skeleton
osmo-trx-proxy is a C rewrite of the fake_trx.py: a virtual
TRX endpoint that BTS/MS-side L1 implementations (osmo-bts-trx,
trxcon) can connect to over the TRXC/TRXD protocol instead of real RF
hardware, useful for testing without SDR devices. This first commit
adds just the daemon skeleton (config context, VTY, logging).
Change-Id: Id2b12e5e7d053eea53338fbabc48131b9c46c82a
Related: OS#6672
---
M .gitignore
M Makefile.am
M configure.ac
A proxy/Makefile.am
A proxy/include/osmocom/proxy/logging.h
A proxy/include/osmocom/proxy/proxy.h
A proxy/include/osmocom/proxy/trx.h
A proxy/include/osmocom/proxy/vty.h
A proxy/src/Makefile.am
A proxy/src/logging.c
A proxy/src/main.c
A proxy/src/proxy.c
A proxy/src/trx.c
A proxy/src/vty.c
14 files changed, 849 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-trx refs/changes/03/43603/2
--
To view, visit https://gerrit.osmocom.org/c/osmo-trx/+/43603?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newpatchset
Gerrit-Project: osmo-trx
Gerrit-Branch: master
Gerrit-Change-Id: Id2b12e5e7d053eea53338fbabc48131b9c46c82a
Gerrit-Change-Number: 43603
Gerrit-PatchSet: 2
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Attention is currently required from: fixeria, laforge, pespin.
Hello Jenkins Builder, laforge, pespin,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-trx/+/43604?usp=email
to look at the new patch set (#2).
The following approvals got outdated and were removed:
Code-Review+1 by laforge, Code-Review+1 by pespin, Verified+1 by Jenkins Builder
Change subject: proxy: add TDMA clock generator and basic TRXC handler
......................................................................
proxy: add TDMA clock generator and basic TRXC handler
Add clck_gen: a single, process-wide timerfd-driven TDMA clock,
sending "IND CLOCK" every 102 frames to the clock socket of each
currently powered-on endpoint. The clock starts the moment any
endpoint becomes powered and stops once none remain.
Add ctrl_cmd implementing osmo_trx_ep_rx_ctrl_msg(). This module
currently handles POWERON/POWEROFF and RXTUNE/TXTUNE, and simply
ACKs all unknown commands.
Change-Id: I8c0757f15961bf0574f1305a6a8836853b66afcf
Related: OS#6672
---
M proxy/Makefile.am
A proxy/include/osmocom/proxy/clck_gen.h
M proxy/include/osmocom/proxy/trx.h
M proxy/src/Makefile.am
A proxy/src/clck_gen.c
A proxy/src/ctrl_cmd.c
M proxy/src/main.c
M proxy/src/trx.c
M proxy/src/vty.c
9 files changed, 341 insertions(+), 4 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-trx refs/changes/04/43604/2
--
To view, visit https://gerrit.osmocom.org/c/osmo-trx/+/43604?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newpatchset
Gerrit-Project: osmo-trx
Gerrit-Branch: master
Gerrit-Change-Id: I8c0757f15961bf0574f1305a6a8836853b66afcf
Gerrit-Change-Number: 43604
Gerrit-PatchSet: 2
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>