rubidium
22d9306889
(svn r15967) -Codechange: do not access NetworkSocketHandler::has_quit directly
2009-04-07 18:23:14 +00:00
rubidium
0678cb561d
(svn r15961) -Codechange: prepare the 'client' side for receiving 'session keys' from the masterserver so servers can register with multiple IPs as the same server.
2009-04-05 19:43:41 +00:00
rubidium
edfc2e536e
(svn r15954) -Fix: comparing addresses kinda fails (sometimes) causing duplicates in the game list
2009-04-04 13:09:36 +00:00
rubidium
616cac0c54
(svn r15951) -Fix (r15946) [FS#2803]: ofcourse a couple of OSes/compilers do not provide a nice 'interface', so we have to do it the ugly way.
2009-04-04 08:48:12 +00:00
glx
5eed35ef54
(svn r15950) -Fix (r15946): mingw compilation
2009-04-04 03:45:02 +00:00
rubidium
a779611665
(svn r15948) -Fix: resolve network addresses before comparing them
2009-04-04 01:51:32 +00:00
rubidium
2fd9f0fffa
(svn r15946) -Codechange: move netmask matching to NetworkAddress and add some support for IPv6 netmask matching.
2009-04-04 00:47:08 +00:00
glx
e460d3f4d0
(svn r15945) -Fix (r15944): win32 compilation
2009-04-03 23:44:31 +00:00
rubidium
7cf4639255
(svn r15944) -Codechange: disable IPv4 over IPv6 sockets as there is no default value and not all OSes actually support IPv4 over IPv6 so making it the same on all OSes eases debugging and such
2009-04-03 21:46:52 +00:00
rubidium
ce06df313d
(svn r15941) -Codechange: jonty-comp's wish partly implemented (content server) ;)
2009-04-03 17:20:57 +00:00
rubidium
1463b00b48
(svn r15940) -Codechange: move setting reuse address to the binding process.
2009-04-03 17:02:29 +00:00
glx
2dafb9dd57
(svn r15938) -Fix: broadcast addresses detection was broken for win32
2009-04-03 16:22:34 +00:00
rubidium
e05e1822d6
(svn r15935) -Codechange: function to compare IP addresses (to sort them)
2009-04-03 15:42:41 +00:00
rubidium
2bfc9ca50c
(svn r15934) -Fix: work around Solaris' inability to "parse" 0 as defined in the specifications.
2009-04-03 15:24:39 +00:00
glx
65d10e66f0
(svn r15933) -Fix (r15920): mingw doesn't know getaddrinfo() and freeaddrinfo() either
2009-04-03 14:01:45 +00:00
glx
d84fb358f5
(svn r15930) -Fix (r15926): MSVC compilation
2009-04-03 12:48:11 +00:00
rubidium
11723c40b2
(svn r15926) -Codechange: make the broadcast IP list less AF dependent.
2009-04-03 11:02:41 +00:00
rubidium
47602d7b60
(svn r15925) -Codechange: remove _network_server_bind_ip as it's pretty AF dependant.
2009-04-03 10:29:56 +00:00
rubidium
dccfba6e20
(svn r15924) -Codechange: replace NetworkResolveHost with something less AF dependant.
2009-04-03 09:07:16 +00:00
rubidium
632d74c6b1
(svn r15922) -Codechange: unify the ways to listen on a socket
2009-04-03 01:24:52 +00:00
rubidium
ba5aafb9bb
(svn r15921) -Fix: some OSes don't like sizeof(sockaddr_storage) but want sizeof(sockaddr) or whatever is 'valid' for the given protocol
2009-04-03 00:33:00 +00:00
rubidium
c7b6469dab
(svn r15920) -Codechange: make the (TCP) connecting less AF dependent.
2009-04-02 23:59:43 +00:00
glx
521bf687ee
(svn r15919) -Fix (r15916): mingw doesn't know getnameinfo() (unless you compile for XP SP2+). Also fix a MSVC warning.
2009-04-02 23:22:59 +00:00
rubidium
beef5da970
(svn r15918) -Fix (r15917): comparing IPs sometimes failed due to 'random' data (as spotted by SpComb)
2009-04-02 23:03:18 +00:00
rubidium
c5160c7c8e
(svn r15917) -Codechange: remove the latest traces of NetworkAddress::GetIP.
2009-04-02 20:39:30 +00:00
rubidium
1e205e01b8
(svn r15916) -Codechange: let the network game list use NetworkAddress
2009-04-02 20:17:46 +00:00
rubidium
c0c6e07081
(svn r15915) -Codechange: let the udp code use NetworkAddress.
2009-04-02 19:21:26 +00:00
rubidium
804370d964
(svn r15914) -Codechange: let the content handling make use of NetworkAddress.
2009-04-02 18:35:59 +00:00
rubidium
b25a4f8231
(svn r15718) -Cleanup: apply some comment coding style on the rest of the sources too
2009-03-15 00:32:18 +00:00
rubidium
86ca408d46
(svn r15626) -Fix [FS#2698]: UTF8 string handling could cause buffer overruns.
2009-03-06 01:23:25 +00:00
rubidium
04709f2798
(svn r15242) -Feature: allow moving clients between companies/spectators by the server and the clients themselves (dihedral)
2009-01-23 22:18:06 +00:00
rubidium
4f5a8b15ed
(svn r15206) -Fix [FS#2567]: memory corruption due to not properly cleanup up the mess when cancelling a download
2009-01-22 10:09:56 +00:00
rubidium
ff328bf68b
(svn r15178) -Change: rename 'update' to 'upgrade' as that's a bit more clear
2009-01-20 21:05:13 +00:00
rubidium
eeb38a8e3a
(svn r15176) -Fix [FS#2554]: querying the content server could free when resolving the hostname or connecting takes long/is timing out.
2009-01-20 16:51:55 +00:00
rubidium
28a641066e
(svn r15163) -Change/Fix: use a non-blocking method to resolve the hostname and connect to game servers.
2009-01-20 11:28:18 +00:00
rubidium
99b1f1a8f4
(svn r15161) -Change: bump url to 96 bytes
2009-01-20 09:52:11 +00:00
rubidium
07e135547e
(svn r15135) -Fix/Change: allow str_validate (part of receiving strings from the network) to pass newlines instead of replacing them with question marks, but only when asked to do so.
2009-01-18 13:12:57 +00:00
rubidium
3a13b75e37
(svn r15126) -Feature: downloading content from a central server (content.openttd.org) where authors can upload they NewGRFS/AI etc. This should make joining servers that use only NewGRFs that are distributed via this system easier as the players can download the NewGRFs from in the game. It should also make it easier to see whether there are updates for NewGRFs and make the necessary updates.
2009-01-17 16:53:32 +00:00
rubidium
e18c24cdb5
(svn r15079) -Codechange: split tcp 'backend' and in-game handling like it is for UDP.
2009-01-14 12:50:13 +00:00
rubidium
04ea0b9316
(svn r15053) -Cleanup: remove some unneeded includes
2009-01-13 11:53:33 +00:00
rubidium
fc696a7e29
(svn r15052) -Codechange: move the implementation of Send_CompanyInformation to network_server.cpp as the server's the one that sends that information
2009-01-13 11:46:29 +00:00
rubidium
11da45ee55
(svn r14949) -Cleanup: pointer coding style
2009-01-10 00:31:47 +00:00
rubidium
427e2d30c5
(svn r14915) -Codechange: unify the receiving and sending of commands, and thus unifying most of the validity checking too.
2009-01-08 14:40:18 +00:00
rubidium
e198bf02ab
(svn r14766) -Fix (r14730ish): remove unused typedef.
2008-12-29 11:17:12 +00:00
rubidium
105b84e343
(svn r14760) -Fix (rlongago): network connection of clients being closed twice (found due to added assertion in r14730)
2008-12-28 21:45:41 +00:00
rubidium
e626e07bd3
(svn r14759) -Fix (r14730): tab completion causing out-of-bounds read.
2008-12-28 21:07:45 +00:00
rubidium
afddfcb2b1
(svn r14730) -Codechange: remove the need for networkclientsockets and networkclientinfo structs to be in a contiguous piece of memory and put them in a pool.
...
-Note: 255 should really be enough for now... making it any more means network protocol bumps.
2008-12-23 20:52:27 +00:00
rubidium
52fb6b7d7c
(svn r14724) -Codechange: move some NetworkClientSocket related function/definitions closer together.
2008-12-23 11:43:32 +00:00
rubidium
9476a49763
(svn r14723) -Codechange: shuffling some stuff around to reduce indirect #include dependencies.
2008-12-23 11:06:52 +00:00
rubidium
ae96ca635c
(svn r14721) -Codechange: s/NetworkTCPSocketHandler/NetworkClientSocket/ as it's (way) more descriptive what it's used for.
2008-12-23 09:47:42 +00:00
rubidium
b4734ee9a4
(svn r14719) -Codechange: replace DEREF_CLIENT with an instance function and replace looping socket structs with info structs when the loop is only interested in the info structs (i.e. not derefing the info from sockets when one can loop info directly and the socket isn't used)
2008-12-23 08:39:30 +00:00
rubidium
abc903d625
(svn r14712) -Codechange: split server and client side w.r.t. the storage of network related company information.
2008-12-22 18:40:57 +00:00
rubidium
782b80eff7
(svn r14709) -Codechange: make a clearer distinction between 'unique' client identification ids and the indices into the clients/client info arrays.
2008-12-22 12:59:31 +00:00
smatz
d2a050bb29
(svn r14671) -Fix: compilation was broken for some systems
2008-12-13 18:19:44 +00:00
rubidium
3b798599b6
(svn r14421) -Codechange: rename all player variables/types to company *or* client so it is immediatelly clear which one you are working with.
2008-09-30 20:39:50 +00:00
rubidium
e7829c1a57
(svn r14414) -Fix: replace instances of strncpy with strecpy as strncpy doesn't guarantee the resulting string is '\0'-terminated.
2008-09-29 16:27:02 +00:00
smatz
361292bd23
(svn r14177) -Fix: define INADDR_NONE only when it hasn't been defined yet
2008-08-25 22:10:47 +00:00
smatz
c9bef19043
(svn r14174) -Fix: since now, we are 'losing' things, not 'loosing'
2008-08-25 20:10:45 +00:00
rubidium
97c184f8f8
(svn r14063) -Codechange: replace some "magic" constants with enumified constants.
2008-08-13 06:05:01 +00:00
rubidium
72c154fd0f
(svn r14052) -Codechange: make the size of the chat message "box" configurable and increase the default size slightly so it can hold the longest chat messages.
2008-08-12 12:23:05 +00:00
rubidium
3b4c3a3df6
(svn r14045) -Codechange: move the network's limitation to chat messages to a more logical location and give it a more consistent name.
2008-08-11 22:07:26 +00:00
glx
788b625553
(svn r14026) -Cleanup (r13995, r14004): trailing whitespaces
2008-08-08 15:49:16 +00:00
rubidium
0ebcac669e
(svn r13997) -Fix (r13988): in some cases no broadcast addresses would be found.
2008-08-04 19:07:37 +00:00
rubidium
b1eaf763e1
(svn r13995) -Fix (r13988): some warnings of the compile farm.
2008-08-04 18:27:54 +00:00
glx
0f10939029
(svn r13990) -Fix (r13988): win32 compilation failed
2008-08-04 13:54:10 +00:00
rubidium
c88cb1daa0
(svn r13988) -Codechange: move the to IP resolving functions to a separate file.
2008-08-04 12:56:38 +00:00
rubidium
60a6582590
(svn r13713) -Fix: possible crash on creating a network packet.
2008-07-17 11:47:57 +00:00
rubidium
2e4f32023c
(svn r13712) -Fix: enforce the length restrictions of company and president name in the commands too.
2008-07-17 11:19:20 +00:00
smatz
ce692c16ee
(svn r13378) -Fix (r13375): compilation without network support was broken
2008-06-04 11:21:36 +00:00
rubidium
abf2b0efc3
(svn r13369) -Codechange: remove duplication of network configuration settings between NetworkSettings and NetworkGameInfo.
...
-Fix: failure of changing the server password during games because the password wasn't duplicated properly.
2008-06-03 08:04:35 +00:00
rubidium
2f3b88ef9a
(svn r13343) -Codechange: reorder/move variable/functions in the network headers so that nothing from the network directory needs to include basically all network headers.
2008-05-30 18:20:26 +00:00
rubidium
4097d81323
(svn r12930) -Add: build support for NetBSD and HP-UX. Patch by ahoka.
2008-04-30 07:39:46 +00:00
smatz
f32ecbcadb
(svn r12777) -Codechange: rename fatal() and error() in strgen, so it can always have the NORETURN attribute
2008-04-18 21:33:21 +00:00
rubidium
1b2773445d
(svn r12765) -Codechange: move some stuff out of variables.h that required including other headers in variables.h.
2008-04-18 10:16:51 +00:00
rubidium
ab7b05da50
(svn r12637) -Fix [FS#1913]: possible NULL pointer dereference when reading some NewGRF data.
2008-04-09 14:05:50 +00:00
glx
fed6a25799
(svn r12407) -Add [FS#1866]: more language flags for servers
2008-03-24 20:30:08 +00:00
rubidium
d4e6a6bf57
(svn r11828) -Codechange: include table/* as the last includes and remove an unneeded include from openttd.h.
2008-01-13 01:21:35 +00:00
rubidium
ac528411df
(svn r11818) -Codechange: split player.h into smaller pieces.
2008-01-12 14:10:35 +00:00
rubidium
a3ccdcea36
(svn r11777) -Codechange: split the string header and make do not include it when it's not necessary.
2008-01-07 14:23:25 +00:00
rubidium
b9046c97fb
(svn r11702) -Codechange: move all date related stuff to date*.
2007-12-26 13:50:40 +00:00
rubidium
429521a7d1
(svn r11692) -Codechange: move some functions from 'functions.h' to a more logical place and remove about 50% of the includes of 'functions.h'
2007-12-25 11:26:07 +00:00
rubidium
bf98e25e43
(svn r11691) -Codechange: move+rename helpers.hpp and only include it when it is really needed.
2007-12-25 09:48:53 +00:00
rubidium
01e20c9140
(svn r11674) -Codechange: refactor some functions out of macros.h into more logical locations.
2007-12-21 19:21:21 +00:00
rubidium
b5a902703e
(svn r11557) -Codechange: send and store the passwords a little more secure to/in the servers.
...
Each server and game yield a (usually) different 'salt'. This salt is used by the clients to hash their passwords. This way the passwords are not sent in clear text and it is not trivial to use those hashes on other servers.
NOTE: It is still NOT safe to use your trusted passwords and it will not stop people from being able to 'hijack' your password, it only makes it harder to do and certainly much less trivial than just dumping passwords from the memory.
2007-12-02 15:12:19 +00:00
skidd13
71c4325c50
(svn r11481) -Codechange: Rename the HASBIT function to fit with the naming style
2007-11-19 21:02:30 +00:00
skidd13
58bb5c7525
(svn r11480) -Codechange: Rename the function ALIGN fitting to the naming style
...
This fixes also FS#1450
2007-11-19 20:40:14 +00:00
skidd13
8be526e499
(svn r11475) -Codechange: rename clamp and clampu to Clamp and ClampU to fit with the coding style
2007-11-19 18:38:10 +00:00
truelight
e288b2456f
(svn r11357) -Fix: NetworkUniqueID could be 80 chars, while the max size we generate is 32. So reduce the size a bit. Pointed out by dihedral, so give him a big hug ;)
2007-10-30 11:29:01 +00:00
rubidium
8795050ff7
(svn r11290) -Fix: obiwan in the assertion that checked for overflows when writing a packet, causing still correctly sized packets to cause assertions.
2007-10-18 17:44:59 +00:00
rubidium
809238e634
(svn r10729) -Fix: some hardware (PS(P|3)) seems to loose the non-blocking state of UDP sockets.
2007-07-29 22:21:26 +00:00
rubidium
872e74c028
(svn r10501) -Fix [FS#1015]: error dialog was sometimes shown on all clients when a command failed instead of only the client that actually did the command.
2007-07-10 20:59:41 +00:00
glx
6e653cd1ab
(svn r10017) -Add (FS#790): more languages flags for servers
2007-06-01 23:06:01 +00:00
rubidium
80c259f64f
(svn r9672) -Cleanup: lots of coding style fixes around operands.
2007-04-18 22:10:36 +00:00
rubidium
24c4d5b06d
(svn r9051) -Codechange: typedef [enum|struct] Y {} X; -> [enum|struct] X {};
2007-03-07 12:11:48 +00:00
rubidium
36bb92ae24
(svn r9050) -Codechange: Foo(void) -> Foo()
2007-03-07 11:47:46 +00:00
rubidium
a2b5b74b83
(svn r9038) -Fix [FS#115]: inactive connections are not automatically kicked, i.e. people who only open a telnet (or similar) connection to a server.
2007-03-06 22:00:42 +00:00
celestar
0ed4b64e64
(svn r8857) -Documentation: Added some doxygen @file tags, repaired others (the @file tag MUST be found before any line of code, that includes preprocessor directives).
2007-02-23 08:37:33 +00:00
truelight
0d91ed68a9
(svn r8674) [PSP] -Add: added network code for PSP, based on the work of Turulo
...
-Add: added general header-inclusing for PSP
2007-02-11 13:57:35 +00:00
rubidium
b71d6e1401
(svn r8673) -Codechange: use SetNonBlocking instead of implementing yet another version.
2007-02-11 13:39:23 +00:00
truelight
c46a1cc2f6
(svn r8631) -Add: added parameter -l ip[:port] to ./openttd, which redirects DEBUG() to a remote connection over TCP
...
For example, launch on 192.168.0.1 with, say, netcat a listener: netcat -l -p 3982
Launch OpenTTD on a remote host (say, PSP): ./openttd -l 192.168.0.1 -d9
And you get all debug information on 192.168.0.1. Very useful for debugging Portable systems.
2007-02-08 12:27:53 +00:00