Debugging Memory Bugs Using Address Sanitizer

Yesterday, I encountered a very subtle bug that did not make sense and obviously was an effect of a memory fault somewhere else in my code.

rlnc_multipath: src/buffer_pkt.hpp:62: void buffer_pkt::reset(): Assertion `&m_buffer[0]' failed.

How can a reference to the first element of a std::vector ...

more ...

Internet Tunneling Through ICMP

Since I run a server for hosting my websites and providing mail, I decided to setup tunnel service as well. Just in case I get stuck in an airport with limited internet access. Initially, I chose ICMP as the tunneling protocol, but more will follow later.

Server Setup

The server ...

more ...

Testing Wireless Links Between Several Devices

Our batch of Raspberry Pis are all equipped with a TP-LINK TL-WN722N WiFi Dongle, which we use for testing our protocols. During the initial setup of the testbed, we have experience quite some trouble with these devices, as they didn’t always bring up the interface in a proper manner ...

more ...

Running a Raspberry Pi from read-only NFS with AUFS Overlay

Since we have a few dozen raspberry pi to use for testing protocols in my research group, we needed some centralized way to set them up. After some googling, I decided to use read-only NFS for the root filesystem. On top of this, we put a read-write tmpfs to satisfy ...

more ...

Counting Lost ACKS on an IEEE802.11 Wireless Link

As part of my PhD-study, I was asked to count the number of lost ACK frames on a wifi link. I accomplished this by running tcpdump on one of my two routers (setup for IBSS) in the following steps…

First I setup netcat on my laptop to retrieve the tcpdump-data ...

more ...