[JDEV] Jabber Server- 1.4 Crashes
Peter Saint-Andre
stpeter at jabber.org
Wed Dec 5 12:58:23 CST 2001
And don't forget to run each transport in a separate process. :)
Peter
--
Peter Saint-Andre
email+jabber: stpeter at jabber.org
On Wed, 5 Dec 2001, Thomas Muldowney wrote:
> 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
>
More information about the JDev
mailing list