i've been developing a cross-platform 3D multiplayer game with Ogre3D engine. by using C's own (send/sentto/recvfrom etc.) networking functions, I've created my own network structure. it supports both udp and tcp transport protocols. the game uses the client-server architecture.
The problem I'm having is that although the application works on debug mode (players connect to server, transfer their files, send and receive transform updates properly etc.), if I switch to release mode, some of the networking capabilities do not work. for instance, one of the computers does not receive even 1 transform update at all, but, if I restart the application, sometimes it does. In addition, some of the tcp messages are not getting captured by the application and so on. I'm having strange networking operations in Ubuntu on release mode, also.
what do you think could be the problem?
Note: should I try windows' own network functions (WSASend etc.) ?