Commit Graph

118 Commits

Author SHA1 Message Date
Andreas Eversberg 10e7687280 Sort ports when created (or loaded)
All ports of an interface (show running-configuration) are sorted
by ascending port number, but ISDN ports follow PSTN ports.
2024-04-01 22:35:26 +02:00
Andreas Eversberg 0e0e6fbbc8 Add option to give name to a V5 port 2024-04-01 22:34:48 +02:00
Andreas Eversberg 320af9d81a Display interface(s) in accordance with user expectations
* show interfaces (display breef line per interface)
 * show interface (display detailed interface information)
2024-03-30 00:19:05 +01:00
Andreas Eversberg 0e42560095 Loss of frame support for detecting L1 failurew
LOF is not supported by V5.2 protocol. LOS is used instead.

If LOF or LOS is received, LOS is assumed in the L1 state machine.

If both LOF and LOS ceased, no LOS is assumed in the L1 state machine.
2024-01-16 00:28:54 +01:00
Andreas Eversberg b098e3a1a6 Rename "show" in interface node to "info" to prevent overlapping with default "show" command 2024-01-14 13:17:26 +01:00
Andreas Eversberg 22e1f73080 Fixed alaw/ulaw conversion library 2024-01-14 13:12:14 +01:00
Andreas Eversberg 48242a6b53 Minor fixes to the Sa7 loopback test
Test is now started when link is created. Even if no initial Sa-bits
status is received, the bit is initally set to 0.

Typo is fixed.

