home *** CD-ROM | disk | FTP | other *** search
/ Clickx 115 / Clickx 115.iso / software / tools / windows / tails-i386-0.16.iso / live / filesystem.squashfs / usr / share / doc / libio-socket-ssl-perl / BUGS next >
Encoding:
Text File  |  2009-01-22  |  3.5 KB  |  95 lines

  1. See documentation.
  2. Following are some common errors to watch out for:
  3.  
  4.  
  5. It doesn't work together with Storable::fd_retrieve|fd_store, see
  6. https://rt.cpan.org/Ticket/Display.html?id=23419.
  7. You need to use freeze/nfreeze/thaw and syswrite/sysread the data
  8. yourself. See the bug for examples how to do it.
  9.  
  10. ---------------------
  11.  
  12. If you get an SSL connection but not certificate you might check
  13. the cipher with Net::SSLeay::get_cipher( $socket->_get_ssl_object ).
  14. If it is something like 'ADH-AES256-SHA' you should try to disable
  15. ADH in your cipherlist, e.g. set SSL_cipherlist to 'ALL:!ADH'
  16. or just leave it empty so that it uses the openssl default
  17. which does not include ADH.
  18.  
  19. ---------------------
  20.  
  21. There is a problem with openssl versions 0.9.8a and 0.9.8b, see
  22. http://marc.theaimsgroup.com/?l=openssl-dev&m=113550694922967&w=2
  23. The bug was fixed in newer releases, but if you are forced to use 
  24. these buggy versions you should apply a patch to Net::SSLeay 1.30,
  25. see http://rt.cpan.org/Public/Bug/Display.html?id=22910.
  26.  
  27. ---------------------
  28.  
  29. IO::Socket::SSL does not currently support using both IPv4 and IPv6 in
  30. the same program.  For a quick workaround, copy the module 'SSL.pm' to
  31. another named 'SSL6.pm' and adjust the package declaration
  32. accordingly.  Support for this feature is planned in the next release.
  33.  
  34. ---------------------
  35.  
  36. If you plan on having IO::Socket::SSL sockets auto-close themselves
  37. when they go out of scope (like LWP::UserAgent expects), you will
  38. need to get Scalar::Util or WeakRef from CPAN (Scalar::Util comes
  39. standard with Perl 5.8.0 and above).  This is because the self-tying
  40. mechanism that IO::Socket::SSL uses to appear simultaneously as an
  41. object and a glob reference only works if a circular reference is
  42. used.
  43.  
  44. ---------------------
  45.  
  46. Note that a random number generator is required for the proper
  47. operation of this module.  Systems that have /dev/random or
  48. /dev/urandom are fine, but those that do not, like most versions
  49. of Solaris, will need to fetch one before installing IO::Socket::SSL.
  50. If you don't already have a favorite, try EGD (egd.sourceforge.net).
  51.  
  52. ---------------------
  53.  
  54. Versions of perl-ldap below v0.26 do not work with this version
  55. of IO::Socket::SSL because they contain a workaround for old
  56. versions of IO::Socket::SSL that breaks new versions.
  57.  
  58. ---------------------
  59.  
  60. Note that when writing a preforking server (a server that accepts a
  61. connection and then hands it off to a child for processing), it is
  62. best to handle SSL negotiation after the socket has been passed to
  63. the child (using socket_to_SSL()).  If implemented so that the server
  64. handles negotiation, a failed negotiation may tie up the server until
  65. the connection times out.
  66.  
  67. ---------------------
  68.  
  69. One user mentioned that the following did not work as it should in
  70. IO::Socket::SSL, but worked in IO::Socket::INET:
  71.  
  72. chomp($var = <$socket>);
  73. print ord(chop($var));    # Prints "10" for people using ASCII
  74.  
  75. This is due to a bug in Perl that is fixed in 5.8.1.  If you need
  76. a workaround, try one of the following:
  77.  
  78. chomp($var = $socket->getline());
  79. chomp($var = scalar <$socket>);
  80. chomp($var = $var = <$socket>);
  81.  
  82. Any function that returns the value of <$socket> (in scalar context)
  83. unchanged will work.
  84.  
  85. ---------------------
  86.  
  87. If you have 384-bit RSA keys you need to use Diffie Hellman Key Exchange.
  88. See the parameter SSL_dh_file or SSL_dh for how to use it and
  89. http://groups.google.de/group/mailing.openssl.users/msg/d60330cfa7a6034b
  90. for an explanation why you need it.
  91.  
  92. -- 
  93. Peter Behroozi (behrooz at fas.harvard.edu)
  94. Steffen Ullrich (Steffen_Ullrich at genua.de)
  95.