diff --git a/modules/rls/notify.c b/modules/rls/notify.c index eb6a0e1..782a041 100644 --- a/modules/rls/notify.c +++ b/modules/rls/notify.c @@ -958,7 +958,7 @@ void rls_notify_callback( struct cell *t, int type, struct tmcb_params *ps) /* delete from cache table */ hash_code= core_hash(&subs.callid, &subs.to_tag , hash_size); - if(pres_delete_shtable(rls_table,hash_code, subs.to_tag)< 0) + if(pres_delete_shtable(rls_table,hash_code, &subs)< 0) { LM_ERR("record not found in hash table\n"); } diff --git a/modules/rls/rls.c b/modules/rls/rls.c index 453b43e..0b9ccfa 100644 --- a/modules/rls/rls.c +++ b/modules/rls/rls.c @@ -119,7 +119,7 @@ extern void rls_destroy_shtable(shtable_t htable, int hash_size); extern int rls_insert_shtable(shtable_t htable,unsigned int hash_code, subs_t* subs); extern subs_t* rls_search_shtable(shtable_t htable,str callid,str to_tag, str from_tag,unsigned int hash_code); -extern int rls_delete_shtable(shtable_t htable,unsigned int hash_code,str to_tag); +extern int rls_delete_shtable(shtable_t htable,unsigned int hash_code, subs_t* subs); extern int rls_update_shtable(shtable_t htable,unsigned int hash_code, subs_t* subs, int type); extern void rls_update_db_subs_timer(db1_con_t *db,db_func_t dbf, shtable_t hash_table, diff --git a/modules/rls/rls_db.c b/modules/rls/rls_db.c index 86303ad..d978a82 100644 --- a/modules/rls/rls_db.c +++ b/modules/rls/rls_db.c @@ -85,7 +85,7 @@ subs_t* rls_search_shtable(shtable_t htable,str callid,str to_tag, /******************************************************************************/ -int rls_delete_shtable(shtable_t htable,unsigned int hash_code,str to_tag) +int rls_delete_shtable(shtable_t htable,unsigned int hash_code, subs_t* subs) { LM_ERR( "rls_delete_shtable shouldn't be called in RLS_DB_ONLY mode\n" ); return(-1);