[quake3-bugzilla] [Bug 4962] Protocol version 69 + legacy support

bugzilla-daemon at icculus.org bugzilla-daemon at icculus.org
Thu Apr 28 03:35:07 EDT 2011


https://bugzilla.icculus.org/show_bug.cgi?id=4962

--- Comment #6 from Thilo Schulz <arny at ats.s.bawue.de> 2011-04-28 03:35:05 EDT ---
Thanks ZTurtleMan!

You really drive my point: the first patch without the new protocol should be
applied anyways, as it already does a little part in the hardening against udp
spoofing and denial of service attacks.

When coming to the new patch: the new protocol is actually not that much code.
If you hate the #ifdeffery, that can be thrown out. The idea behind this was
that standalone games need not run through the checks to support an old legacy
protocol, but they don't really lose much if they still do them.

If not applying this patch, there will still be need for a "compat" field in
the client/servers structures, as I intend to apply a few fixes for VoIP that
would make voip incompatible.

Thus with this new protocol we kill two birds with one stone:
- Effectively secure ioq3 against UDP spoofing (if the attacker cannot listen
in on your connection of course).
- Have a simple unique mechanism to discriminate ioquake3 clients/servers with
different versions of VoIP or other features that might be added later

Different versions of ioquake3 can still cooperate by falling back to the
original ioquake3 protocol.
All of what I wrote pretty much happens already anyways. In effect, there are
two different protocols running side by side: VoIP enabled and disabled.

In terms of maintainability, I believe my solution is acceptable, and makes
ioquake3 fit for the future while not forgetting id's original quake3.

-- 
Configure bugmail: https://bugzilla.icculus.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.


More information about the quake3-bugzilla mailing list