From 4c08e65fabe9c641855b86481b4675c28d039b75 Mon Sep 17 00:00:00 2001 From: Badlop Date: Mon, 9 Mar 2009 19:17:53 +0000 Subject: [PATCH] * src/tls/tls_drv.c: Fix to support OpenSSL older than 0.9.8f (EJAB-877)(thanks to Jonathan Schleifer) * doc/guide.tex: It is again supported OpenSSL older than 0.9.8f * doc/guide.html: Likewise SVN Revision: 1979 --- ChangeLog | 5 +++++ doc/guide.html | 14 +++++++------- doc/guide.tex | 14 +++++++------- src/tls/tls_drv.c | 4 ++++ 4 files changed, 23 insertions(+), 14 deletions(-) diff --git a/ChangeLog b/ChangeLog index d2baefebb..af9a88f5c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,10 @@ 2009-03-09 Badlop + * src/tls/tls_drv.c: Fix to support OpenSSL older than + 0.9.8f (EJAB-877)(thanks to Jonathan Schleifer) + * doc/guide.tex: It is again supported OpenSSL older than 0.9.8f + * doc/guide.html: Likewise + * src/mod_proxy65/mod_proxy65_service.erl: if an ip option is not defined, the module takes an IP address of a local hostname (thanks to Evgeniy Khramtsov) diff --git a/doc/guide.html b/doc/guide.html index 377dbbdb3..631ae306d 100644 --- a/doc/guide.html +++ b/doc/guide.html @@ -331,7 +331,7 @@ GNU Make
  • GCC
  • Libexpat 1.95 or higher
  • Erlang/OTP R10B-9 or higher. -
  • OpenSSL 0.9.8f or higher, for STARTTLS, SASL and SSL encryption. Optional, highly recommended. +
  • OpenSSL 0.9.6 or higher, for STARTTLS, SASL and SSL encryption. Optional, highly recommended.
  • Zlib 1.2.3 or higher, for Stream Compression support (XEP-0138). Optional.
  • Erlang mysql library. Optional. For MySQL authentication or storage. See section 3.2.1.
  • Erlang pgsql library. Optional. For PostgreSQL authentication or storage. See section 3.2.3. @@ -455,7 +455,7 @@ MS Visual C++ 6.0 Compiler
  • Expat 2.0.0 or higher
  • GNU Iconv 1.9.2 (optional) -
  • Shining Light OpenSSL 0.9.8f or higher +
  • Shining Light OpenSSL 0.9.8d or higher (to enable SSL connections)
  • Zlib 1.2.3 or higher
  • @@ -1305,7 +1305,7 @@ if you define several domains in ejabberd.cfg (see section you probably want that each virtual host uses a different configuration of database, authentication and storage, so that usernames do not conflict and mix between different virtual hosts. For that purpose, the options described in the next sections -must be set inside a host_cofig for each vhost (see section 3.1.2). +must be set inside a host_config for each vhost (see section 3.1.2). For example:

    {host_config, "public.example.org", [
       {odbc_server, {pgsql, "localhost", "database-public-example-org", "ejabberd", "password"}},
    @@ -2510,7 +2510,7 @@ In the body you can set a newline with the characters: \n
     list of JIDs which will be notified each time a new account is registered.
     
    iqdisc
    This specifies the processing discipline for In-Band Registration (jabber:iq:register) IQ queries (see section 3.3.2). -

    This module reads also another option defined globably for the server: +

    This module reads also another option defined globally for the server: {registration_timeout, Timeout}. This option limits the frequency of registration from a given IP or username. So, a user can’t register a new account from the same IP address or JID during @@ -2976,7 +2976,7 @@ they are automatically renamed to "*-old.log". See section restore ejabberd.backup

    Restore immediately from a binary backup file the internal Mnesia database. -This will comsume quite some memory for big servers. +This will consume quite some memory for big servers.
    install-fallback ejabberd.backup
    The binary backup file is installed as fallback: it will be used to restore the database at the next ejabberd start. @@ -2998,9 +2998,9 @@ This allows to administer a remote node.

    The ejabberdctl script c This file includes detailed information about each configurable option.

    The ejabberdctl script returns a numerical status code. Success is represented by 0, error is represented by 1, -and other codes may be used for specifical results. +and other codes may be used for specific results. This can be used by other scripts to determine automatically -if a command succedded or failed, +if a command succeeded or failed, for example using: echo $?

    4.1.2  Erlang Runtime System

    ejabberd is an Erlang/OTP application that runs inside an Erlang runtime system. This system is configured using environment variables and command line parameters. diff --git a/doc/guide.tex b/doc/guide.tex index 57e37a794..1c3df924e 100644 --- a/doc/guide.tex +++ b/doc/guide.tex @@ -299,7 +299,7 @@ To compile \ejabberd{} on a `Unix-like' operating system, you need: \item GCC \item Libexpat 1.95 or higher \item Erlang/OTP R10B-9 or higher. -\item OpenSSL 0.9.8f or higher, for STARTTLS, SASL and SSL encryption. Optional, highly recommended. +\item OpenSSL 0.9.6 or higher, for STARTTLS, SASL and SSL encryption. Optional, highly recommended. \item Zlib 1.2.3 or higher, for Stream Compression support (\xepref{0138}). Optional. \item Erlang mysql library. Optional. For MySQL authentication or storage. See section \ref{compilemysql}. \item Erlang pgsql library. Optional. For PostgreSQL authentication or storage. See section \ref{compilepgsql}. @@ -488,7 +488,7 @@ To compile \ejabberd{} on a Microsoft Windows system, you need: \item \footahref{http://www.gnu.org/software/libiconv/}{GNU Iconv 1.9.2} (optional) -\item \footahref{http://www.slproweb.com/products/Win32OpenSSL.html}{Shining Light OpenSSL 0.9.8f or higher} +\item \footahref{http://www.slproweb.com/products/Win32OpenSSL.html}{Shining Light OpenSSL 0.9.8d or higher} (to enable SSL connections) \item \footahref{http://www.zlib.net/}{Zlib 1.2.3 or higher} \end{itemize} @@ -1672,7 +1672,7 @@ if you define several domains in ejabberd.cfg (see section \ref{hostnames}), you probably want that each virtual host uses a different configuration of database, authentication and storage, so that usernames do not conflict and mix between different virtual hosts. For that purpose, the options described in the next sections -must be set inside a \term{host\_cofig} for each vhost (see section \ref{virtualhost}). +must be set inside a \term{host\_config} for each vhost (see section \ref{virtualhost}). For example: \begin{verbatim} {host_config, "public.example.org", [ @@ -3246,7 +3246,7 @@ Options: \iqdiscitem{In-Band Registration (\ns{jabber:iq:register})} \end{description} -This module reads also another option defined globably for the server: +This module reads also another option defined globally for the server: \term{\{registration\_timeout, Timeout\}}. \ind{options!registratimeout} This option limits the frequency of registration from a given IP or username. So, a user can't register a new account from the same IP address or JID during @@ -3837,7 +3837,7 @@ The more interesting ones are: Store internal Mnesia database to a binary backup file. \titem {restore ejabberd.backup} Restore immediately from a binary backup file the internal Mnesia database. - This will comsume quite some memory for big servers. + This will consume quite some memory for big servers. \titem {install-fallback ejabberd.backup} The binary backup file is installed as fallback: it will be used to restore the database at the next ejabberd start. @@ -3867,9 +3867,9 @@ This file includes detailed information about each configurable option. The \term{ejabberdctl} script returns a numerical status code. Success is represented by \term{0}, error is represented by \term{1}, -and other codes may be used for specifical results. +and other codes may be used for specific results. This can be used by other scripts to determine automatically -if a command succedded or failed, +if a command succeeded or failed, for example using: \term{echo \$?} diff --git a/src/tls/tls_drv.c b/src/tls/tls_drv.c index e7b07028b..257262607 100644 --- a/src/tls/tls_drv.c +++ b/src/tls/tls_drv.c @@ -40,6 +40,10 @@ typedef struct { typedef unsigned __int32 uint32_t; #endif +#ifndef SSL_OP_NO_TICKET +#define SSL_OP_NO_TICKET 0 +#endif + /* * str_hash is based on the public domain code from * http://www.burtleburtle.net/bob/hash/doobs.html