OSMO_ASSERT, to check if driver provides incomplete status report.
2024-01-14 12:23:26 +01:00
Andreas Eversberg 14e8355d83 Correctly unlink assigned channels when unassigning 2023-09-28 22:34:52 +02:00
Andreas Eversberg 95814c27c6 Add predefined profiles for easier interface configuration
They are for Fastlink and Eksos.
2023-09-28 22:34:52 +02:00
Andreas Eversberg a15e53b810 Show C-Channel ID at VTY 2023-09-28 22:34:52 +02:00
Harald Welte 7da994ebb3 ignore MDL-ERROR-IND from LAPD layer
The MDL-ERROR is already logged in lapd_core.  Let's avoid printing
"Unhandled prim" log lines when receiving it in osmo-v5
2023-09-28 22:34:52 +02:00
Harald Welte 3fde25cf8f globally disable printing/logging of FSM address (pointer)
this makes the log lines more readable, and we are anyway using
meaningful ID strings for all FSMs to differentiate them.
2023-09-28 22:34:52 +02:00
Andreas Eversberg 4e06b31475 Correctly ignore BCC DL message, if no BCC process exists 2023-09-28 22:34:52 +02:00
Harald Welte 441e207870 Add a user-configurable name for each interface
This name is subsequently used in all related log lines, VTY output,
etc. instead of the auto-genreated "IF%u" string with the interface
2023-09-28 22:34:52 +02:00
Harald Welte da2b9e1fca Introduce LOGV5IF, LOGV5LI and LOGV5UP log macros
This helps us to always log proper context.
2023-09-28 22:34:52 +02:00
Harald Welte 7709ea0ba2 Whenever we have a FSM around, use LOGPFSML instead of LOGP
This provides context in the log lines, so we can see which instance
of a given fsm / process is logging information
2023-09-28 22:34:52 +02:00
Harald Welte f6605e1bd0 Enhance the FSM instance ID string with meaningful context.
The FSMs should have unique ID strings, providing the user/operator
with meaningful context during log messages, etc.
2023-09-28 22:34:52 +02:00
Andreas Eversberg 2dca6472b1 Add option to enable PSTN datalink before startup
This is the default behaviour now. PSTN datalink can be established
before the system startup has been completed.
2023-09-28 22:34:52 +02:00
Andreas Eversberg c8a38acaec Fix crash when cc_link is removed 2023-08-06 13:11:29 +02:00
Andreas Eversberg b23325eba5 Fix minor typo: unblock->block 2023-07-30 23:08:05 +02:00
Andreas Eversberg 794004f11e add/update license notices 2023-07-20 21:05:56 +02:00
Harald Welte ef36ec6e2b gitignore: add m4/*.m4 2023-07-18 11:23:41 +02:00
Harald Welte a4d2584e39 Fix copy+paste error 2023-07-18 11:21:02 +02:00
Harald Welte 63ea86b875 cosmetic: Fix various typos in ph_socket.h 2023-07-18 11:17:13 +02:00
Harald Welte d187685d2d add/update copyright notices + license notices throughout 2023-07-18 11:16:54 +02:00
Harald Welte 3c4554c1b1 Add forward-declarations and #pragma once to header files 2023-07-18 11:10:18 +02:00
Harald Welte e9a078b06d Link to osmo-v5 wiki page in redmine 2023-07-18 10:34:53 +02:00
Harald Welte 5aa34ac643 mention that code has been used against EKSOS + Fastlink. 2023-07-18 10:23:30 +02:00
root 423b9b3542 Show interface ID with layer 1 debug 2023-04-15 17:50:21 +02:00
Andreas Eversberg 8458f8baca Add support for multiple interfaces on one V5 instance
Previously only 0..1 interfaces were allowed, now 0..n interfaces are
allowed. The interface ID is unique for all interfaces, so false
connection can be detected. Other identifiers may be identical at
different interfaces.

User ports use (abstract) ph-socket names that include interface ID:

<interface id>-isdn-<port nr> (e.g. 1-isdn-9100)
<interface id>-pstn-<port nr> (e.g. 1-pstn-8888)
2023-03-12 18:13:13 +01:00
Andreas Eversberg e40523ad20 Update 2023-03-07 15:47:10 +01:00
Andreas Eversberg a8ec7578c7 Add dial tone detection to disable echo suppressor 2023-03-07 15:47:09 +01:00
Andreas Eversberg 71d73d9885 Fixes missing event in LCP FSM 2023-03-07 15:47:06 +01:00
Andreas Eversberg 7e01a911fb Added echo suppressor option 2023-03-07 15:47:05 +01:00
Andreas Eversberg 0f0ada9200 Add echo suppressor along with echo canceller 2023-03-07 15:47:01 +01:00
Andreas Eversberg 3285bf896d Improve management process, to handle startup/blocking/unblocking correctly
This is a big one:

Startup process was hacked. Several state machines do the startup process now:
- system startup
- PSTN startup
- PSTN restart
- 5 state machines to do multiple port unblocking/blocking
2023-03-07 15:46:59 +01:00
Andreas Eversberg aa83e9c3ce Pulsed signal can have only one byte as value (3 byte IE) 2023-03-07 15:46:54 +01:00
Andreas Eversberg e70c91fc4a VTY: Show single port; Use 'singular' for ports and links 2023-03-07 15:46:51 +01:00
Andreas Eversberg c9f0c33587 Send to E1, only if layer 1 is active
This prevents filling the TX queue inside libosmo-abis.
2023-03-07 15:46:50 +01:00
Andreas Eversberg bd2aae0f2b Update to current release of libosmocore/libosmo-abis 2023-03-07 15:46:48 +01:00
Andreas Eversberg 86b7060848 Link structure of e1inp_line directly with V5 link
This way there is no lookup required, to get e1inp_line from v5
link and vice versa.

The E1 line is configured whenever it is added to the V5 link. This
happens when entering it in the VTY or loading the config. Also the
signaling channel is opened.

If E1 line is removed from the V5 link, all channels are closed.
2023-03-07 15:46:46 +01:00
Andreas Eversberg fdcce2bb7f Dynamically open and close b-channels depending on the usage 2023-03-07 15:46:44 +01:00
Andreas Eversberg d912c376ec Added echo cancelation option 2023-03-07 15:46:40 +01:00
Andreas Eversberg acd3ae7c40 Add libg711 to transcode G.711 audio 2023-03-07 15:46:36 +01:00
Andreas Eversberg 35ceaafd85 Added libecho, the line-echo-canceler from spandsp 2023-03-07 15:46:34 +01:00
Andreas Eversberg d8a9f29153 Check double use of E1 interface and notify, if not defined
E1 interface may be used by one V5 link only.
Also notify user, if not created and application must be restarted when
2023-03-07 15:46:26 +01:00
Andreas Eversberg d1c0b37bce Added GSMTAP IP option and fixed command line help output format 2023-03-07 15:46:25 +01:00
Andreas Eversberg 9f63e0e965 Updated ph-socket interface 2023-03-07 15:46:23 +01:00
Andreas Eversberg de54466eb5 Add test function to test Sa 7 bit setting and reporting 2023-03-07 15:46:21 +01:00
Andreas Eversberg 8c195781b6 Add graph of protocol entities 2023-03-07 15:46:19 +01:00