diff options
author | Badlop <badlop@process-one.net> | 2008-07-12 21:32:45 +0000 |
---|---|---|
committer | Badlop <badlop@process-one.net> | 2008-07-12 21:32:45 +0000 |
commit | 983022438ecd6e1e7f63207af1fb84842a76643b (patch) | |
tree | 34dcc85ded5f969ae796d5022aeeb8ff16bfafca | |
parent | * src/mod_register.erl: Revert support for io_lib newline, since (diff) |
* src/configure.ac: Improve legibility
* src/aclocal.m4: Likewise
* src/configure: Likewise
* src/ejabberdctl.template: Remove garbage variable. Document node
option
* doc/guide.tex: Add references to sections.
* doc/guide.html: Likewise
SVN Revision: 1438
-rw-r--r-- | ChangeLog | 12 | ||||
-rw-r--r-- | doc/guide.html | 14 | ||||
-rw-r--r-- | doc/guide.tex | 13 | ||||
-rw-r--r-- | src/aclocal.m4 | 15 | ||||
-rwxr-xr-x | src/configure | 44 | ||||
-rw-r--r-- | src/configure.ac | 10 | ||||
-rw-r--r-- | src/ejabberdctl.template | 2 |
7 files changed, 67 insertions, 43 deletions
@@ -1,3 +1,15 @@ +2008-07-12 Badlop <badlop@process-one.net> + + * src/configure.ac: Improve legibility + * src/aclocal.m4: Likewise + * src/configure: Likewise + + * src/ejabberdctl.template: Remove garbage variable. Document node + option + + * doc/guide.tex: Add references to sections. + * doc/guide.html: Likewise + 2008-07-11 Badlop <badlop@process-one.net> * src/mod_register.erl: Revert support for io_lib newline, since diff --git a/doc/guide.html b/doc/guide.html index d1841a4cb..a3963637b 100644 --- a/doc/guide.html +++ b/doc/guide.html @@ -333,14 +333,14 @@ Alternatively, the latest development version can be retrieved from the Subversi </P><P>To compile <TT>ejabberd</TT> execute the commands: </P><PRE CLASS="verbatim">./configure make -</PRE><P>The build configuration script provides several parameters. +</PRE><P>The build configuration script allows several options. To get the full list run the command: </P><PRE CLASS="verbatim">./configure --help </PRE><P>Some options that you may be interested in modifying: </P><DL CLASS="description"><DT CLASS="dt-description"> <B><TT>--prefix=/</TT></B></DT><DD CLASS="dd-description"> Specify the path prefix where the files will be copied when running the make install command.<P> </P></DD><DT CLASS="dt-description"><B><TT>--enable-pam</TT></B></DT><DD CLASS="dd-description"> - Enable the PAM authentication method.<P> </P></DD><DT CLASS="dt-description"><B><TT>--enable-odbc or --enable-mssql</TT></B></DT><DD CLASS="dd-description"> + Enable the PAM authentication method (see section <A HREF="#pam">3.1.4</A>).<P> </P></DD><DT CLASS="dt-description"><B><TT>--enable-odbc or --enable-mssql</TT></B></DT><DD CLASS="dd-description"> Required if you want to use an external database. See section <A HREF="#database">3.2</A> for more information.<P> </P></DD><DT CLASS="dt-description"><B><TT>--enable-full-xml</TT></B></DT><DD CLASS="dd-description"> Enable the use of XML based optimisations. @@ -351,7 +351,8 @@ To get the full list run the command: <H3 CLASS="subsection"><!--SEC ANCHOR --><A NAME="htoc12">2.4.4</A>  <A HREF="#install">Install</A></H3><!--SEC END --><P> <A NAME="install"></A> </P><P>To install <TT>ejabberd</TT> in the destination directories, run the command: </P><PRE CLASS="verbatim">make install -</PRE><P>Note that you may need to have administrative privileges in the system.</P><P>The files and directories created are, by default: +</PRE><P>Note that you probably need administrative privileges in the system +to install <TT>ejabberd</TT>.</P><P>The files and directories created are, by default: </P><DL CLASS="description"><DT CLASS="dt-description"> <B><TT>/etc/ejabberd/</TT></B></DT><DD CLASS="dd-description"> Configuration files: <DL CLASS="description"><DT CLASS="dt-description"> @@ -359,7 +360,7 @@ To get the full list run the command: </DD><DT CLASS="dt-description"><B><TT>ejabberdctl.cfg</TT></B></DT><DD CLASS="dd-description"> Configuration file of the administration script </DD><DT CLASS="dt-description"><B><TT>inetrc</TT></B></DT><DD CLASS="dd-description"> Network DNS configuration </DD></DL> - </DD><DT CLASS="dt-description"><B><TT>/sbin/ejabberdctl</TT></B></DT><DD CLASS="dd-description"> Administration script + </DD><DT CLASS="dt-description"><B><TT>/sbin/ejabberdctl</TT></B></DT><DD CLASS="dd-description"> Administration script (see section <A HREF="#ejabberdctl">4.1</A>) </DD><DT CLASS="dt-description"><B><TT>/var/lib/ejabberd/</TT></B></DT><DD CLASS="dd-description"> <DL CLASS="description"><DT CLASS="dt-description"> <B><TT>.erlang.cookie</TT></B></DT><DD CLASS="dd-description"> Erlang cookie file (see section <A HREF="#cookie">5.3</A>) @@ -367,7 +368,8 @@ To get the full list run the command: </DD><DT CLASS="dt-description"><B><TT>ebin</TT></B></DT><DD CLASS="dd-description"> Binary Erlang files (*.beam) </DD><DT CLASS="dt-description"><B><TT>priv</TT></B></DT><DD CLASS="dd-description"> <DL CLASS="description"><DT CLASS="dt-description"> - <B><TT>lib</TT></B></DT><DD CLASS="dd-description"> Binary system libraries (*.so) + <B><TT>bin</TT></B></DT><DD CLASS="dd-description"> Binary C programs + </DD><DT CLASS="dt-description"><B><TT>lib</TT></B></DT><DD CLASS="dd-description"> Binary system libraries (*.so) </DD><DT CLASS="dt-description"><B><TT>msgs</TT></B></DT><DD CLASS="dd-description"> Translated strings (*.msgs) </DD></DL> </DD></DL> @@ -939,7 +941,7 @@ for more information. </PRE><P>Though it is quite easy to set up PAM support in <TT>ejabberd</TT>, PAM itself introduces some security issues:</P><UL CLASS="itemize"><LI CLASS="li-itemize"> To perform PAM authentication <TT>ejabberd</TT> uses external C-program called -<TT>epam</TT>. By default, it is located in <CODE>/var/lib/ejabberd/priv/lib/</CODE> +<TT>epam</TT>. By default, it is located in <CODE>/var/lib/ejabberd/priv/bin/</CODE> directory. You have to set it root on execution in the case when your PAM module requires root privileges (<TT>pam_unix.so</TT> for example). Also you have to grant access for <TT>ejabberd</TT> to this file and remove all other permissions from it. diff --git a/doc/guide.tex b/doc/guide.tex index 49e40400d..b5dbc41da 100644 --- a/doc/guide.tex +++ b/doc/guide.tex @@ -313,7 +313,7 @@ To compile \ejabberd{} execute the commands: make \end{verbatim} -The build configuration script provides several parameters. +The build configuration script allows several options. To get the full list run the command: \begin{verbatim} ./configure --help @@ -325,7 +325,7 @@ Some options that you may be interested in modifying: Specify the path prefix where the files will be copied when running the make install command. \titem{--enable-pam} - Enable the PAM authentication method. + Enable the PAM authentication method (see section \ref{pam}). \titem{--enable-odbc or --enable-mssql} Required if you want to use an external database. @@ -348,7 +348,8 @@ To install \ejabberd{} in the destination directories, run the command: \begin{verbatim} make install \end{verbatim} -Note that you may need to have administrative privileges in the system. +Note that you probably need administrative privileges in the system +to install \term{ejabberd}. The files and directories created are, by default: \begin{description} @@ -358,7 +359,7 @@ The files and directories created are, by default: \titem{ejabberdctl.cfg} Configuration file of the administration script \titem{inetrc} Network DNS configuration \end{description} - \titem{/sbin/ejabberdctl} Administration script + \titem{/sbin/ejabberdctl} Administration script (see section~\ref{ejabberdctl}) \titem{/var/lib/ejabberd/} \begin{description} \titem{.erlang.cookie} Erlang cookie file (see section \ref{cookie}) @@ -366,6 +367,7 @@ The files and directories created are, by default: \titem{ebin} Binary Erlang files (*.beam) \titem{priv} \begin{description} + \titem{bin} Binary C programs \titem{lib} Binary system libraries (*.so) \titem{msgs} Translated strings (*.msgs) \end{description} @@ -393,6 +395,7 @@ ejabberd is running ejabberdctl stop \end{verbatim} + Please refer to the section~\ref{ejabberdctl} for details about \term{ejabberdctl}, and configurable options to fine tune the Erlang runtime system. @@ -1117,7 +1120,7 @@ security issues: \begin{itemize} \item To perform PAM authentication \ejabberd{} uses external C-program called -\term{epam}. By default, it is located in \verb|/var/lib/ejabberd/priv/lib/| +\term{epam}. By default, it is located in \verb|/var/lib/ejabberd/priv/bin/| directory. You have to set it root on execution in the case when your PAM module requires root privileges (\term{pam\_unix.so} for example). Also you have to grant access for \ejabberd{} to this file and remove all other permissions from it. diff --git a/src/aclocal.m4 b/src/aclocal.m4 index 46020d339..a1c9416ba 100644 --- a/src/aclocal.m4 +++ b/src/aclocal.m4 @@ -1,6 +1,6 @@ AC_DEFUN(AM_WITH_EXPAT, [ AC_ARG_WITH(expat, - [ --with-expat=PREFIX prefix where EXPAT is installed]) + [AC_HELP_STRING([--with-expat=PREFIX], [prefix where EXPAT is installed])]) EXPAT_CFLAGS= EXPAT_LIBS= @@ -34,7 +34,7 @@ AC_DEFUN(AM_WITH_EXPAT, AC_DEFUN(AM_WITH_ZLIB, [ AC_ARG_WITH(zlib, - [ --with-zlib=PREFIX prefix where zlib is installed]) + [AC_HELP_STRING([--with-zlib=PREFIX], [prefix where zlib is installed])]) ZLIB_CFLAGS= ZLIB_LIBS= @@ -68,7 +68,7 @@ AC_DEFUN(AM_WITH_ZLIB, AC_DEFUN(AM_WITH_PAM, [ AC_ARG_WITH(pam, - [ --with-pam=PREFIX prefix where PAM is installed]) + [AC_HELP_STRING([--with-pam=PREFIX], [prefix where PAM is installed])]) PAM_CFLAGS= PAM_LIBS= @@ -102,7 +102,7 @@ AC_DEFUN(AM_WITH_PAM, AC_DEFUN(AM_WITH_ERLANG, [ AC_ARG_WITH(erlang, - [ --with-erlang=PREFIX path to erlc and erl ]) + [AC_HELP_STRING([--with-erlang=PREFIX], [path to erlc and erl])]) AC_PATH_TOOL(ERLC, erlc, , $with_erlang:$with_erlang/bin:$PATH) AC_PATH_TOOL(ERL, erl, , $with_erlang:$with_erlang/bin:$PATH) @@ -195,14 +195,13 @@ _EOF AC_SUBST(ERL) ]) - AC_DEFUN(AC_MOD_ENABLE, [ $1= make_$1= AC_MSG_CHECKING([whether build $1]) AC_ARG_ENABLE($1, - [ --enable-$1 enable $1 (default: $2)], + [AC_HELP_STRING([--enable-$1], [enable $1 (default: $2)])], [mr_enable_$1="$enableval"], [mr_enable_$1=$2]) if test "$mr_enable_$1" = "yes"; then @@ -223,7 +222,7 @@ AC_DEFUN([AM_ICONV], dnl Some systems have iconv in libc, some have it in libiconv (OSF/1 and dnl those with the standalone portable GNU libiconv installed). AC_ARG_WITH([libiconv-prefix], -[ --with-libiconv-prefix=PREFIX prefix where libiconv is installed], [ + [AC_HELP_STRING([--with-libiconv-prefix=PREFIX], [prefix where libiconv is installed])], [ for dir in `echo "$withval" | tr : ' '`; do if test -d $dir/include; then CPPFLAGS="$CPPFLAGS -I$dir/include"; fi if test -d $dir/include; then CFLAGS="$CFLAGS -I$dir/include"; fi @@ -308,7 +307,7 @@ size_t iconv(); dnl <openssl> AC_DEFUN(AM_WITH_OPENSSL, [ AC_ARG_WITH(openssl, - [ --with-openssl=PREFIX prefix where OPENSSL is installed ]) + [AC_HELP_STRING([--with-openssl=PREFIX], [prefix where OPENSSL is installed])]) unset SSL_LIBS; unset SSL_CFLAGS; have_openssl=no diff --git a/src/configure b/src/configure index 5829e2d95..e484e110c 100755 --- a/src/configure +++ b/src/configure @@ -1281,31 +1281,39 @@ if test -n "$ac_init_help"; then Optional Features: --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) --enable-FEATURE[=ARG] include FEATURE [ARG=yes] - --enable-mod_pubsub enable mod_pubsub (default: yes) + --enable-mod_pubsub enable mod_pubsub (default: yes) --enable-mod_irc enable mod_irc (default: yes) --enable-mod_muc enable mod_muc (default: yes) - --enable-mod_proxy65 enable mod_proxy65 (default: yes) - --enable-eldap enable eldap (default: yes) - --enable-pam enable pam (default: no) - --enable-web enable web (default: yes) - --enable-tls enable tls (default: yes) - --enable-odbc enable odbc (default: no) - --enable-ejabberd_zlib enable ejabberd_zlib (default: yes) - --enable-hipe Compile natively with HiPE, not recommended (default: no) - --enable-roster-gateway-workaround Turn on workaround for processing gateway subscriptions (default: no) - --enable-mssql Use Microsoft SQL Server database (default: no, requires --enable-odbc) - --enable-transient_supervisors Use Erlang supervision for transient process (default: yes) - --enable-full-xml Use XML features in XMPP stream (ex: CDATA) (default: no, requires XML compliant clients) + --enable-mod_proxy65 enable mod_proxy65 (default: yes) + --enable-eldap enable eldap (default: yes) + --enable-pam enable pam (default: no) + --enable-web enable web (default: yes) + --enable-tls enable tls (default: yes) + --enable-odbc enable odbc (default: no) + --enable-ejabberd_zlib enable ejabberd_zlib (default: yes) + --enable-hipe compile natively with HiPE, not recommended + (default: no) + --enable-roster-gateway-workaround + turn on workaround for processing gateway + subscriptions (default: no) + --enable-mssql use Microsoft SQL Server database (default: no, + requires --enable-odbc) + --enable-transient_supervisors + use Erlang supervision for transient process + (default: yes) + --enable-full-xml use XML features in XMPP stream (ex: CDATA) + (default: no, requires XML compliant clients) Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) --with-erlang=PREFIX path to erlc and erl - --with-libiconv-prefix=PREFIX prefix where libiconv is installed - --with-expat=PREFIX prefix where EXPAT is installed - --with-zlib=PREFIX prefix where zlib is installed - --with-pam=PREFIX prefix where PAM is installed - --with-openssl=PREFIX prefix where OPENSSL is installed + --with-libiconv-prefix=PREFIX + prefix where libiconv is installed + --with-expat=PREFIX prefix where EXPAT is installed + --with-zlib=PREFIX prefix where zlib is installed + --with-pam=PREFIX prefix where PAM is installed + --with-openssl=PREFIX prefix where OPENSSL is installed Some influential environment variables: CC C compiler command diff --git a/src/configure.ac b/src/configure.ac index 254b16b06..15d099dc2 100644 --- a/src/configure.ac +++ b/src/configure.ac @@ -48,7 +48,7 @@ AC_MOD_ENABLE(odbc, no) AC_MOD_ENABLE(ejabberd_zlib, yes) AC_ARG_ENABLE(hipe, -[ --enable-hipe Compile natively with HiPE, not recommended (default: no)], +[AC_HELP_STRING([--enable-hipe], [compile natively with HiPE, not recommended (default: no)])], [case "${enableval}" in yes) hipe=true ;; no) hipe=false ;; @@ -57,7 +57,7 @@ esac],[hipe=false]) AC_SUBST(hipe) AC_ARG_ENABLE(roster_gateway_workaround, -[ --enable-roster-gateway-workaround Turn on workaround for processing gateway subscriptions (default: no)], +[AC_HELP_STRING([--enable-roster-gateway-workaround], [turn on workaround for processing gateway subscriptions (default: no)])], [case "${enableval}" in yes) roster_gateway_workaround=true ;; no) roster_gateway_workaround=false ;; @@ -66,7 +66,7 @@ esac],[roster_gateway_workaround=false]) AC_SUBST(roster_gateway_workaround) AC_ARG_ENABLE(mssql, -[ --enable-mssql Use Microsoft SQL Server database (default: no, requires --enable-odbc)], +[AC_HELP_STRING([--enable-mssql], [use Microsoft SQL Server database (default: no, requires --enable-odbc)])], [case "${enableval}" in yes) db_type=mssql ;; no) db_type=generic ;; @@ -75,7 +75,7 @@ esac],[db_type=generic]) AC_SUBST(db_type) AC_ARG_ENABLE(transient_supervisors, -[ --enable-transient_supervisors Use Erlang supervision for transient process (default: yes)], +[AC_HELP_STRING([--enable-transient_supervisors], [use Erlang supervision for transient process (default: yes)])], [case "${enableval}" in yes) transient_supervisors=true ;; no) transient_supervisors=false ;; @@ -84,7 +84,7 @@ esac],[transient_supervisors=true]) AC_SUBST(transient_supervisors) AC_ARG_ENABLE(full_xml, -[ --enable-full-xml Use XML features in XMPP stream (ex: CDATA) (default: no, requires XML compliant clients)], +[AC_HELP_STRING([--enable-full-xml], [use XML features in XMPP stream (ex: CDATA) (default: no, requires XML compliant clients)])], [case "${enableval}" in yes) full_xml=true ;; no) full_xml=false ;; diff --git a/src/ejabberdctl.template b/src/ejabberdctl.template index e086d1ef4..fc768fe3d 100644 --- a/src/ejabberdctl.template +++ b/src/ejabberdctl.template @@ -135,7 +135,6 @@ live () echo "" erl \ $NAME $ERLANG_NODE \ - $ERLANG_OPTS \ -pa $EJABBERD_EBIN \ -mnesia dir "\"$EJABBERD_DB\"" \ -s ejabberd \ @@ -165,6 +164,7 @@ ctl () echo " --ctl-config file Config file of ejabberdctl: $CONFIG" echo " --logs dir Directory for logs: $LOGS_DIR" echo " --spool dir Database spool dir: $EJABBERD_DB" + echo " --node nodename ejabberd node name: $ERLANG_NODE" echo "";; esac return $result |