List Info

Thread: Re: SASL Authentication Race Condition




Re: SASL Authentication Race Condition
country flaguser name
United States
2007-11-29 12:57:01
I have now figured out what exactly was happening in our
system. We need to do a series of connections and
disconnections in our code and it seems the second
reconnection is what has the problem. However, this looks
like it would be a problem whenever the person requested a
disconnection and then a reconnection without closing the
object out. From what I can see, the initial SASL
authenticate adds a signal handler. On the second
connection, the signal handler is hit as well as the
authentication function which causes the double sending.
Here are the tracebacks that were collected. I am also
adding a bug to the bug tracker about this issue.

Breakpoint 2, sasl_authenticate (sasl=0x80501c0) at
lm-sasl.c:687
687     in lm-sasl.c
#0  sasl_authenticate (sasl=0x80501c0) at lm-sasl.c:687
#1  0xb7ee54c5 in lm_connection_authenticate
(connection=0x804fb28, username=0x804fc38,
password=0xb7ef827f,
    resource=0x804edc8, function=0x80501c0,
user_data=0x80501c0, notify=0x80501c0, error=0xbfab9ce8) at
lm-connection.c:1369
#2  0xb7ef7e95 in open_connection_callback
(connection=0x804fb28, success=1, void_harmony=0x80501c0) at
main.c:213
#3  0xb7ee3ca0 in connection_message_queue_cb
(queue=0x804ef90, connection=0x804fb28) at
lm-connection.c:801
#4  0xb7ee6a6d in message_queue_dispatch_func
(source=0x80501c0, callback=0, user_data=0x0) at
lm-message-queue.c:100
#5  0xb7e751fc in IA__g_main_context_dispatch
(context=0x804ea68) at gmain.c:2045
#6  0xb7e76bb5 in g_main_context_iterate (context=0x804ea68,
block=1, dispatch=1, self=0x80502d8) at gmain.c:2677
#7  0xb7e76eda in IA__g_main_loop_run (loop=0x804eae8) at
gmain.c:2881
#8  0x08048728 in main () at dumb_daemon.c:23

Breakpoint 2, sasl_authenticate (sasl=0x80501c0) at
lm-sasl.c:687
687     in lm-sasl.c
#0  sasl_authenticate (sasl=0x80501c0) at lm-sasl.c:687
#1  0xb7ef051c in sasl_features_cb (handler=0x804fee8,
connection=0x804fb28, message=0x80501c0,
user_data=0x80501c0) at lm-sasl.c:729
#2  0xb7ee5dcb in _lm_message_handler_handle_message
(handler=0x1, connection=0x80501c0, message=0x80501c0) at
lm-message-handler.c:47
#3  0xb7ee3b88 in connection_message_queue_cb
(queue=0x804ef90, connection=0x804fb28) at
lm-connection.c:295
#4  0xb7ee6a6d in message_queue_dispatch_func
(source=0x80501c0, callback=0, user_data=0x0) at
lm-message-queue.c:100
#5  0xb7e751fc in IA__g_main_context_dispatch
(context=0x804ea68) at gmain.c:2045
#6  0xb7e76bb5 in g_main_context_iterate (context=0x804ea68,
block=1, dispatch=1, self=0x80502d8) at gmain.c:2677
#7  0xb7e76eda in IA__g_main_loop_run (loop=0x804eae8) at
gmain.c:2881
#8  0x08048728 in main () at dumb_daemon.c:23

Thank you for the prompt response as well as the help on
this,

Julian Krause
_______________________________________________
Loudmouth mailing list
Loudmouthlists.imendio.com
h
ttp://lists.imendio.com/mailman/listinfo/loudmouth

[1]

about | contact  Other archives ( Real Estate discussion Medical topics )