[xmppd-dev] Problems with jabberd14 1.6.1.2-pre3

Robin Redeker elmex at ta-sa.org
Tue Mar 17 13:49:48 CET 2009


On Tue, Mar 17, 2009 at 01:08:21PM +0100, Matthias Wimmer wrote:
> Hi Robin,
>
> -pre3 is a prerelease with known bugs. Try either the last release or  
> get the trunk from the repository (currently -pre5).
>
> Robin Redeker schrieb:
>> 1. Starting up seems to take a long time along these lines in the -D output:
>>
>>    http://www.ta-sa.org/files/txt/2cc7832d88706c32891b841e3fa2e925.txt
>>
>> Is this normal? Did I misconfigure the server?
>
> This is known in -pre3. The session manager in this version loads  
> additional domains where it should get responsible from the database.  
> But this fails in some conditions as in -pre3 it is not guarantied that  
> the session manager starts before the database driver comes up.
>
> This is fixed in the repository.

Sorry, I guess I took a snapshot without thinking too much.
Yes, svn trunk fixes the problem. However, I was only able to compile it after I
changed some includes in jabberd/lib/jabberdlib.h:

I got:

   jabberid.cc: In constructor ‘xmppd::preparation_cache::preparation_cache(const Stringprep_profile*)’:
   jabberid.cc:135: error: ‘time’ is not a member of ‘std’
   jabberid.cc: In member function ‘void xmppd::preparation_cache::clean_cache()’:
   jabberid.cc:139: error: ‘time’ is not a member of ‘std’
   jabberid.cc: In member function ‘Glib::ustring xmppd::preparation_cache::get_prepped(const Glib::ustring&)’:
   jabberid.cc:166: error: ‘time’ is not a member of ‘std’
   jabberid.cc:183: error: ‘strncpy’ is not a member of ‘std’
   jabberid.cc:195: error: ‘time’ is not a member of ‘std’

This is the patch that I needed to finally have it compile:

   Index: jabberd/lib/jabberdlib.h
   ===================================================================
   --- jabberd/lib/jabberdlib.h    (revision 1554)
   +++ jabberd/lib/jabberdlib.h    (working copy)
   @@ -57,8 +57,8 @@
    #   define N_(n) (n)
    #endif
    
   -#include <string.h>
   -#include <stdlib.h>
   +#include <cstring>
   +#include <cstdlib>
    #include <sys/types.h>
    #include <stdio.h>
    #include <setjmp.h>
   @@ -78,7 +78,7 @@
    #include <sys/time.h>
    #include <stdarg.h>
    #include <ctype.h>
   -#include <time.h>
   +#include <ctime>
    #include <pth.h>
    
    #include <expat.h>


>
>> 2. Unregistering doesn't seem to work, I always get a 404/recipient-unavailable (type wait)
>> when wanting to unregister an account.
>>
>> dump:
>>    http://www.ta-sa.org/files/txt/132a5e08034997c1515c78b45cf57b23.txt
>> jabberd -D output:
>>    http://www.ta-sa.org/files/txt/36c0d53b776b8eea47301e1a871b41ab.txt
>>
>> I'm running it on a 32bit Debian Lenny (stable) and this jabberd with
>> a file database:
>>    jabberd14 version 1.6.1.2-pre3
>>
>>    The following optional features have been enabled:
>>    - support for TLS using GNU TLS
>>    - logging to syslog
>>
>> I've also seen a similiar behavior with jabberd 1.4.5 alpha, there
>> unregistration doesn't work properly too.
>
> Well 1.4.5 alpha is even older. 1.4.5 alpha have been build before 1.6.0  
> has been released.
>
> Why the unregistration fails in your setup I have to test.

I still can't unregister with trunk. Maybe it has something to do
with the fact that I'm using a file database. I'll probably try
out mysql later.


Greetings,
   Robin

-- 
Robin Redeker                         | Deliantra, the free code+content MORPG
elmex at ta-sa.org / r.redeker at gmail.com | http://www.deliantra.net
http://www.ta-sa.org/                 |


More information about the dev mailing list