Module: kamailio
Branch: master
Commit: 21e2d96672ccbe65eebdf64f839a1ce465a11b7c
URL: 
https://github.com/kamailio/kamailio/commit/21e2d96672ccbe65eebdf64f839a1ce465a11b7c

Author: Daniel-Constantin Mierla <mico...@gmail.com>
Committer: Daniel-Constantin Mierla <mico...@gmail.com>
Date: 2024-09-04T13:02:19+02:00

registrar: use parsed uri parameter when provided for save()

- instead of to-uri, aor being built from uri parameter

---

Modified: src/modules/registrar/save.c

---

Diff:  
https://github.com/kamailio/kamailio/commit/21e2d96672ccbe65eebdf64f839a1ce465a11b7c.diff
Patch: 
https://github.com/kamailio/kamailio/commit/21e2d96672ccbe65eebdf64f839a1ce465a11b7c.patch

---

diff --git a/src/modules/registrar/save.c b/src/modules/registrar/save.c
index 2e25c8e000a..4bd4a1505a1 100644
--- a/src/modules/registrar/save.c
+++ b/src/modules/registrar/save.c
@@ -926,6 +926,7 @@ int save(struct sip_msg *_m, udomain_t *_d, int _cflags, 
str *_uri)
        str aor;
        int ret;
        sip_uri_t *u;
+       sip_uri_t turi;
        rr_t *route;
        struct sip_uri puri;
        param_hooks_t hooks;
@@ -935,7 +936,23 @@ int save(struct sip_msg *_m, udomain_t *_d, int _cflags, 
str *_uri)
        int novariation = 0;
 
 
-       u = parse_to_uri(_m);
+       if(_uri->len > 0) {
+               if(extract_aor(_uri, &aor, &turi) < 0) {
+                       LM_ERR("failed to extract Address Of Record\n");
+                       return -1;
+               }
+               u = &turi;
+       } else {
+               u = parse_to_uri(_m);
+               if(u == NULL) {
+                       LM_ERR("failed to extract Address Of Record\n");
+                       return -1;
+               }
+               if(extract_aor(&(get_to(_m)->uri), &aor, NULL) < 0) {
+                       LM_ERR("failed to extract Address Of Record\n");
+                       return -1;
+               }
+       }
        if(u == NULL)
                goto error;
 

_______________________________________________
Kamailio (SER) - Development Mailing List
To unsubscribe send an email to sr-dev-le...@lists.kamailio.org

Reply via email to