1Net::Server::Proto::SSLU(s3e)r Contributed Perl DocumentaNteito:n:Server::Proto::SSL(3)
2
3
4
6 Net::Server::Proto::SSL - Net::Server SSL protocol.
7
9 See Net::Server::Proto.
10
12 Experimental. If anybody has any successes or ideas for improvment
13 under SSL, please email <paul@seamons.com>.
14
15 Protocol module for Net::Server. This module implements a secure
16 socket layer over tcp (also known as SSL). See Net::Server::Proto.
17
18 There is a limit inherent from using IO::Socket::SSL, namely that only
19 one SSL connection can be maintained by Net::Server. However,
20 Net::Server should also be able to maintain any number of TCP, UDP, or
21 UNIX connections in addition to the one SSL connection.
22
23 Additionally, getline support is very limited and writing directly to
24 STDOUT will not work. This is entirely dependent upon the
25 implementation of IO::Socket::SSL. getline may work but the client is
26 not copied to STDOUT under SSL. It is suggested that clients sysread
27 and syswrite to the client handle (located in $self->{server}->{client}
28 or passed to the process_request subroutine as the first argument).
29
31 In addition to the normal Net::Server parameters, any of the SSL
32 parameters from IO::Socket::SSL may also be specified. See
33 IO::Socket::SSL for information on setting this up.
34
36 Christopher A Bongaarts pointed out that if the SSL negotiation is slow
37 then the server won't be accepting for that period of time (because the
38 locking of accept is around both the socket accept and the SSL
39 negotiation). This means that as it stands now the SSL implementation
40 is susceptible to DOS attacks. To fix this will require deviding up
41 the accept call a little bit more finely which may not yet be possible
42 with IO::Socket::SSL. Any ideas or patches on this bug are welcome.
43
45 Distributed under the same terms as Net::Server
46
48 Thanks to Vadim for pointing out the IO::Socket::SSL accept was
49 returning objects blessed into the wrong class.
50
51
52
53perl v5.12.0 2007-02-03 Net::Server::Proto::SSL(3)