aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2019-01-26change binary builds URL to network:osmocom as that's more maintainedHarald Welte1-2/+2
Holgers' personal feed hasn't been updated for quite some time, and we're building osmo-pcap as part of the normal latest and nightly builds for quite some time now. The only disadvantage compared to Holgers' personal feed is the lack of support for RPM-based distributions (RHEL, CentOS, OpenSuSE). Change-Id: Ic479c192ca259f01d422da3bd44443fe4160ccaa
2018-12-06contrib: fix makedistcheck with disabled systemdOliver Smith1-1/+4
EXTRA_DIST files need to be distributed, no matter if the systemd option is configured or not. Change-Id: I2fed90915f57bbb054a26bacecf8417d6f3ba5ce
2018-12-04Fix DISTCHECK_CONFIGURE_FLAGS overrideOliver Smith1-1/+1
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: Iaac6d41ef1cc2d5449edf870f635b28b045dc7db
2018-11-01debian: Install osmo_pcap_clean_old in osmo-pcap-server pkgPau Espin Pedrol1-0/+1
Change-Id: Ia4b031fdf54cde3d00818df82e89733420a735ba
2018-11-01gitignore: Add compilePau Espin Pedrol1-0/+1
Change-Id: Ie801d6929068d11fafd24a1370e60e984b0137c2
2018-11-01Install cfg files with autotoolsPau Espin Pedrol12-13/+40
Cfg files are moved to doc/examples like in other osmocom projects. All the cfg files get installed into $prefix/share/doc/osmo-pcap/examples/$subdir/, and 1 script per binary is installed into /etc/osmocom. Change-Id: If3f3a7d3867c0d4d2b1fe01f465532d1ce4bda66
2018-11-01Install systemd services with autotoolsPau Espin Pedrol9-0/+63
Change-Id: Id938f3dab4826ac748abb5e0b169d800c2a625a5
2018-11-01debian: Clean up to look like other osmocom projectsPau Espin Pedrol7-339/+30
Change-Id: Id71699642b799f5b2f8f3b794b9493ddaeb70cc0
2018-11-01contrib/jenkins.sh: Update to current osmocom infraPau Espin Pedrol1-12/+38
Otherwise builds end failing in osmocom jenkins/gerrit. Change-Id: I955b99ce27df143f5d022619dd14e32b763e6c14
2018-10-08server: Add pcap snaplen VTY cmdPau Espin Pedrol4-8/+23
Change-Id: I8fdcdc1a58926ec66a1dc5dc7a5e57ed4dceb4b4
2018-10-08server: Improve verification of messages from clientPau Espin Pedrol2-8/+38
Take the chance to define SERVER_MAX_DATA_SIZE as pcap payload, which we can later match to configurable snaplen parameter. Change-Id: I45d4c59026faf1108c0976eb6ad8c270e3577dbf
2018-10-08client_send_link: snaplen not needed during allocationPau Espin Pedrol1-1/+1
We don't send any pkt data, so no need to allocate snaplen bytes extra. Change-Id: I8d6385f6ff265564492121812a7a9f2bcfea3d5f
2018-10-08client: Add pcap snaplen VTY cmdPau Espin Pedrol6-10/+41
Change-Id: I84fda9f27b725e031c218187ab679392dfa7ec3d
2018-10-08client: Set snaplen to MAXIMUM_SNAPLENPau Espin Pedrol2-2/+6
Despite this value not being exported publicly, the truth is that tcpdump and wireshark nowadays avoid processing any file with snaplen bigger than this value: "tcpdump: pcap_loop: invalid packet capture length 861244, bigger than snaplen of 262144" It also fails to set snaplen to values bigger than that: "tcpdump -s 262145" --> "tcpdump: invalid snaplen 262145" pcapfix also warns about wrong packet length if bigger than same value (defined as PCAP_MAX_SNAPLEN there). MAXIMUM_SPANPLEN is defined in tcpdump's netdissect.h and libpcap's pcap-int.h. It is also defined as WTAP_MAX_PACKET_SIZE in wireshark/wiretap/wtap.h (this one being the only publicly available). Change-Id: Ib7449d5aba9da342c150704ebd0e1f09e7f7276c
2018-10-08Use enum for PKT_LINK_*Pau Espin Pedrol1-9/+4
Makes it easier to understand different types and how they relate to same field. Change-Id: I1bec4d5d132a1476f9c418502ad808b7c778cee2
2018-10-08Replace '.' in counter names with ':'Pau Espin Pedrol3-23/+23
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: Icec5338d3242137980fa05d2c7ae2db940afb542
2018-10-08jenkins.sh: enable werror and sanitize configure flagsPau Espin Pedrol1-1/+1
Change-Id: Id8ad324ae9e1c57e1328bd1be04977e921125847
2018-10-08configure.ac: Add --enable-sanitize flagPau Espin Pedrol1-0/+12
Change-Id: I6a3bc49142b93a35988c8763f3125d7b5ffddaef
2018-10-08configure.ac: Add --enable-werror flagPau Espin Pedrol1-0/+18
Change-Id: I387a3365fb5b7340bf67fb945df434442924a4c7
2018-10-08osmo_client_send_data: Fix wrong log formatPau Espin Pedrol1-1/+1
According to pcap.h, type bpf_u_int32 can be 32 bits on some systems, so better cast explicitly to size_t to make sure always correct size is used by log function. Fixes warning: osmo-pcap/src/osmo_client_network.c:175:4: warning: format ‘%zu’ expects argument of type ‘size_t’, but argument 7 has type ‘bpf_u_int32’ {aka ‘unsigned int’} [-Wformat=] "Capture len too big %zu\n", in_hdr->caplen); ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~ Change-Id: I98654da143218d3e57da4e57781252eb3d3f3d5b
2018-10-08Drop osmo_init_logging and use osmo_init_logging2Pau Espin Pedrol2-2/+2
Change-Id: Ib1c38f6134b3c1988477caa0f2c281b1ef01d5e0
2018-10-08server: Properly name main talloc ctxPau Espin Pedrol1-9/+9
Change-Id: I810417d84c6a6ebcbc4b75a9bc41607bb0637228
2018-10-08client: Properly name main talloc ctxPau Espin Pedrol1-9/+9
Change-Id: Ibaa7f0e0add5f5e61cc0bb82341ee3b6b5c0cf07
2018-10-08vty: skip installing cmds now always installed by defaultPau Espin Pedrol2-3/+0
Fixes following compilation warning: osmo-pcap/src/osmo_client_vty.c:511:2: warning: ‘install_default’ is deprecated: Now happens implicitly with install_node() [-Wdeprecated-declarations] Depends: libosmocore I5021c64a787b63314e0f2f1cba0b8fc7bff4f09b Change-Id: I943f68dbafd7906313ad9e59f4adb289ae23cdec
2018-10-08cosmetic: client: rename forward_packet functionPau Espin Pedrol1-2/+2
Function only checks if packet should be forwarded, it doesn't forward any packet. Change-Id: I87cd64290245db134b17bc0d6665c58f1cde17b6
2018-02-09debian/control: Fix URLs for homepage, git, gitwebHarald Welte1-3/+3
Change-Id: Iff74cf6b3e53a6786a96738b609a2e2d685b1300
2018-02-09Add support for generating IPIP to osmo-pcap-clientHarald Welte3-20/+124
This allows the user to change the configuration between either using a) the classic OsmoPCAP protocol (over TCP with or without TLS) which is used when you want to talk to an osmo-pcap-server b) the (new) IPIP encapsulation, which will simply take the IP packet (without Ethernet or pcap header) and transmit it inside IPIP to the specified server IP address. This is useful for gettin real-time streaming into wireshark. Change-Id: I8056fc163ac2f15adcb964d867dd5e51df4e4710
2017-08-28Use release helper from libosmocoreMax2-0/+7
See https://osmocom.org/projects/cellular-infrastructure/wiki/Make_a_new_release for details. Change-Id: Iafe5905895a656b7055d58ca8f745fcfa4bd9886 Related: OS#1861
2017-08-22Add gitreview configMax1-0/+3
Change-Id: I35b3aaa3f8af4127d8a1b00c77ab02ae6a182714
2017-07-21client: Move to osmo_sock_init2_ofd()Harald Welte1-12/+3
We can simplify the code even further by using the osmo_fd version of osmo_sock_init2() called osmo_sock_init2_ofd(), which takes care of filling the osmo_fd.fd member and registering the socket in the select loop. Change-Id: Ibf1480e7dee287db77a19bb9f0254edddf7706ab
2017-07-21Use libosmocore osmo_sock_init2() instead of local implementationHarald Welte1-134/+2
A related function for "create a socket, bind it locally and connect remotely" has meanwhile been introduced in libosmocore, so the local implementation can go. Change-Id: Ieda77ad8b3f7b89faa09882c0037562ce4d0fc89
2017-07-21Rename osmo_pcap_{client_server} executables to osmo-pcap-{client,server}Harald Welte5-7/+7
This naming is more in line with what all the other osmocom programs are doing (e.g. osmo-pcu, osmo-bts-sysmo, osmo-bsc, ...). We don't generally use osmo_ anywhere else, so I suggest to change it for more uniformity. Change-Id: If1e3ce76f93266e0f01c801204769432b571fdb1
2017-07-21Use TCP port numbers for VTY that don't overlap with other Osmocom SoftwareHarald Welte4-4/+13
osmo-pcap for historical reasons uses the same port numbers as OsmoPCU and OsmoBTS. This leads to problems when wanting to run related software together on one system. Let's break the historical assumptions and start with non-overlapping port numbers that are allocated/assigned from https://osmocom.org/projects/cellular-infrastructure/wiki/Port_Numbers Change-Id: I638ac0534517931d0987ce9f72f5db4f5b6c16b7
2017-07-21sock_src_init(): Don't freeaddrinfo() undefined src_resultHarald Welte1-1/+2
src_result is only valid "if (src)", so we cannot unconditionally free it: (gdb) bt host=0x52 <error: Cannot access memory at address 0x52>, src=0x0) at /usr/src/debug/osmo-pcap/0.0.6+gitrAUTOINC+4776b2972e-r1d/git/src/osmo_client_network.c:165 Change-Id: I3b6778d9110583ecb1daec59ef2c86465d5818b9
2017-03-07debian: Add -dbg packages for the osmo-pcap-client and osmo-pcap-server0.0.11Holger Hans Peter Freyther3-0/+15
Currently looking at a weird issue. Make it possible to install the -dbg packages. Change-Id: I7d6c8e491be459151c1531b86f28bb1dc2ee8bb4
2017-01-17debian: Make a new release with the new featureHolger Hans Peter Freyther1-0/+6
Change-Id: Ibe86b761b494e0fb78bbbc78e3c1982e44185750
2017-01-17client: Allow to bind to a specific source_ipHolger Hans Peter Freyther3-1/+156
Modify the osmo_sock_init (code clone to be integrated upstream) to allow binding to a specific source ip and source port. Allow the source ip to be configured but allow the kernel to pick a random port for us. This is necessary for systems with multiple interfaces where the default route is not necessarily the right one to connect to the pcap server. Change-Id: I84e728b0752213d28f970fcbbfd6565c441ccfeb
2016-11-09debian: Make a new release with the new features we gained0.0.10Holger Hans Peter Freyther2-1/+11
Change-Id: I85e210e6ed14aef085902a5af6407d51685aecba
2016-11-09client: Tolerate an invalid pcap_handleHolger Hans Peter Freyther1-0/+6
When not running as root the opening might fail and then we would crash when sending the link information. Do not crash. This could have crashed before the re-factoring but due the async connect it seems more likely we hit it now. Change-Id: I26a10c401a9a8998acc50a4bd4432d2ac7fceaeb
2016-11-09client: disconnect before connecting the connectionHolger Hans Peter Freyther1-0/+2
With the VTY a user can write connect, connect, connect and this would lead to leaking fds. Always close the connection. Change-Id: Iab94dc2fd28496bf5fd8ceb5611f9e6505ccae1b
2016-11-09client: Allow to stop and remove a connectionHolger Hans Peter Freyther4-8/+67
Change-Id: I2118723345caf6a68f03de74a4182506e7bf105c
2016-11-09client: Do not connect default connection if no ip/port presentHolger Hans Peter Freyther1-1/+2
Ignore the default connection if no srv_port and has been specified. Change-Id: I6a3a9a0af73a9183a6b233937af3357d15a07f25
2016-11-09client: Allow to configure and connect multiple serversHolger Hans Peter Freyther7-72/+237
Allow to configure multiple servers and connect. Introduce a new VTY node to allow multiple servers. Add an explicit connect. Do not put the main connection into the same list but assume it exists. Change-Id: I9448ad4a005dd7c7eb1c615d03e57d6cb058ae4d
2016-11-09client: Enable a non-blocking connect to the PCAP serverHolger Hans Peter Freyther1-18/+38
If we want to have multiple servers we should not block when trying to connect to one of them. Enable non blocking mode and handle the fd specially until it is connected. E.g. on failed connect the read will become readable but fail, otherwise it becomes writable. Clear the write queue to make sure that the link data is sent first. We might be able to introduce a osmo_wqueue_prepend. Change-Id: Iae2bc264d15aa8598beefc194e3b8c4ebe87320a
2016-11-09client: Prepare to work with a list of serversHolger Hans Peter Freyther3-0/+11
There is no VTY code yet and no servers in the list but it looks good client this. Change-Id: Ic35748f1a95a880a9fa49dd18361592d8ac941ba
2016-11-09client: Finish renaming client to conn in other places of the codeHolger Hans Peter Freyther2-29/+29
Change-Id: I3c7c499c921b03752cbbcdda3eac8ca360323a22
2016-11-09client: Prepare to have multiple server connectionsHolger Hans Peter Freyther7-123/+132
Take out various fields into a new connection class. We will have the option to connect to multiple servers. Change-Id: I820176d133fbdb0240a16eb4e1a6d505e5c080c6
2016-09-08Merge branch 'feature/tls'Holger Hans Peter Freyther21-62/+1501
Add TLS support to the client and server. What is known working is support of anonymous mode with generated DH params. Mildly tested by hand over localhost.
2016-09-08test: Add tls config file and enable tls a bitHolger Hans Peter Freyther3-2/+45
Change-Id: Iba0008e3e0da276cc65c7501145b65294233febb
2016-09-08doc: Add initial documentation for the tls supportHolger Hans Peter Freyther1-0/+76
Change-Id: Ifc042e6755c223339fafbc3af9106073341f9b45