I am running a 'flute' (a protocol for sending multicast traffic) application/binary (which I downloaded) from C program by popen(). This application has a feature/bug that it doesn't run in background, since it uses the shell to take some commands. And during the run, the application locks the shell. That means you can only type some pre-defined letters in the shell, otherwise you have to wait till the end. So, when I run multiple instances of the application using popen() from c code, the shell hangs permanently, probably because both applications tries to use it simultaneously (my assumption). But I can manually run multiple instances in different shells. Here is the sample code to run it from C program.
FILE* pF = popen("./flute -send -a226.0.0.1/6789 /media/song.mp3", "r");
Is there any solution so that the shell doesn't hang. Please help.