<html xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns="http://www.w3.org/TR/REC-html40">

<head>
<meta http-equiv=Content-Type content="text/html; charset=utf-8">
<meta name=ProgId content=Word.Document>
<meta name=Generator content="Microsoft Word 9">
<meta name=Originator content="Microsoft Word 9">
<link rel=File-List href="./josepl1_files/filelist.xml">
<!--[if gte mso 9]><xml>
 <o:DocumentProperties>
  <o:Author>CMP User</o:Author>
  <o:LastAuthor>CMP User</o:LastAuthor>
  <o:Revision>3</o:Revision>
  <o:TotalTime>2</o:TotalTime>
  <o:Created>2001-10-24T18:17:00Z</o:Created>
  <o:LastSaved>2001-10-24T18:20:00Z</o:LastSaved>
  <o:Pages>1</o:Pages>
  <o:Words>190</o:Words>
  <o:Characters>1083</o:Characters>
  <o:Company>CMP Media Inc.</o:Company>
  <o:Lines>9</o:Lines>
  <o:Paragraphs>2</o:Paragraphs>
  <o:CharactersWithSpaces>1330</o:CharactersWithSpaces>
  <o:Version>9.3821</o:Version>
 </o:DocumentProperties>
</xml><![endif]-->
<style>
<!--
 /* Font Definitions */
@font-face
	{font-family:"MS Mincho";
	panose-1:0 0 0 0 0 0 0 0 0 0;
	mso-font-alt:"ＭＳ 明朝";
	mso-font-charset:128;
	mso-generic-font-family:roman;
	mso-font-format:other;
	mso-font-pitch:fixed;
	mso-font-signature:1 134676480 16 0 131072 0;}
