| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
In some cases it is required to know the ip-address of the interface
through that a given remote IP-Address can be reached.
Add function osmo_sock_local_ip() to determine the local ip-address
for a given remote ip-address
Change-Id: I2988cc52b196fc8476703d1287e24cb4a48491c2
|
|
|
|
|
|
|
|
|
|
|
| |
In ASCII string based protocols it a printf() version that prints
directly to the message buffer may be useful.
Add function msgb_printf(), make sure that msg buffer bounderies
are not exceeded. If the end of the tail buffer is hit, return
with an error code.
Change-Id: I15e1af68616309555d0ed9ac5da027c9833d42e3
|
|
|
|
| |
Change-Id: I6c1f47d13c5b7a9cb2281de9f017df4f1ed88ba7
|
|
|
|
|
|
| |
Also, make sure prim.c is actually part of the 'prim' module.
Change-Id: I4363e46a5f606eb2114a9cc1d2086007eaa58d31
|
|
|
|
|
|
| |
.. and add missing API documentation bits
Change-Id: I67119894bcbf8c779426a0272bae4c5ce1fbd1ed
|
|
|
|
| |
Change-Id: If824a5c8d8ee6e3dc96a3fddeb105786c0c027c1
|
|
|
|
| |
Change-Id: I8e49505f5c19beac90290fdba8821714e8eecd97
|
|
|
|
|
|
|
| |
This adds a more complete set of API documentation for all
osmo_counter relatedd functions and definitions.
Change-Id: I24283c05620ee86a8beb165af98a85d754549efb
|
|
|
|
|
|
|
|
| |
The stat_item code base had some incomplete doxygen documentation
so far. Let's complete it, and at the same time fix some cosmetic
as well as copy+paste issues in the existing documentation bits.
Change-Id: Ib514c137b40bf7b9791bd74be99af0b65575f2b6
|
|
|
|
|
|
|
|
|
| |
With stat_item, stats.c and stats_statsd.c, it is becoming a bit
difficult to understand file naming. Also, the 'statistics.c' file
actually only contained osmo_counter handling, so let's rename it to
counter.c altogether.
Change-Id: I2cfb2310543902b7da46cb15a76e2da317eaed7d
|
|
|
|
|
|
| |
Will be used by OsmoHLR to validate VTY and CTRL input.
Change-Id: Idf75946eb0a84e145adad13fc7c78bb7a267aa0a
|
|
|
|
|
|
|
| |
Add macros to break down absolute time in seconds into days/hours/minutes
passed.
Change-Id: I46b9a405c18ed9da8f31b7d5b6dcece5468bafbf
|
|
|
|
|
|
|
|
|
|
| |
Add OSMO_BIT_PRINT_EX() which is like OSMO_BIT_PRINT() but allows to
specify character to be printed for set bits. It's useful to print bytes
used as mask where set bit has particular semantics - for example TS
mask in OsmoPCU.
Change-Id: I72528bc1e376134c5a7b6e7a50c48e38c3f48b0a
Related: OS#2282
|
|
|
|
|
|
|
|
| |
This basically follows the concept of osmo_timer_setup() and allows
the caller to fill-in all configurable fields of osmo_fd in one
line of code, rather than open-coding it in 5 lines everywhere.
Change-Id: I6dbf19ea22fd65302bfc5424c10418d1b7939094
|
|
|
|
|
|
|
| |
PDCH is the physical channel, while actually we want to talk about
PDTCH the logical channel. Introduce backwards compatibility define.
Change-Id: Id6782d2247846e2db29fc58d98684970a66db948
|
|
|
|
|
|
|
| |
In the course of splitting up the openbsc.git repository, we will create
libosmo-mgcp and need a library logging category for that purpose.
Change-Id: I09c587e2d59472cbde852d467d457254746d9e67
|
|
|
|
|
|
|
| |
Using this option at socket creation, the caller can request disabling
the IP_MULTICAST_ALL socket option.
Change-Id: I5ab5de45c0b64ceb3636ea98245a23defa24ffd4
|
|
|
|
|
|
|
|
|
|
|
| |
This introduces a new flag OSMO_SOCK_F_NO_MCAST_LOOP, which can be used
to disable the looping back of multicast packets transmitted throug this
socket to other local sockets on the machine.
As this looping-back is active by default, a single option to deviate
from the default is deemed sufficient.
Change-Id: I24a5b1ebc3f84d2d5d4734e54df50efaea26490b
|
|
|
|
| |
Change-Id: Id703e7a7a1e065181a4c76c088b8dcc1b7fe15a2
|
|
|
|
|
|
|
|
|
| |
This is a convenience helper that will both close a fd, mark it as
closed and unregister it from the event loop abstraction. In most
cases, you probably actually want to use it instead of manually closing
and calling osmo_fd_unregister().
Change-Id: Icd0933eed6a24edde7cdcb378e138897ecc5332c
|
|
|
|
| |
Change-Id: Iaf8a99912f42a56ef785a1642e18238c0b67cf68
|
|
|
|
| |
Change-Id: Ie1bc00670887064da0fea61c3dab036c23ceea25
|
|
|
|
|
|
|
| |
These PRBS sequences are specified in ITU-T O.150. They are typically
used as test data to be transmitted for BER (bit error rate) testing.
Change-Id: I227b6a6e86a251460ecb816afa9a7439d5fb94d1
|
|
|
|
|
|
|
|
| |
Add deprecation notice for public API use: it shouldn't be used outside
of libosmocore anyway.
Change-Id: I792e30dc44f027fd94e1f65af19fe08bac52b95c
Related: OS#71
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Considering the various styles and implications found in the sources, edit
scores of files to follow the same API doc guidelines around the doxygen
grouping and the \file tag.
Many files now show a short description in the generated API doc that was so
far only available as C comment.
The guidelines and reasoning behind it is documented at
https://osmocom.org/projects/cellular-infrastructure/wiki/Guidelines_for_API_documentation
In some instances, remove file comments and add to the corresponding group
instead, to be shared among several files (e.g. bitvec).
Change-Id: Ifa70e77e90462b5eb2b0457c70fd25275910c72b
|
|
|
|
|
|
|
|
|
|
|
|
| |
Move a longish comment to the timer group so that it appears in the API doc.
Un-doxygen some floating comments that were associated with unrelated code
items ('/**' --> '/*').
Add braces to some function names so that the API doc will render as reference
links.
Change-Id: I3ea5b88cbe9cb54702429158bf47e768e04e8fe7
|
|
|
|
| |
Change-Id: I3f1cd5b10e7beccb61f370d7f8fa2666e56542cf
|
|
|
|
|
|
|
|
|
|
| |
Especially for short descriptions, it is annoying to have to type \brief for
every single API doc.
Drop all \brief and enable the AUTOBRIEF feature of doxygen, which always takes
the first sentence of an API doc as the brief description.
Change-Id: I11a8a821b065a128108641a2a63fb5a2b1916e87
|
|
|
|
|
|
|
|
|
| |
It's universally useful so it make sense to have it in the shared core:
* move macro from libosmocoding to libosmocore
* add OSMO_ prefix
* add doxygen docs
Change-Id: I5386ba3e1f1cc153ba96c29dc71c9075a052aa02
|
|
|
|
|
|
|
|
|
| |
A warning was printed even if the deprecation didn't apply to
libosmocore because it is still allowed to use it internally.
This patch fixes this case while still printing a warning if external
projects build using libosmocore headers.
Change-Id: I32212f20756f828af1017482a71e29e4b3adbad4
|
|
|
|
|
|
|
|
|
| |
It's a pity that even with this patch we still are fare away from having
the whole API documented. However, at least we have a more solid
foundation. Updates not only extend the documentation, but also make
sure it is rendered properly in the doxygen HTML.
Change-Id: I1344bd1a6869fb00de7c1899a8db93bba9bafce3
|
|
|
|
|
|
| |
Will be used by osmo-bts-trx
Change-Id: I3c655a4af64fb80497a5aaa811cce8005dba9cd9
|
|
|
|
| |
Change-Id: I5d5002ceedd10e10d772693478f4f9cab6b1290a
|
|
|
|
|
|
|
|
|
| |
We cannot assume a certain UART API like uart_baudrate() which only
exists in OsmocomBB. Rather, use generic function prototypes
(sercomm_drv_*) which are to be provided by the application /
environment to the sercomm core.
Change-Id: I01ea3067baf1791000c1a7d537ccce496a1ab1ee
|
|
|
|
| |
Change-Id: If9d50d634381f43b2c67b97fea36a462a66e4559
|
|
|
|
|
|
|
|
| |
osmo_sercomm_{bind,get}_uart() are not really needed anymore, as
sercomm_inst is public and thus the user can access the uart_id member
directly.
Change-Id: I6d57709c3764036046202f16a26c9eb87426c8d1
|
|
|
|
|
|
|
| |
Those values are not relevant to the sercomm user, only to the
implementation and thus can remain inside sercomm.c
Change-Id: I5700a45985b7c119c6338932171aae62ee4e2d22
|
|
|
|
| |
Change-Id: I2d8b11905692920d328262836420f01305be489e
|
|
|
|
| |
Change-Id: I835506e26e83232e1e7290c0da04d389c8d7fb40
|
|
|
|
| |
Change-Id: If4e22f182a47b72b1fe43146716a4fbccceb62e6
|
|
|
|
|
|
|
|
| |
Rather than having one global instance, let's permit multiple instances
of sercomm to co-exist, with all API functions extended by the instance
as first argument.
Change-Id: I0f3b53f464b119d65747bcb0be0af2d631e1cc05
|
|
|
|
|
|
|
|
|
| |
This imports the file src/target/firmware/comm/sercomm.c from
osmocom-bb.git without introducing any modifications. It will not even
be built yet, as Makefile integration is intentionally left until it has
been adapted to work inside libosmocore.
Change-Id: I9ee199381c7b5986a9540d124836cdddd0f66c86
|
|
|
|
| |
Change-Id: I6beb4fcc394ed7d3f8dd7a097b6e998245ecf401
|
|
|
|
|
|
|
|
| |
We need to have an architecture-independend way of endian conversion /
byte swapping functions which will also work on embedded (bare iron)
builds. Let's introduce osmocom/core/bytesawp.h for this purpose.
Change-Id: Ibc0cc1e36d4ed63a35cf8ceff3af0f26e5ac7a3d
|
|
|
|
|
|
|
| |
We can use __BYTE_ORDER__ which seems to be defined by both gcc and
clang/llvm.
Change-Id: Id6821c99e88242126d9697099b1dd92c6212526a
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add a new function timer function to set up the timer, similar to what
we have in the Linux kernel. This patch also converts existing opencoded
timer setup in the libosmocore tree as initial client of this new
function.
This patch implicitly removes function callback passed by reference that
defeat compile time type validation.
Compile-tested only, but I ran make check that reports success when
testing timer infrastructure.
Change-Id: I2fa49972ecaab3748b25168b26d92034e9145666
|
|
|
|
|
|
|
|
|
|
|
|
| |
* remove unused parameter from logging_vty_add_cmds()
* mark log level descriptors static
* change internal static function int check_log_to_target() to more
appropriate bool should_log_to_target()
* deprecate log_vty_command_*() from public API as it should only be
used by logging_vty_add_cmds()
Change-Id: I0e9ddd7ba3ce211302d99a3494eb408907a2916e
Related: OS#71
|
|
|
|
|
|
|
| |
Introduce two lookup helper functions to resolve a fsm_instance based on
the FSM and name or ID. Also, add related test cases.
Change-Id: I707f3ed2795c28a924e64adc612d378c21baa815
|
|
|
|
|
|
|
| |
Introduce msgb_pull_to_l2() which pulls (removes) any msgb contents in
front of the L2 header (msg->l2h).
Change-Id: I7786a1b30f9e7eaa3dcdb3cbb2a85a126588f6cd
|
|
|
|
|
|
|
|
|
| |
The old osmo_sock_init() function allows only either a bind (for a
server socket), or a connect (for a client socket), but not both
together. So there's no way to have a client socket that is bound to a
specific local IP and/or port, which is needed for some use cases.
Change-Id: Idab124bcca47872f55311a82d6818aed590965e6
|