<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">
<HTML>
<HEAD>
  <META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8">
  <META NAME="GENERATOR" CONTENT="GtkHTML/3.32.2">
</HEAD>
<BODY>
Hello,<BR>
<BR>
I think I may have found a bug in the RLS module.<BR>
<BR>
Take two subscribers (alice and bob) who have each other in their contact lists.&nbsp; Log them in (so REGISTER, SUBSCRIBE(presence.winfo), SUBSCRIBE(presence), PUBLISH, and so on).&nbsp; Log one (bob) out.&nbsp; bob's status remains online in alice's client.&nbsp; Restart alice's client (logging her out and in again).&nbsp; bob's status is still shown as online.<BR>
<BR>
Has anyone encountered this before?<BR>
<BR>
I think it might be related to some errors I am seeing.&nbsp; When my client unSUBSCRIBEs on sign-out I get the following errors (the line numbers may be slightly out from the base 3.1.2 version as I added some diagnostics to try and find the problem):<BR>
<BR>
<BLOCKQUOTE>
    Mar 29 13:57:51 supernode /usr/sbin/kamailio[20259]: ERROR: rls [notify.c:280]: updating in hash table <BR>
    Mar 29 13:57:51 supernode /usr/sbin/kamailio[20259]: ERROR: rls [notify.c:150]: in function agg_body_sendn_update <BR>
    Mar 29 13:57:51 supernode /usr/sbin/kamailio[20259]: ERROR: rls [subscribe.c:638]: failed sending full state notify <BR>
    Mar 29 13:57:51 supernode /usr/sbin/kamailio[20259]: ERROR: rls [subscribe.c:678]: occured in rls_handle_subscribe <BR>
</BLOCKQUOTE>
I believe this is happening because send_full_notify() is called after update_rlsubs() is called in rls_handle_subscribe().&nbsp; update_rlsubs() will delete the entry from the hash table when &quot;Expires: 0&quot; is set - as is the case for an unSUBSCRIBE.<BR>
<BR>
Can anyone suggest what the correct behaviour should be?<BR>
<BR>
Thanks,<BR>
<BR>
Peter
</BODY>
</HTML>