The thing basically works... exect after 1or 2 minutes playback, the
program suddenly exits.
Then i just have a few seconds left and *bang* . Kernel Panic :-(
... and had similar results. Just look at the memory consumption when
this happens. Apparently all incoming SCO data is buffered in kernel
memory for you to read, so you *must* read it, even if you only ever
intend to send data.
I'd also suggest you simply use select() to wait for incoming data and
then only send something when you received (and read!) something. This
nicely gives the right timing without guessing the delay parameter.
Quite interesting is the way you solved the issue :-)