@font-face
	{font-family:"\@MS Mincho";
	panose-1:0 0 0 0 0 0 0 0 0 0;
	mso-font-charset:128;
	mso-generic-font-family:roman;
	mso-font-format:other;
	mso-font-pitch:fixed;
	mso-font-signature:1 134676480 16 0 131072 0;}
 /* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{mso-style-parent:"";
	margin:0in;
	margin-bottom:.0001pt;
	mso-pagination:widow-orphan;
	font-size:12.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";}
@page Section1
	{size:8.5in 11.0in;
	margin:1.0in 1.25in 1.0in 1.25in;
	mso-header-margin:.5in;
	mso-footer-margin:.5in;
	mso-paper-source:0;}
div.Section1
	{page:Section1;}
-->
</style>
<!--

     Example Jabber configuration file
     Overall format
     <jabber>
       <service id="sessions">   Session Manager Communication Block
       <service id="c2s">        Client to Server Communication Block
       <service id="s2s">        Server to Server Communication Block
       <service id="dnsrv">      DNS Resolver Block
       <xdb>                     XML File Storage Block
       <logger>                  Logging Block
       <service id="jud">        User Directory (additional module)
       <service id="conference"> Conferencing (additional module)
       <io>                      IO Block
       <pidfile>                 File Containing Server Process Id
     </jabber>

--><jabber><!-- 
     The Jabber Session Manager (JSM) manages all user sessions.  
     Authentication, registration, message routing, and presence management.

     <service id="sessions">
     <load>             Loads shared object code.
     <host>             Defines the hostname for the server.
     <jsm>              Main configuration block for the JSM.
       <filter>	        Defines actions and conditions that clients may 
                        filter incoming  messages on.
       <vCard>          Defines a vCard for the server.
       <register>       Accepts/Denies automatic registration of new users.
       <welcome>        First welcome message all new users see.
       <message>        Presets defined messages, such as the MOTD.
       <admin>          Identifies server administrators, and sets up
                        an autoresponder.
       <browse>         Identifies public services on this server that user
                        clients can access.
     </jsm>
     </service>
--><service id="sessions"><load main="jsm"><jsm></jsm><mod_echo></mod_echo><mod_roster></mod_roster><mod_time></mod_time><mod_vcard></mod_vcard><mod_last></mod_last><mod_version></mod_version><mod_announce></mod_announce><mod_agents></mod_agents><mod_browse></mod_browse><mod_admin></mod_admin><mod_filter></mod_filter><mod_offline></mod_offline><mod_presence></mod_presence><mod_auth_plain></mod_auth_plain><mod_auth_digest></mod_auth_digest><mod_auth_0k></mod_auth_0k><mod_log></mod_log><mod_register></mod_register><mod_xml></mod_xml></load><host><jabberd:cmdline flag="h"></jabberd:cmdline></host><jsm xmlns="jabber:config:jsm"><filter><default/><max_size></max_size><allow><conditions><ns/><unavailable/><from/><resource/><subject/>
</head>

<body lang=EN-US style='tab-interval:.5in'>

<div class=Section1>

<p class=MsoNormal>Listing 1: <span style='font-size:10.0pt;mso-bidi-font-size:
12.0pt;font-family:"Courier New";mso-fareast-font-family:"MS Mincho"'>Configuration
file in XML format</span></p>

<p class=MsoNormal><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></p>

<p class=MsoNormal><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></p>

<p class=MsoNormal>./libexec/jsm.so ./libexec/jsm.so ./libexec/jsm.so
./libexec/jsm.so ./libexec/jsm.so ./libexec/jsm.so ./libexec/jsm.so
./libexec/jsm.so ./libexec/jsm.so ./libexec/jsm.so ./libexec/jsm.so
./libexec/jsm.so ./libexec/jsm.so ./libexec/jsm.so ./libexec/jsm.so ./libexec/jsm.so
./libexec/jsm.so ./libexec/jsm.so ./libexec/jsm.so ./libexec/jsm.so
chat.example.com 100 <o:p></o:p></p>

<p class=MsoNormal><show/><type/><roster/><group/></conditions><actions><error/><offline/><forward/><reply/><continue/><settype/></actions></allow></filter><vCard><FN>Jabber
Server</FN> <DESC>A Jabber Server!</DESC> <URL>http://foo.bar/</URL> </vCard><register notify="yes"><instructions>Select
a username and password to register </instructions><name/><email/></register><welcome><subject>Welcome!</subject>
</p>

<p class=MsoNormal>Welcome to Example.com Jabber server<o:p></o:p></p>

<p class=MsoNormal></welcome><message to="chat.example.com/announce/online">Server
will be town at 5pm for maintenance<o:p></o:p></p>

<p class=MsoNormal></message><message to="chat.example.com/announce/motd">Greetings.
Please report all maintenance issues to admin@chat.example.com<o:p></o:p></p>

<p class=MsoNormal></message><admin><read>support@chat.example.com</read> <write>admin@chat.example.com</write>
<reply><subject>Auto Reply</subject> </p>

<p class=MsoNormal>We have received your request and will respond shortly.<o:p></o:p></p>

<p class=MsoNormal></reply></admin><vcard2jud/><browse><service type="jud" jid="jud.example.com" name="Local User Directory"><ns>jabber:iq:search</ns>
<ns>jabber:iq:register</ns> </service><conference type="public" jid="conference.example.com"    name="Public Chatrooms"/></browse></jsm></service><!--

  The c2s block handles settings relating to client and server communication.
  See the <io> block for an explanation of <karma>.

  <service id="c2s">    Definition for client/server communications.
   <load>               Load shared library handling c2s.
   <pthcsock>           
    <authtime>          Set limit to time for authentication to finish.
    <karma>             Set bandwidth limits based on traffic passed.
    <ssl>               Set SSL port and IP address.
    <ip>                Set non-secure port and IP address.
   </pthcsock>
  </service>

--><service id="c2s"><load><pthsock_client>./libexec/pthsock_client.so</pthsock_client>
</load><pthcsock xmlns='jabber:config:pth-csock'><authtime/><karma><init>10</init>
<max>10</max> <inc>1</inc> <dec>1</dec> <penalty>-6</penalty> <restore>10</restore>
</karma><ssl port="5223">192.178.60.5</ssl> <ip port="5222">192.178.60.5</ip> </pthcsock></service><!--

  The s2s block handles server to server communication.

  <service id="s2s">
   <load>
   <dialback>    Dialback is an s2s module that uses server dialback to 
                 provide a level of authentication to ensure we are 
                 communicating with the correct server.
    <legacy>     Enable communication with older jabber servers (1.0).
    <ip port>    Listening port for server to server communication.
    <karma>      Karma block.
   </dialback>
  </service>

--><service id="s2s"><load><dialback>./libexec/dialback.so</dialback> </load><dialback xmlns='jabber:config:dialback'><legacy/><ip port="5269"/><karma><init>50</init>
<max>50</max> <inc>4</inc> <dec>1</dec> <penalty>-5</penalty> <restore>50</restore>
</karma></dialback></service><!--

  The dnsrv module contains settings for the internal DNS resolution library 
  Jabber uses to resolve hostnames.

  <service id="dnsrv">
   <load>
   <dnsrv>
    <resend>
   </dnsrv>
  </service>

--><service id="dnsrv"><host/><load><dnsrv>./libexec/dnsrv.so</dnsrv> </load><dnsrv xmlns="jabber:config:dnsrv"><resend service="_jabber._tcp">s2s</resend>
<resend>s2s</resend> </dnsrv></service><!--

    <xdb>          Defines XML message storage system
    <load>         Loads the required shared library
    <xdb_file>     Specifies the flat-file storage system
     <spool>       Location of the spool directory
    </xdb_file>
    </xdb>

--><xdb id="xdb"><host/><load><xdb_file>./libexec/xdb_file.so</xdb_file> </load><xdb_file xmlns="jabber:config:xdb_file"><spool><jabberd:cmdline flag="s">./spool</jabberd:cmdline></spool>
</xdb_file></xdb><!--

  <log id="unique">     Each logging block needs a unique ID
   <logtype>            Declares a "type" for this log
   <format>             A format string for log messages
   <file>               File the log will be written to
   <stderr/>            Send messages to stderr channel as well
  </log>

--><log id='elogger'><host/><logtype/><format>%d: [%t] (%h): %s</format> <file>logs/error.log</file>
<stderr/></log><log id='rlogger'><host/><logtype>record</logtype> <format>%d %h
%s</format> <file>logs/record.log</file> </log><!--
  The Jabber User directory is an additional module we need to compile 
  seperately from our Jabber server.  It creates a user directory that users 
  can search to find other local users on the server.  When we set this up, 
  we need to make sure it is listed in the <browse> block of the JSM, 
  otherwise users won't know it's available.

  <service id="jud">      Service definition.
   <host>                 Unique hostname for JUD service.
   <load>
   <jud>                  JUD configuration.
    <vcard>               vCard for JUD service.
   </jud>

--><service id="jud"><host>jud.example.com</host> <load><jud>./libexec/jud.so</jud></load>
<jud xmlns="jabber:config:jud"><vcard><fn>Local User Directory</fn> <desc>A
simple user directory for my friends</desc> </vcard></jud></service><!--
  The conference module allows multiple users to communicate in a chat-room 
  environment.  This is an additional module that we will need to compile 
  seperately and then place the shared object file in the libexec file of 
  the directory.

  <service id="conference">   Conference server identifier.
   <host>            Service hostname
   <load>
   <conference>      Conference block.
    <public/>        Identifies room definitions as being open to all 
                     users.  (Privacy can also be defined).
    <vcard>          vCard identifier for this service.
    <history>        Number of messages per room the server will remember.
    <notice>         Defines special messages to deliver based on user 
                     actions (entering or leaving the room).
    <room>           Defines a conference room.  If desired, users can also
                     create conference rooms from their user client.
   </conference>
  </service>
--><service id="conference"><host>conference.example.com</host> <load><conference>./libexec/conference.so</conference></load>
<conference xmlns="jabberd:config:conference"><public/><vcard><fn>Public
Chatrooms</fn> <desc>My Public Chatrooms</desc> </vcard><history>20</history> <notice><join>has
jumped in </join><leave>has left </leave><rename>is now known as </rename></notice><room jid="support@conference.example.com"><name>Support
Zone</name> </room></conference></service><!--

  <io>           Set all baseline IO traffic limits
   <karma>
    <heartbeat>  Byte interval
    <init>       Inital karma value
    <max>        Delay time for hitting maximum throughput
    <inc>        Karma increment value per heartbeat
    <dec>        Karma decrement value per heartbeat
    <penalty>    Number of penalty heartbearts for hitting 0 karma
    <restore>    Restored karma value after getting above 0 karma
   </karma>
   <rate/>       Limit number of connection attempts per IP
   <ssl>         SSL Keyfiles and bound IP addresses
                 (keyfile contains key and optional cert in PEM format)
   <allow>       Access list "allow" block
   <deny>        Access list "deny" block
  </io>

--><io><karma><heartbeat>2</heartbeat> <init>50</init> <max>50</max> <inc>4</inc>
<dec>1</dec> <penalty>-5</penalty> <restore>50</restore> </karma><rate points="5" time="25"/><ssl><key ip="192.178.60.5">./etc/ssl/key.pem</key>
</ssl><deny><ip>10.0.0.0</ip><mask>255.0.0.0</mask></deny> </io><pidfile>./run/jabberd.pid</pidfile>
</jabber></p>

</div>

</body>

</html>
