writing and readig on virtual interface /dev/tapX

F

fabrizio

I have to write an application which read from a virtual interface
/dev/tap0, write the packets on /dev/tap1 on the same machine and
viceversa (I have to emulate a network, with packets loss etc...).
I don't know how to open the stream. Should I use fstream? If so, can I
open a stream in input and output mode at the same time?

Thanks.
fabrizio
 
J

John Ratliff

fabrizio said:
I have to write an application which read from a virtual interface
/dev/tap0, write the packets on /dev/tap1 on the same machine and
viceversa (I have to emulate a network, with packets loss etc...).
I don't know how to open the stream. Should I use fstream? If so, can I
open a stream in input and output mode at the same time?

Should be able to.

#include <fstream>
#include <iostream>

std::fstream in("/dev/tap0", std::ios::in);
std::fstream out("/dev/tap1", std::ios::eek:ut);

Then you could overload the stream operators for your packet class to
handle reading/writing.

As far as read/write at once, you can or the in and out properties, but
from what you've said, I don't know why you would want to.

--John Ratliff
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,776
Messages
2,569,603
Members
45,189
Latest member
CryptoTaxSoftware

Latest Threads

Top