diff --git a/src/modules/registrar/doc/registrar_admin.xml b/src/modules/registrar/doc/registrar_admin.xml index 67e13e09e3b..e8b1a757160 100644 --- a/src/modules/registrar/doc/registrar_admin.xml +++ b/src/modules/registrar/doc/registrar_admin.xml @@ -771,6 +771,11 @@ request_route { received - the record's received value. + + + path - the record's path value. + + For example. if this parameter is set to 'ulrcd', then values are set in: @@ -785,6 +790,9 @@ request_route { $xavp(ulrcd[0]=>received) + + $xavp(ulrcd[0]=>path) + diff --git a/src/modules/registrar/lookup.c b/src/modules/registrar/lookup.c index 682eb7bace4..eeffaf6e875 100644 --- a/src/modules/registrar/lookup.c +++ b/src/modules/registrar/lookup.c @@ -160,6 +160,7 @@ int xavp_rcd_helper(ucontact_t* ptr) str xname_received = { "received", 8}; str xname_contact = { "contact", 7}; str xname_expires = {"expires", 7}; + str xname_path = {"path", 4}; sr_xval_t xval; if(ptr==NULL) return -1; @@ -190,6 +191,13 @@ int xavp_rcd_helper(ucontact_t* ptr) xval.v.i = (int) (ptr->expires - time(0)); xavp_add_value(&xname_expires, &xval, xavp); + if(ptr->path.len > 0) { + memset(&xval, 0, sizeof(sr_xval_t)); + xval.type = SR_XTYPE_STR; + xval.v.s = ptr->path; + xavp_add_value(&xname_path, &xval, xavp); + } + if(list==NULL) { /* no reg_xavp_rcd xavp in root list - add it */ xval.type = SR_XTYPE_XAVP;