aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2019-12-04exit(2) on unsupported positional arguments on command lineHarald Welte2-0/+10
Change-Id: I6d4efa6ddef41607aecd5ceee78e400db821292f
2019-12-04vty: Make sure to save timeslot mode in lowercase (as vty expects)Harald Welte1-1/+1
Change-Id: I9b11fbe3bf85b7096a3bd5f9b67168350e66a90a
2019-12-04tests: Add test_nodes.vty for VTY interface testingHarald Welte2-3/+71
Change-Id: I322e8857990f77246bcf4dbc0510f4b42527dc82
2019-12-04vty: don't store configurations for timeslots in mode NONEHarald Welte1-0/+3
This reflects what happens in libosmo-abis during 'show e1' and makes sure we don't attempt to write for more TS than exist (e.g. in the T1 case). Change-Id: Iaeac2d080ae3ddc27901cbc4be5220100e9820a8
2019-11-24e1cap_dump: fix superchannel without pcap outputHarald Welte1-1/+1
We have to check if g_pcap_fd is >= 0,as we initialize it to -1. Change-Id: I458c02b4619b6fb2c7d30b1ce3bbac86243a6977
2019-11-24add contrib/jenkins.shHarald Welte1-0/+67
Change-Id: I79d9e12ef723841db186cd122da4dadb3f7d3969
2019-11-24update .gitignoreHarald Welte1-0/+22
Change-Id: Id9adf8d444013272a461bd5f4dbe64a5d0b373b4
2019-11-24convert build system to autotoolsHarald Welte10-19/+578
Change-Id: I705b5356309507c39eaf517ca5b9ce0e1aa89852
2019-11-24fix various compiler warningsHarald Welte3-5/+13
Change-Id: I65a862132563f578eff11b8d085960b820f5d4b7
2019-11-24storage.c: Fix compiler error due to missing writev() declarationHarald Welte1-0/+1
storage.c:90:7: error: implicit declaration of function ‘writev’; did you mean ‘write’? [-Werror=implicit-function-declaration] 90 | rc = writev(g_out_fd, iov, ARRAY_SIZE(iov)); | ^~~~~~ | write Change-Id: If98737199f5a6e8fb37a4fd6403ee973dcf70612
2016-11-14e1_recorder: Add LAPD PCAP dump support0.2Harald Welte1-1/+41
We can now write a PCAP file from the HDLC-decoded super channel.
2016-11-14hdlc: add call-back function for completely decoded HDLC framesHarald Welte2-5/+32
... and some more comments/documentation
2016-11-14e1cap_dump: Implement functional HDLC decode of super-channelHarald Welte3-11/+105
Finally the bit ordering and bit format of the SuperChannel has been figured out. * the data as read from DAHDI must be flipped (0->1 / 1->0). why? * the data must be read lsb-first when converting into a bit-buffer We are now getting the following output e.g. for a OM2000 "TX Configuration Request" message: fa 03 8a 8a 80 80 00 13 00 b0 0b 00 ff 01 20 00 2e 2b 1c 00 06 01 95 81 76 00 e9 bf ^ lapd hdr ^ OML ^l ^OM2000 TX Config Req for 43 dBm
2016-11-14hdlc: Simplify + Fix HDLC implementationHarald Welte2-53/+25
* remove the notion of states, as there is really only one state * implement zero removal / bit stuffing for synchronous links
2016-11-14hdlc: Add some more comments to the code [cosmetic]Harald Welte1-2/+16
2016-10-26WIP: More work on SuperChannel decode, but it doesn't work yet...Harald Welte4-0/+162
2016-10-26add .gitignore fileHarald Welte1-0/+5
2016-10-23e1cap_dump: Add SC (Super Channel) modeHarald Welte1-1/+72
In the super channel mode, it seems the BTS transmits one byte in each timeslot, accross the entire link. This basically means that if you have a 10 byte long signalling message to be sent, its first byte will be in TS1 up until the tenth byte in TS10. As we are reading in 160 byte chunks from the E1 timeslots, we build a matrix with 160 columns (for each byte) and 24/30 rows (timeslots). So we write 24 times 160 bytes into the matrix. Once we have completed all timeslots, we start to read the matrix by reading byte 0 of each timeslot (in incrementing TS order), next byte 1 of each timeslot, ... until we end up having read 160 times 24 bytes from the matrix. The resulting bitstream needs to be HDLC-synchronized and the resulting messages passed up for further decoding.
2016-10-19e1_recorder: add config option for configuration file0.1Harald Welte1-1/+27
2016-10-19e1_recorder: propagate errors to main, where we exit() in case of failing to ↵Harald Welte2-2/+9
open file
2016-10-19e1_recorder: Add signal handlers for log file rotation + talloc reportHarald Welte3-2/+28
2016-10-19e1_inp: Use HDLC mode for signalling, not SIGNHarald Welte2-4/+4
The SIGN mode implies that LAPD instances are bound to the timeslots, which is of course not what we want in a pure capturing/recording scenario. Instead, use the new E1INP_TS_TYPE_HDLC mode, which allows us to capture any HDLC framed messages on E1/T1 timeslots, whether LAPD or e.g. MTP.
2016-10-19e1cap_dump: Add 16k sub-channel demux + filterHarald Welte1-15/+51
We can now filter a given 16k sub-slot out of the capture data and export it to stdout.
2016-10-19e1cap_dump: Add capability to filter on a given line+timeslot and for binary ↵Harald Welte1-8/+66
output
2016-10-19storage.c: Remove debug printf()Harald Welte1-1/+0
2016-10-19e1cap_dump: Print human-readable timeHarald Welte1-2/+18
2016-10-18add a command line tool for dumping the contents of a capture fileHarald Welte4-1/+98
2016-10-18storage.h: make sure we use packed attribute not aligned.Harald Welte1-1/+6
This was a stupid mistake when writing the header initially, let's try to fix it while staying binary compatible.
2016-10-18e1_recorder: Fix msgb memory leaks in absence of a mirror portHarald Welte1-2/+5
2016-10-17storage.h: document fields of headerHarald Welte1-0/+6
2016-07-29first functional version that actually records + mirrors dataHarald Welte4-9/+102
2016-07-28fix compilationHarald Welte1-2/+2
2016-07-28initial import of incomplete project to record E1 linesHarald Welte7-0/+410