ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/ext/tcp.ext
Revision: 1.13
Committed: Sun Nov 29 10:52:14 2009 UTC (14 years, 5 months ago) by root
Branch: MAIN
CVS Tags: rel-2_92
Changes since 1.12: +1 -5 lines
Log Message:
one hack less

File Contents

# User Rev Content
1 root 1.12 #! perl # MANDATORY
2 root 1.1
3     # this listens for new tcp connections and hands them over to the server core
4     # wether this being an extension introduces or reduces stability problems
5     # is unknown as of today.
6    
7     use Socket;
8 root 1.12 use AnyEvent::Socket;
9 root 1.1
10 root 1.12 our $BIND = $cf::CFG{bind_addresses} || [[undef, 13327]];
11    
12     for (@$BIND) {
13     my ($host, $port) = @$_;
14     warn "listening on $host:$port\n";
15    
16     tcp_server $host, $port, sub {
17     my ($fh, $host, $port) = @_
18     or return;
19    
20     warn "new connection from [$host]:$port\n";
21    
22     # HACK to avoid blocking on common files on log-in.
23     # remove once async
24     cf::async {#d#
25     warn "HACK ext/tcp.ext: $cf::LOCALDIR/crossfiremail\n" and Coro::AIO::aio_load "$cf::LOCALDIR/crossfiremail", my $dummy;#d#
26 root 1.13 cf::client::create fileno $fh, $host;
27 root 1.12 };#d#d
28     };
29 root 1.1 }
30