Date: Sat, 26 Jun 1999 17:22:33 +0200 (METDST) From: Michal Przybylski <michalp@man.poznan.pl> To: questions@freebsd.org Subject: RE: IP_HDRINCL, TOS, SOCKET_RAW (fwd) Message-ID: <Pine.SGI.3.95.990626171914.16525A-100000@rose.man.poznan.pl>
next in thread | raw e-mail | index | archive | help
Question that i've forwarded is about linux. but i think that solution from freebsd should work either. perhaps anyone have any idea? thanx michal Michal Przybylski Poznan Supercomputing & Networking Center Poland email: michalp@man.poznan.pl tel. +48601567947 ---------- Forwarded message ---------- Date: Sat, 26 Jun 1999 17:08:23 +0200 From: Serge Wagener <serge.wagener@ist.lu> To: Michal Przybylski <michalp@man.poznan.pl> Subject: RE: IP_HDRINCL, TOS, SOCKET_RAW *This message was transferred with a trial version of CommuniGate(tm) Pro* Hi ! Thanks for your answer ! I personally use LINUX and Windows NT (and Win98 for gaming ;-) ) The problem is the project should run on Windows. I have one piece of sofware (transceiver) which run on two different computers and send packets one to the other. The second piece of software is a GUI that runs on a third computer and communicates with the two transceivers. Since the transceier is only a console app written in MS C i converted it (last night ;-) ) to linux gnu C (the thread part was a bit harder). Now i try to convince my supervisor (next monday) to accept running the console transceiver part on a linux bootdisk.... The workstation can have windows installed, just reboot with the disk in the drive ... Sound fine, but i have a problem under LINUX which didn't appear on Windows: I Have 8 threads for receiving, each one on another port (2000 -> 2007, UDP) and one thread for sending which also switches between port 2000 and 20007. That means on every port (2000 - 2007) there are two sockets connected. I use setsockopt to set the SO_REUSEADDR to 1 before each bind. the problem is there is NO error, the send thread sends on every port but the receive part doesn't receive anything ... I have to bind both sockets because i have to send from port 2000 to port 2000, 2001 to 2001, ... and vice versa (both transceivers send together to simulate a full duplex RTP transmission).. Do you know where the problem could be ? Can i open a global socket in my main() and have a thread hanging in a recvfrom() while another thread is sending with sendto() on the same socket ? (i know it's not the way to do it, but if it works ... time is running out !!!) Serge To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.SGI.3.95.990626171914.16525A-100000>