Erlamsa very often hangs when being used in UDP proxy mode.
Setup: Ubuntu 18.04 x64 VM, 8GB, 4 cores
Steps to reproduce (ncat is needed to help with port forwarding):
Open 4 terminals, in which do:
Create an erlamsa proxy from port A to port B: erlamsa -i udp://55545:127.0.0.1:55546 -P 0.1,0.1 -L - -O -cm:port=51235
create a loopback from port B to port A to get enough traffic
I use another erlamsa erlamsa -i udp://55546:127.0.0.1:55545 -P 0.1,0.1 -L - -O -cm:port=51236 to generate a larger amount of diverse traffic and make the problem appear faster.
Or, an ncat pipe should also suffice: while true; do ncat -u -l localhost 55546 --sh-exec "ncat -u localhost 55545"; done;. In my setup, it takes approx. a minute to reach the error.
top / htop or other activity monitor to validate that the system is operational
Inject some traffic into the feedback loop by doing echo | ncat --send-only -u 127.0.0.1 55545. Using yes or similar commands might also work.
Repeat step 4 in this terminal until the error appears in one of the erlamsas:
2019-06-24 16:21:42.778 <<0.67.0>> [info]: from udp client(c->s {127,0,0,1}:40267) [data_len = 1]: <<"\n">>
2019-06-24 16:21:42.778 <<0.181.0>> [info]: starting fuzzer main (parent = <0.67.0>), random seed is: {20456,41723,59679}
Stopped possibly bugged process: <0.181.0> (launched @ 1561393302, now is 1561393335)
Erlamsa very often hangs when being used in UDP proxy mode. Setup: Ubuntu 18.04 x64 VM, 8GB, 4 cores Steps to reproduce (ncat is needed to help with port forwarding): Open 4 terminals, in which do:
erlamsa -i udp://55545:127.0.0.1:55546 -P 0.1,0.1 -L - -O -cm:port=51235
erlamsa -i udp://55546:127.0.0.1:55545 -P 0.1,0.1 -L - -O -cm:port=51236
to generate a larger amount of diverse traffic and make the problem appear faster.while true; do ncat -u -l localhost 55546 --sh-exec "ncat -u localhost 55545"; done;
. In my setup, it takes approx. a minute to reach the error.top
/htop
or other activity monitor to validate that the system is operationalecho | ncat --send-only -u 127.0.0.1 55545
. Usingyes
or similar commands might also work. Repeat step 4 in this terminal until the error appears in one of the erlamsas: