Renegade Public Forums
C&C: Renegade --> Dying since 2003™, resurrected in 2024!
Home » General Discussions » General Discussion » Renegade FDS Running on Linux - on XWIS/WOL!!!  () 1 Vote
Re: Renegade FDS Running on Linux - on XWIS/WOL!!! [message #197402 is a reply to message #192004] Sun, 23 April 2006 01:57 Go to previous messageGo to previous message
Blazer is currently offline  Blazer
Messages: 3322
Registered: February 2003
Location: Phoenix, AZ
Karma:
General (3 Stars)
Administrator/General

Okay, sorry for so long since last update, but there has been no progress until tonight.

Thanks to combined effort from jonwil and v00d00, the LFDS now has automatic, built-in support for responding to what is internalled called "Firewall Packet Probes".

Basically, before a game client can connect to the FDS, it sends a UDP packet that basically says "Hey server...this is me contacting you on what I think is your game port. If you can hear me, please respond". The FDS then has to send a special UDP packet back to the client, using the same IP and port the probe came in on - "Hey this is the Server...I read you loud and clear, if you can hear this come on in!". The game client then connects to the server and logs the player in.

Now, to explain the problem I was having.
1. I had already learned via various reverse engineering methods (packet sniffing, dissassembly, debugging) of this special packet that was required to connect.

2. Jonwil and v00d00 collaborated on adding an additional console command to the LFDS (via latest scripts.dll), called "wolsend". Using this command you could specify an IP and port and it would send a properly formatted packet to the remote game client, so it could then connect.

3. This seemed to work, and thought all our problems were solved. However I discovered another problem, when certain types of NAT (firewalled) players tried to join the server.

4. For normal clients, I got their IP address and UDP port from the XWIS/WOL protocol that their client sent to the game channel.

5. However, these NAT players, something funky was happening. Basically their game client would send info to the game channel indicating they were using a certain port, but then the actual firewall probe packet would come in from a DIFFERENT port! This totally screwed me up, as now I had no way to easily intercept these packets and verify which source port they were using.

6. Jonwil and v00d00 came to the rescue. v00d00 found a function within the FDS code that specifically handles the firewall probe packets. Once this info was given to Jonwil, he was able to add code to scripts.dll that "hooked" this function. Basically since the LFDS runs in GSA mode, the function wasn't even doing anything, so we basically overrode it with our own function, that would automatically examine firewall probe packets, collect the necessary info from them, and automatically send the proper response packet. So the wolsend command was no longer needed, and was removed.

7. The end result is that the LFDS, combined with XWISP, now automatically fully supports XWIS/WOL, with all of the functionaly of the Win32 FDS, including XWIS specific things like bans and paging.

The only thing lacking still is ladder support, but as that will involve more reverse engineering and basically a project of itself, it's last on my list.

[Updated on: Sun, 23 April 2006 02:02]

Report message to a moderator

 
Read Message icon14.gif
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message icon12.gif
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message icon14.gif
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message icon4.gif
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: kittey749
Next Topic: OT: My New Computer (Hopefully)
Goto Forum:
  


Current Time: Wed Nov 27 07:01:54 MST 2024

Total time taken to generate the page: 0.01855 seconds