[JDEV] Jabber Server- 1.4 Crashes

Thomas Muldowney temas at box5.net
Wed Dec 5 12:40:03 CST 2001


Your yahoo transport is taking you down.  Do you have the latest
version?  Have you tried the cvs version?

--temas


On Wed, Dec 05, 2001 at 06:26:10PM +0000, Amarnath Yara wrote:
> Hi, the following is the debug info from core that I got from jabber 
> server-1.4.1 The server crashed when I tried to login. The numbers of 
> already logged in users was zero at that time. Normally when there are some 
> users logged in and chatting and if another guy tries to login then the 
> server crashes with a segmentation fault. Same is the case with jabber 
> server 1.4.  I have pasted backtrace, the last two packets of debug and the 
> jabber.xml configuration. I hope this information is helpful. Thanks.
> 
> gdb -c core jabberd/jabberd
> GNU gdb 5.0
> Copyright 2000 Free Software Foundation, Inc.
> GDB is free software, covered by the GNU General Public License, and you are
> welcome to change it and/or distribute copies of it under certain 
> conditions.
> Type "show copying" to see the conditions.
> There is absolutely no warranty for GDB.  Type "show warranty" for details.
> This GDB was configured as "i386-redhat-linux"...
> Core was generated by `./jabberd/jabberd -D -h phoenix'.
> Program terminated with signal 11, Segmentation fault.
> Reading symbols from /usr/lib/libpth.so.14...done.
> Loaded symbols for /usr/lib/libpth.so.14
> Reading symbols from /lib/libdl.so.2...done.
> Loaded symbols for /lib/libdl.so.2
> Reading symbols from /lib/libresolv.so.2...done.
> Loaded symbols for /lib/libresolv.so.2
> Reading symbols from /lib/libc.so.6...done.
> Loaded symbols for /lib/libc.so.6
> Reading symbols from /lib/ld-linux.so.2...done.
> Loaded symbols for /lib/ld-linux.so.2
> Reading symbols from /usr/local/UIM/jabber-1.4.1/./jsm/jsm.so...done.
> Loaded symbols for /usr/local/UIM/jabber-1.4.1/./jsm/jsm.so
> Reading symbols from 
> /usr/local/UIM/jabber-1.4.1/./xdb_file/xdb_file.so...done.
> Loaded symbols for /usr/local/UIM/jabber-1.4.1/./xdb_file/xdb_file.so
> Reading symbols from 
> /usr/local/UIM/jabber-1.4.1/./pthsock/pthsock_client.so...done.
> Loaded symbols for /usr/local/UIM/jabber-1.4.1/./pthsock/pthsock_client.so
> Reading symbols from 
> /usr/local/UIM/jabber-1.4.1/./yahoo-transport-0.8-1.4/src/yahootrans.so...done.
> Loaded symbols for 
> /usr/local/UIM/jabber-1.4.1/./yahoo-transport-0.8-1.4/src/yahootrans.so
> Reading symbols from 
> /usr/local/UIM/jabber-1.4.1/./msn-transport-1.1/msntrans.so...done.
> Loaded symbols for 
> /usr/local/UIM/jabber-1.4.1/./msn-transport-1.1/msntrans.so
> Reading symbols from /usr/local/UIM/jabber-1.4.1/./dnsrv/dnsrv.so...done.
> Loaded symbols for /usr/local/UIM/jabber-1.4.1/./dnsrv/dnsrv.so
> Reading symbols from 
> /usr/local/UIM/jabber-1.4.1/./dialback/dialback.so...done.
> Loaded symbols for /usr/local/UIM/jabber-1.4.1/./dialback/dialback.so
> Reading symbols from /lib/libnss_files.so.2...done.
> Loaded symbols for /lib/libnss_files.so.2
> Reading symbols from /lib/libnss_nisplus.so.2...done.
> Loaded symbols for /lib/libnss_nisplus.so.2
> Reading symbols from /lib/libnsl.so.1...done.
> Loaded symbols for /lib/libnsl.so.1
> Reading symbols from /lib/libnss_nis.so.2...done.
> Loaded symbols for /lib/libnss_nis.so.2
> Reading symbols from /lib/libnss_dns.so.2...done.
> Loaded symbols for /lib/libnss_dns.so.2
> #0  0x805771c in jid_cmp (a=0x5f39396e, b=0x820fbc0) at jid.c:248
> 248         if(_jid_nullstrcmp(a->resource, b->resource) != 0) return -1;
> (gdb) bt
> #0  0x805771c in jid_cmp (a=0x5f39396e, b=0x820fbc0) at jid.c:248
> #1  0x80578e2 in jid_append (a=0x5f39396e, b=0x820fbc0) at jid.c:287
> #2  0x40199f54 in yahoo_parse_presence (yjp=0x820fc10) at presence.c:268
> #3  0x40198dbb in yahoo_parse_jpacket (arg=0x820fc10) at parser.c:279
> #4  0x805576b in mtq_main (arg=0x80e3d50) at mtq.c:147
> #5  0x4002625c in pth_spawn_trampoline () from /usr/lib/libpth.so.14
> #6  0x40024351 in pth_mctx_set_bootstrap () from /usr/lib/libpth.so.14
> #7  <signal handler called>
> #8  0x40072585 in __sigsuspend (set=0x65636e65) at 
> ../sysdeps/unix/sysv/linux/sigsuspend.c:45
> #9  0x73657270 in ?? ()
> Cannot access memory at address 0x2f3c3e73
> 
> 
> Amarnath Yara
> 211, Main Street
> Apartment # 429,
> Columbia 29201.SC.
> e-mail : amarny at hotmail.com
>         yara at engr.sc.edu
> 
> 
> ****************** some Debug (last two packets before 
> crash)**********************
> Wed Dec  5 13:51:25 2001  sessions.c:303 THREAD:SESSION:TO received data 
> from girivasan99_kst at phoenix/home!
> Wed Dec  5 13:51:25 2001  modules.c:130 mapi_call 0
> Wed Dec  5 13:51:25 2001  modules.c:153 MAPI 822D980
> Wed Dec  5 13:51:25 2001  mod_presence incoming filter for 
> girivasan99_kst at phoenix/home
> Wed Dec  5 13:51:25 2001  mtq 813FC58 one call 8221AE0
> Wed Dec  5 13:51:25 2001  offline.c:45 THREAD:OFFLINE received 
> girivasan99_kst at phoenix's packet: <presence type='probe' 
> from='girivasan99_kst at phoenix' to='girivasan99_kst at phoenix'/>
> Wed Dec  5 13:51:25 2001  modules.c:130 mapi_call 1
> Wed Dec  5 13:51:25 2001  modules.c:169 mapi_call returning unhandled
> Wed Dec  5 13:51:25 2001  util.c:64 dropping 503 packet <presence 
> type='probe' from='girivasan99_kst at phoenix' to='girivasan99_kst at phoenix'/>
> Wed Dec  5 13:51:25 2001  mtq 813FC58 one call 82C24F0
> Wed Dec  5 13:51:25 2001  offline.c:45 THREAD:OFFLINE received 
> superkell at phoenix's packet: <presence id='1' 
> from='girivasan99_kst at phoenix/home' 
> to='superkell at phoenix'><status>online</status></presence>
> Wed Dec  5 13:51:25 2001  modules.c:130 mapi_call 1
> Wed Dec  5 13:51:25 2001  modules.c:169 mapi_call returning unhandled
> Wed Dec  5 13:51:25 2001  util.c:64 dropping 503 packet <presence id='1' 
> from='girivasan99_kst at phoenix/home' 
> to='superkell at phoenix'><status>online</status></presence>
> Wed Dec  5 13:51:25 2001  mtq 813FC58 one call 820DB78
> Wed Dec  5 13:51:25 2001  mtq 813FC58 one call 823A278
> Wed Dec  5 13:51:25 2001  yahoo auth belongs to session 8237E30 (so not 
> starting a new one)
> Wed Dec  5 13:51:25 2001  mtq 813FC58 one call 82D8670
> Wed Dec  5 13:51:25 2001  mtq 813FC58 one call 820FC10
> Wed Dec  5 13:51:26 2001  dnsrv.c:143 dnsrv: Read error on coprocess(1): 1 
> Operation not permitted
> Wed Dec  5 13:51:26 2001  dnsrv.c:157 DNSRV CHILD: out of loop.. exiting 
> normal
> Segmentation fault (core dumped)
> 
> 
> 
> 
> 
> /*********************jabber.xml file ****************************/
> <jabber>
> 
>  <!--
>  This is the Jabber server configuration file. The file is
>  broken into different sections based on the services being
>  managed by jabberd, the server daemon. Most of the important
>  sections have comments and are easy to modify. You can find
>  full instructions in the server howto, which is available at
>  http://docs.jabber.org/. Note that when you see a tag like
>  "jabberd:cmdline", it's automatically replaced on startup
>  with the command line flag passed in to jabberd. This enables
>  you to override parameters set in this configuration file if
>  necessary or desired. Also note as you comment things in and
>  out that jabberd does not like comments within comments, so
>  be careful with your XML. :)
>  -->
> 
> 
>  <!--
>  The following <service/> section is for the session manager,
>  the most important component within the server. This section
>  contains the following types of information:
> 
>    * the server's hostname
>    * other basic server information
>    * the location of the session log file
>    * email addresses for server administrators
>    * the location of the server that provides update information
>    * registration instructions for new users
>    * a welcome message for new users
>    * a list of agents with which users can register
>    * load rules for the modules within the session manager
> 
>  -->
> 
>  <service id="sessions">
> 
>    <!--
>    Change hostname below to something other than "tucson",
>    i.e., to the hostname or IP address of your Jabber server.
>    Multiple <host/> entries are allowed - each one is for a
>    separate virtual server. Note that each host entry must
>    be on one line, the server doesn't like it otherwise! :)
>    -->
> 
>    <host><jabberd:cmdline flag="h">phoenix</jabberd:cmdline></host>
> 
>    <!--
>    This is the custom configuration section for the
>    Jabber session manager, a.k.a. "JSM".
>    -->
> 
>    <jsm xmlns="jabber:config:jsm">
> 
>      <!--
>      The <filter/> section below determines settings
>      for mod_filter, a server-side module built into
>      JSM that enables users to set delivery rules for
>      messages they receive (not yet supported by all
>      clients. The <allow/> subsection specifies which
>      conditions and actions to enable. High-level
>      descriptions of each setting can be found below
>      (see docs.jabber.org for full details):
> 
>      * <default/> - a user cannot delete this one, it's
>        the default rule for delivering messages
>      * <max_size/> - the maximum number of rules in a
>        user's rule set (we don't want to overdo it!)
>      * conditions...
>        * <ns/> - matches the query xmlns attrib on an iq packet
>        * <unavailable/> - matches when user is unavailable
>        * <from/> - matches the sender of the message
>        * <resource/> - matches the receiver's resource
>        * <subject/> - matches the subject of the message
>        * <body/> - matches the body of the message
>        * <show/> - matches the show tag on the receiver's presence
>        * <type/> - matches the type of the message
>        * <roster/> - matches if the sender is in your roster
>        * <group/> - matches if the sender is in the specified group
>      * actions...
>        * <error/> - replies with an error
>        * <offline/> - stores the messages offline
>        * <forward/> - forwards the message to another jid
>        * <reply/> - sends a reply to the sender of the message
>        * <continue/> - continues processing of the rules
>        * <settype/> - changes the type of the message
>      -->
>      <filter>
>          <default/>
>          <max_size>100</max_size>
>          <allow>
>              <conditions>
>                  <ns/>
>                  <unavailable/>
>                  <from/>
>                  <resource/>
>                  <subject/>
>                  <body/>
>                  <show/>
>                  <type/>
>                  <roster/>
>                  <group/>
>              </conditions>
>              <actions>
>                  <error/>
>                  <offline/>
>                  <forward/>
>                  <reply/>
>                  <continue/>
>                  <settype/>
>              </actions>
>          </allow>
>      </filter>
> 
>      <!-- The server vCard -->
> 
>      <vCard>
>        <FN>Jabber Server</FN>
>        <DESC>A Jabber Server!</DESC>
>        <URL>http://foo.bar/</URL>
>      </vCard>
> 
>      <!--
>      Registration instructions and required fields. The
>      notify attribute will send the server administrator(s)
>      a message after each valid registration if it is set
>      to "yes".
>      -->
> 
>      <register notify="yes">
>        <instructions>Choose a username and password to register with this 
> server.</instructions>
>        <name/>
>        <email/>
>      </register>
> 
>      <!--
>      A welcome note that is sent to every new user who registers
>      with your server. Comment it out to disable this function.
>      -->
> 
>      <welcome>
>        <subject>Welcome!</subject>
>        <body>Welcome to U.S. Computing's Jabber server phoenix on jalisco-- 
> we hope you enjoy this service! For information about how
> to use Jabber, visit the Jabber User's Guide at 
> http://docs.jabber.org/</body>
>      </welcome>
> 
>      <!--
>      IDs with admin access - these people will receive admin
>      messages (any message to="yourhostname" is an admin
>      message).  These addresses must be local ids, they cannot
>      be remote addresses.
> 
>      Note that they can also send announcements to all
>      users of the server, or to all online users. To use
>      the announcement feature, you need to send raw xml and be
>      logged in as one of the admin users. Here is the syntax
>      for sending an announcement to online users:
> 
>        <message to="yourhostname/announce/online">
>          <body>announcement here</body>
>        </message>
> 
>        <message to="yourhostname/announce/motd">
>          <body>message (of the day) that is sent only once to all users 
> that are logged in and additionally to new ones as they log in</body>
>        </message>
> 
>      Sending to /announce/motd/delete will remove any existing
>      motd, and to /announce/motd/update will only update the motd
>      without re-announcing to all logged in users.
> 
>      The <reply> will be the message that is automatically
>      sent in response to any admin messages.
>      -->
> 
>      <!--
>      <admin>
>        <read>support at tucson</read>
>        <write>admin at tucson</write>
>        <reply>
>          <subject>Auto Reply</subject>
>          <body>This is a special administrative address.  Your message was 
> received and forwarded to server administrators.</body>
>        </reply>
>      </admin>
>      -->
> 
>      <!--
>      This is the resource that checks for updated versions
>      of the Jabber server software. Note that you don't lose
>      any functionality if you comment this out. Removing the
>      <update/> config is especially a good strategy if your
>      server is behind a firewall. If you want to use this
>      feature, change 'tucson' to the hostname or IP address
>      of your server, making sure that it is the same as your
>      entry for <host/> above.
>      -->
> 
>      <!-- COMMENTED OUT BY WAYNE DURING INITIAL CONFIGURATION
>      <update><jabberd:cmdline flag="h">phoenix</jabberd:cmdline></update>
>      -->
> 
>      <!--
>      This enables the server to automatically update the
>      user directory when a vcard is edited.  The update is
>      only sent to the first listed jud service below.  It is
>      safe to remove this flag if you do not want any users
>      automatically added to the directory.
>      -->
> 
>      <vcard2jud/>
> 
>      <!--
>      The <browse/> section identifies the transports and other
>      services that are available from this server. Note that each
>      entity identified here must exist elsewhere or be further
>      defined in its own <service/> section below. These services
>      will appear in the user interface of Jabber clients that
>      connect to your server.
>      -->
> 
>      <browse>
> 
>        <!--
>        This is the default agent for the master Jabber User
>        Directory, a.k.a. "JUD", which is located at jabber.org.
>        You can add separate <service/> sections for additional
>        directories, e.g., one for a company intranet.
>        -->
> 
>        <service type="jud" jid="users.jabber.org" name="Jabber User 
> Directory">
>          <ns>jabber:iq:search</ns>
>          <ns>jabber:iq:register</ns>
>        </service>
> 
>        <!--
>        The following services are examples only, you will need to
>        create/modify them to get them working on your Jabber
>        server. See the README files for each service and/or the
>        server howto for further information/instructions.
>        -->
> 
>        <!-- we're commenting these out, of course :)
> 
>        <conference type="private" jid="conference.phoenix" name="Private 
> Conferencing"/>
> 
>        <service type="aim" jid="aim.phoenix" name="AIM Transport">
>          <ns>jabber:iq:gateway</ns>
>          <ns>jabber:iq:register</ns>
>        </service>
> 
>           end of <service/> examples -->
> 
>        <service type="yahoo" jid="yahoo.phoenix" name="Yahoo! Transport">
>          <ns>jabber:iq:gateway</ns>
>          <ns>jabber:iq:register</ns>
>        </service>
>       <!-- Commented by Amar
>        <service type ="icq" jid="icq.phoenix" name="ICQ Transport">
>           <ns>jabber:iq:gateway</ns>
>           <ns>jabber:iq:register</ns>
>           <ns>jabber:iq:search</ns>
>        </service>
>      -->
> 
> 	<service type="msn" jid="msn.phoenix" name="MSN Transport">
>          <ns>jabber:iq:gateway</ns>
>          <ns>jabber:iq:register</ns>
>        </service>
> 
> 
>      </browse>
> 
>    </jsm>
> 
>    <!--
>    The following section dynamically loads the individual
>    modules that make up the session manager. Remove or
>    comment out modules to disable them. Note that the order
>    of modules is important, since packets are delivered
>    based on the following order!!
>    -->
> 
>    <load main="jsm">
>      <jsm>./jsm/jsm.so</jsm>
>      <mod_echo>./jsm/jsm.so</mod_echo>
>      <mod_roster>./jsm/jsm.so</mod_roster>
>      <mod_time>./jsm/jsm.so</mod_time>
>      <mod_vcard>./jsm/jsm.so</mod_vcard>
>      <mod_last>./jsm/jsm.so</mod_last>
>      <mod_version>./jsm/jsm.so</mod_version>
>      <mod_announce>./jsm/jsm.so</mod_announce>
>      <mod_agents>./jsm/jsm.so</mod_agents>
>      <mod_browse>./jsm/jsm.so</mod_browse>
>      <mod_admin>./jsm/jsm.so</mod_admin>
>      <mod_filter>./jsm/jsm.so</mod_filter>
>      <mod_offline>./jsm/jsm.so</mod_offline>
>      <mod_presence>./jsm/jsm.so</mod_presence>
>      <mod_auth_plain>./jsm/jsm.so</mod_auth_plain>
>      <mod_auth_digest>./jsm/jsm.so</mod_auth_digest>
>      <mod_auth_0k>./jsm/jsm.so</mod_auth_0k>
>      <mod_log>./jsm/jsm.so</mod_log>
>      <mod_register>./jsm/jsm.so</mod_register>
>      <mod_xml>./jsm/jsm.so</mod_xml>
>    </load>
> 
>  </service>
> 
>  <!-- OK, we've finished defining the Jabber Session Manager. -->
> 
>  <!-- The <xdb/> component handles all data storage, using the filesystem. 
> -->
> 
>  <xdb id="xdb">
>    <host/>
>    <load>
>      <xdb_file>./xdb_file/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>
> 
>  <!--
>  The following service manages incoming client socket connections.
>  There are several items you can set here to optimize performance:
> 
>    * authtime - default is unlimited, but you can set this to
>      limit the amount of time allowed for authentication to be
>      completed, e.g., <authtime>10</authtime> for 10 seconds
> 
>    * karma - this is an input/output rate limiting system that
>      the Jabber team came up with to prevent bandwidth hogging.
>      For details about karma, read the io section at the bottom
>      and/or see docs.jabber.org. These are the low settings and
>      apply per connection/socket and can be changed as desired.
> 
>  -->
> 
>  <service id="c2s">
>    <load>
>      <pthsock_client>./pthsock/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>
>      <!--
>      Use these to listen on particular addresses and/or ports.
>      <ip port="5222">127.0.0.1</ip>
>      -->
>      <ip port="5222"/>
>      <!--
>      The <ssl/> tag acts just like the <ip/> tag.  Except SSL is used
>      on the ports and ips specified.  You must specify an IP here, or the
>      connections will fail.
> 
>      <ssl port='5223'>127.0.0.1</ip>
>      <ssl port='5224'>64.28.196.147</ip>
>      -->
>    </pthcsock>
>  </service>
>  <!-- Commented by Amar
>  <service id="icq.phoenix">
>         <icqtrans xmlns="jabber:config:icqtrans">
>         <instructions>Please enter your ICQ number (in the "username" 
> field),
>         nickname, and password. Leave the "username" field blank
>         to create a new ICQ number.</instructions>
>         <search>Search for ICQ users</search>
>         <vCard>
>         <FN>ICQ Transport</FN>
>         <DESC>This is the ICQ Transport</DESC>
>         <URL>http://tucson/</URL>
>         </vCard>
>         <prime>37</prime>
>         <ports>
>         <min>2000</min>
>         <max>3000</max>
>         </ports>
>         </icqtrans>
>         <load>
>         <icqtrans>./icq-transport-0.9/icqtrans.so</icqtrans>
>         </load>
>   </service>
> 	-->
> 
>   <service id="yahoo.phoenix">
>         <load>
>         
> <yahoo_transport>./yahoo-transport-0.8-1.4/src/yahootrans.so</yahoo_transport>
>         </load>
>   </service>
> 
> 	<service id="msn.phoenix">
>         <msntrans xmlns="jabber:config:msntrans">
>  <instructions>Enter your MSN Messenger account and password. Example: 
> user1 at hotmail.com. Nickname is
>         optional.</instructions>
>         <vCard>
>         <FN>MSN Transport</FN>
>         <DESC>This is the MSN Transport</DESC>
>         <URL>http://phoenix</URL>
>         </vCard>
>         </msntrans>
>         <load>
>         <msntrans>./msn-transport-1.1/msntrans.so</msntrans>
>         </load>
>         </service>
> 
> 
>  <!--
>  This is the default server error logging component,
>  which copies to a file and to STDERR.
>  -->
> 
>  <log id='elogger'>
>    <host/>
>    <logtype/>
>    <format>%d: [%t] (%h): %s</format>
>    <file>error.log</file>
>    <stderr/>
>  </log>
> 
>  <!--
>  This is the default server record logging component,
>  which logs general statistical/tracking data.
>  -->
> 
>  <log id='rlogger'>
>    <host/>
>    <logtype>record</logtype>
>    <format>%d %h %s</format>
>    <file>record.log</file>
>  </log>
> 
>  <!-- The following two services are for handling server-to-server traffic. 
> -->
> 
>  <!-- External asychronous DNS resolver -->
> 
>  <service id="dnsrv">
>    <host/>
>    <load>
>      <dnsrv>./dnsrv/dnsrv.so</dnsrv>
>    </load>
>    <dnsrv xmlns="jabber:config:dnsrv">
>    	<resend service="_jabber._tcp">s2s</resend> <!-- for supporting SRV 
> records -->
>    	<resend>s2s</resend>
>    </dnsrv>
>  </service>
> 
>  <!--
>  The following 's2s' config handles server connections and
>  dialback hostname verification.  The <legacy/> element is
>  here to enable communication with old 1.0 servers. The
>  karma settings are a little higher here to handle the
>  higher traffic of server-to-server connections (read
>  the io section below for more details, medium settings).
>  -->
> 
>  <service id="s2s">
>    <load>
>      <dialback>./dialback/dialback.so</dialback>
>    </load>
>    <dialback xmlns='jabber:config:dialback'>
>      <legacy/>
>      <!-- Use these to listen on particular addresses and/or ports.
>      <ip port="7000"/>
>      <ip port="5269">127.0.0.1</ip>
>      -->
>      <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>
> 
>  <!--
>  If you identified additional agents in the main <service/>
>  section (see examples above), you'll need to define each
>  of them here using a separate <service/> section for each
>  <agent/> you identified. Note that the <agent/> sections
>  determine what gets shown to clients that connect to your
>  server, whereas the following <service/> sections define
>  these services within the server itself. The following are
>  examples only, you will need to create/modify them to get
>  them working on your Jabber server. See the README files
>  for each agent and/or the server howto for further
>  information/instructions.
>  -->
> 
>  <!-- we're commenting these out, of course :)
> 
>  <service id="conference">
>    <load>
>      <groupchat>/path/to/groupchat.so</groupchat>
>    </load>
>    <host>conference.phoenix</host>
>  </service>
> 
>  <service id="irc">
>    <host>irc.phoenix</host>
>  </service>
> 
>  <service id="aim.phoenix">
>    <accept>
>      <ip/>
>      <port>7009</port>
>      <secret>jabber-rocks</secret>
>    </accept>
>  </service>
>  -->
>  <service id="yahoo.phoenix">
>    <accept>
>      <ip/>
>      <port>9001</port>
>      <secret>jabber-rocks</secret>
>    </accept>
>  </service>
> 
>  end of <service/> examples
> 
>  <!--
>  The following <io/> config initializes the top-level
>  I/O, otherwise known as MIO (Managed Input/Output).
>  -->
> 
>  <io>
> 
>    <!-- Set the default karma for *all* sockets -->
>    <!-- definition of terms:
>        Avg. Throughput:    The ammount of bytes you can send every second 
> without incuring any penalty
>        Burst allowed to:   The maximum you can send in 2 seconds without 
> incuring any penalty
>        max sustained rate: if you send data as fast as you can, you will 
> hit penalty, and will not be able to send for 10 seconds,
>                            this is the average rate you can dump data when 
> you are dumping as much as you can, as fast as you can.
>        seconds to recover from burst: The ammount of time it will take to 
> reach Avg. Throughput capability, after sending max burst
>                                       of data
>        penalty length:     Penalty will last abs(penalty) * Heartbeat 
> seconds  so a penalty of -5 and heartbeat of 2 will last 10 sec.
>                            NOTE: penalty CANNOT be less than -100.. 
> otherwise strange things might happen.
>    -->
>    <!-- Example of Low Karma Limits
>        Avg. throughput:  1k-2k/s
>        burst allowed to: 5.5k/s
>        max sustained rate: 485b/s
>        seconds to recover from burst: 20
>        penalty length:   12 seconds
>    <karma>
>      <heartbeat>2</heartbeat>
>      <init>10</init>
>      <max>10</max>
>      <inc>1</inc>
>      <dec>1</dec>
>      <penalty>-6</penalty>
>      <restore>10</restore>
>    </karma>
>    -->
> 
>    <!-- Example of Medium Karma Limits
>        Avg. throughput:  5k-10k/s
>        burst allowed to: 125.5k/s
>        max sustained rate: 12.6k/s
>        seconds to recover from burst: 25
>        penalty length:   10 seconds
>    <karma>
>      <heartbeat>2</heartbeat>
>      <init>50</init>
>      <max>50</max>
>      <inc>4</inc>
>      <dec>1</dec>
>      <penalty>-5</penalty>
>      <restore>50</restore>
>    </karma>
>    -->
> 
>    <!-- Example of High Karma Limits
>        Avg. throughput:  5k-10k/s
>        burst allowed to: 206k/s
>        max Sustained rate: 34.3k/s
>        seconds to recover from burst: 21
>        penalty length:   6 seconds
>    <karma>
>      <heartbeat>2</heartbeat>
>      <init>64</init>
>      <max>64</max>
>      <inc>6</inc>
>      <dec>1</dec>
>      <penalty>-3</penalty>
>      <restore>64</restore>
>    </karma>
>    -->
> 
>    <!--
>    Set rate limits to monitor the number of connection
>    attempts from a single IP, any more than [points]
>    within [time] will engage the limit.  This setting
>    applies to all incoming connections to any service,
>    unless otherwise overridden by that service.
>    -->
> 
>    <rate points="5" time="25"/>
> 
>    <!--
>    The following section initializes SSL for top-level I/O.
>    This works only when the server is compiled with openssl!
>    -->
>    <!-- BE SURE TO CHANGE THE FOLLOWING (2) IP's IF USING SSL
>    <ssl>
>      <key ip='192.168.1.1'>/path/to/cert_and_key.pem</key>
>      <key ip='192.168.1.100'>/path/to/other/cert_and_key.pem</key>
>    </ssl>
>    -->
> 
>    <!--
>    The following section is used to allow or deny
>    communications from specified IP networks or
>    addressses. If there is no <allow/> section,
>    then *all* IPs will be allowed to connect. If
>    you allow one block, then only that block may
>    connect. Note that <allow/> is checked before
>    <deny/>, so if a specific address is allowed
>    but the network for that address is denied,
>    then that address will still be denied.
>    -->
>    <!--
>    <allow><ip>127.0.0.0</ip><mask>255.255.255.0</mask></allow>
>    <allow><ip>12.34.56.78</ip></allow>
>    <deny><ip>22.11.44.0</ip><mask>255.255.255.0</mask></deny>
>    -->
> 
>  </io>
> 
>  <!--
>  This specifies the file to store the pid of the process in.
>  -->
>  <pidfile>./jabber.pid</pidfile>
> 
> 
> </jabber>
> 
> 
> 
> 
> >From: Peter Saint-Andre <stpeter at jabber.org>
> >To: jdev at jabber.org
> >CC: amarny at hotmail.com
> >Subject: Re: [JDEV] Jabber Server- 1.4  Crashes
> >Date: Wed, 5 Dec 2001 10:33:16 -0600 (CST)
> >
> >> Hi all, I have been running jabber server-1.4 on a Linux 7.0 for quite 
> >some
> >> time now with a max of 10 users. The server even though works great 
> >crashes
> >> very often. I am using a daemon tool to run the server continuouly but 
> >still
> >> the users are not happy whenever the server dies and disconnects 
> >everybody.
> >
> >If you could provide some debug info that would be great. It is
> >definitely not normal for the server to crash very often and you may have
> >a configuration problem.
> >
> >> Also interested in looking into server side code. I am not
> >> an expert in c and have lot of code related questions. Is this the right
> >> place for such questions ?
> >
> >Yes.
> >
> >Peter
> >
> 
> 
> 
> _________________________________________________________________
> Get your FREE download of MSN Explorer at http://explorer.msn.com/intl.asp
> 
> _______________________________________________
> jdev mailing list
> jdev at jabber.org
> http://mailman.jabber.org/listinfo/jdev

-- 
Thomas Muldowney
email/jabber: temas at jabber.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 232 bytes
Desc: not available
URL: <http://mail.jabber.org/pipermail/jdev/attachments/20011205/ffcf3ce4/attachment-0002.pgp>


More information about the JDev mailing list