THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY.
A new Flyspray task has been opened. Details are below.
User who did this - Walter Doekes (wdoekes)
Attached to Project - sip-router
Summary - a74f12d6 (3.2) registrar breaks save(..., 0x4) functionality
Task Type - Bug Report
Category - registrar (k)
Status - Assigned
Assigned To - Daniel-Constantin Mierla
Operating System - All
Severity - Medium
Priority - Normal
Reported Version - Development
Due in Version - Undecided
Due Date - Undecided
…
[View More]Details - Hi,
I'm trying to maintain only one Contact per AOR. But I want the last register to count:
http://www.kamailio.org/docs/modules/3.2.x/modules_k/registrar.html#id24945…
modparam("registrar", "max_contacts", 1)
http://www.kamailio.org/docs/modules/3.2.x/modules_k/registrar.html#id24979…
save("location", 0x4);
This fails. As far as I can see because this got added in a74f12d6:
a74f12d6 (Daniel-Constantin Mierla 2011-06-04 10:22:09 +0200 566) if (cfg_get(registrar, registrar_cfg, max_contacts)) {
a74f12d6 (Daniel-Constantin Mierla 2011-06-04 10:22:09 +0200 567) _c = get_first_contact(_m);
a74f12d6 (Daniel-Constantin Mierla 2011-06-04 10:22:09 +0200 568) if(test_max_contacts(_m, _r, _c, ci) != 0)
a74f12d6 (Daniel-Constantin Mierla 2011-06-04 10:22:09 +0200 569) goto error;
a74f12d6 (Daniel-Constantin Mierla 2011-06-04 10:22:09 +0200 570) }
After all, the _mode -- which supposedly contains whether it should overwrite existing contacts -- isn't checked here.
Attached, a patch that fixes it. I am however a little confused by the naming of _mode and REG_SAVE_REPL_FL. Neither conveys any meaning about what we're trying to do; which is overwriting (REG_SAVE_OVERWRITE_FL? _should_overwrite?)
Have I misunderstood the documentation?
Regards,
Walter Doekes
OSSO B.V.
One or more files have been attached.
More information can be found at the following URL:
http://sip-router.org/tracker/index.php?do=details&task_id=192
You are receiving this message because you have requested it from the Flyspray bugtracking system. If you did not expect this message or don't want to receive mails in future, you can change your notification settings at the URL shown above.
[View Less]
THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY.
A user has added themself to the list of users assigned to this task.
FS#192 - a74f12d6 (3.2) registrar breaks save(..., 0x4) functionality
User who did this - Walter Doekes (wdoekes)
http://sip-router.org/tracker/index.php?do=details&task_id=192
You are receiving this message because you have requested it from the Flyspray bugtracking system. If you did not expect this message or don't want to receive mails in future, you can change your …
[View More]notification settings at the URL shown above.
[View Less]
Hello,
I've just recognized, that the mediaproxy module does not adjust the SDP
connection info of dialog-confirming ACKs (kamailio 3.2.1).
mediaproxy.c registers for the following dialog req callbacks:
mediaproxy.c:1955 if (dlg_api.register_dlgcb(dlg, DLGCB_REQ_WITHIN,
__dialog_requests, (void*)ice_data, __free_dialog_data) != 0)
But in dlg_handlers.c
1194 if (old_state==DLG_STATE_CONFIRMED_NA) {
1195 LM_DBG("confirming ACK successfully processed\n"…
[View More]);
1196
1197 /* confirming ACK request */
1198 run_dlg_callbacks( DLGCB_CONFIRMED, dlg, req, NULL, dir, 0);
1199 } else {
1200 LM_DBG("sequential request successfully processed\n");
1201
1202 /* within dialog request */
1203 run_dlg_callbacks( DLGCB_REQ_WITHIN, dlg, req, NULL, dir, 0);
So DLGCB_REQ_WITHIN does not seem to be called for the dialog-confirming
ACK (because it's no request WITHIN the dlg).
If UA sends such an ACK request with SDP, mediaproxy does not correct
the connection info.
I suggest to change mediaproxy.c:1955 to:
if (dlg_api.register_dlgcb(dlg, DLGCB_REQ_WITHIN | DLGCB_CONFIRMED,
__dialog_requests, (void*)ice_data, __free_dialog_data) != 0)
Regards
Jasmin
[View Less]
Module: sip-router
Branch: master
Commit: 27ab10b4c61593ae544b7c24633840d0deafff92
URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=27ab10b…
Author: pd <peter.dunkley(a)crocodile-rcs.com>
Committer: pd <peter.dunkley(a)crocodile-rcs.com>
Date: Sun Dec 18 21:08:45 2011 +0000
modules_k/presence: Added additional return value to pres_auth_status() for polite-block
- pres_auth_status() currently returns just the status of presence relationship.
- However, …
[View More]polite-block consists of a combination of status and reason,
a polite-blocked watcher has ACTIVE status but a reason of polite-block.
This means that even though blocked, when just checking based on status,
polite-blocked watchers appear to be authorised.
- After this change pres_auth_status() returns a magic value of 5 when
a watcher is polite-blocked.
- Feature added by Hugh Waite @ Crocodile RCS.
---
modules_k/presence/presence.c | 2 ++
modules_k/presence/subscribe.h | 3 +++
2 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/modules_k/presence/presence.c b/modules_k/presence/presence.c
index d573fb6..65b7a75 100644
--- a/modules_k/presence/presence.c
+++ b/modules_k/presence/presence.c
@@ -1465,6 +1465,8 @@ int pres_auth_status(struct sip_msg* msg, str watcher_uri, str presentity_uri)
subs.status);
pkg_free(rules_doc->s);
pkg_free(rules_doc);
+ if ((subs.reason.len == 12) && (strncmp(subs.reason.s, "polite-block", 12) == 0))
+ return POLITE_BLOCK_STATUS;
return subs.status;
err:
diff --git a/modules_k/presence/subscribe.h b/modules_k/presence/subscribe.h
index b216fff..97e5309 100644
--- a/modules_k/presence/subscribe.h
+++ b/modules_k/presence/subscribe.h
@@ -46,6 +46,9 @@ struct pres_ev;
#define PENDING_STATUS 2
#define TERMINATED_STATUS 3
#define WAITING_STATUS 4
+/* Additional value returned from pres_auth_status when the status is ACTIVE
+ and reason is polite-block */
+#define POLITE_BLOCK_STATUS 5
#define INTERNAL_UPDATE_FALSE 0
#define INTERNAL_UPDATE_TRUE 1
[View Less]
How are you? Let us get down to business.
http://www.leonardobieber.it/image/bdfedx.php?xukoprofID=49
Sat, 17 Dec 2011 12:37:35
__________________
"First, she would lay down the cover and put upon it a piece of tin, made to fill papers with, to keep it down smooth." (c) Millandra vollblutpferd