[SR-Users] tag column on address table
Daniel-Constantin Mierla
miconda at gmail.com
Tue Jan 7 11:09:10 CET 2014
Thanks for spotting it. Should be fixed in master branch now.
Daniel
On 07/01/14 05:00, Kelvin Chua wrote:
> np is undefined in find_group_in_subnet_table()
> it should be:
>
> @@ -717,7 +728,16 @@ int find_group_in_subnet_table(struct subnet* table,
> while (i < count) {
> if ( ((table[i].port == port) || (table[i].port == 0))
> && (ip_addr_match_net(addr, &table[i].subnet,
> table[i].mask)==0))
> + {
> + if (tag_avp.n && table[i].tag.s) {
> + val.s = table[i].tag;
> + if (add_avp(tag_avp_type|AVP_VAL_STR,
> tag_avp, val) != 0) {
> + LM_ERR("setting of tag_avp
> failed\n");
> + return -1;
> + }
> + }
> return table[i].grp;
> + }
> i++;
> }
>
> Kelvin Chua
>
>
> On Tue, Jan 7, 2014 at 5:33 AM, Daniel-Constantin Mierla
> <miconda at gmail.com <mailto:miconda at gmail.com>> wrote:
>
> Your patch seemed to be only for matching against individual IP
> addresses, I added also for subnet matching. Can you try with the
> patch from next commit?
>
> -
> http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=0c67042fa629ee4744cfc31a15e571b7340b0881
>
> Cheers,
> Daniel
>
>
> On 06/01/14 13:09, Kelvin Chua wrote:
>> sorry my bad, it is available on the other address functions,
>> just not on the allow_source_address_group.
>> anyway, here is the patch to master
>>
>> diff --git a/modules/permissions/hash.c b/modules/permissions/hash.c
>> index 3a16581..c80a3f2 100644
>> --- a/modules/permissions/hash.c
>> +++ b/modules/permissions/hash.c
>> @@ -486,13 +486,23 @@ int find_group_in_addr_hash_table(struct
>> addr_list** table,
>> {
>> struct addr_list *np;
>> str addr_str;
>> + int_str avp_val;
>> addr_str.s = (char*)addr->u.addr;
>> addr_str.len = 4;
>> + get_tag_avp(&tag_avp, &tag_avp_type);
>> for (np = table[perm_hash(addr_str)]; np != NULL; np =
>> np->next) {
>> if (((np->port == 0) || (np->port == port))
>> && ip_addr_cmp(&np->addr, addr)) {
>> + if ( np->tag.s != NULL ) {
>> + avp_val.s.s = (char *)np->tag.s;
>> + avp_val.s.len = strlen(avp_val.s.s);
>> + if
>> (add_avp(tag_avp_type|AVP_VAL_STR, tag_avp, avp_val) != 0) {
>> + LM_ERR("failed to set of tag_avp failed\n");
>> + return -1;
>> + }
>> + }
>> return np->grp;
>> }
>> }
>>
>>
>> Kelvin Chua
>>
>>
>> On Mon, Jan 6, 2014 at 7:59 PM, Kelvin Chua <kelchy at gmail.com
>> <mailto:kelchy at gmail.com>> wrote:
>>
>> checking the source code, looks like, it's not being set at
>> all on any of those functions
>>
>> Kelvin Chua
>>
>>
>> On Mon, Jan 6, 2014 at 7:37 PM, Daniel-Constantin Mierla
>> <miconda at gmail.com <mailto:miconda at gmail.com>> wrote:
>>
>> Hello,
>>
>>
>> On 04/01/14 21:47, Juha Heinanen wrote:
>>
>> Kelvin Chua writes:
>>
>> is the peer_tag_avp used on
>> allow_source_address_group?
>>
>> based on fast scan of permissions module source, it
>> appears that
>> peer_tag_avp is set only by allow_trusted function.
>>
>> the peer tag avp should be set also for allow_address()
>> and allow_source_address(). I don't think it is set for
>> allow_source_address_group().
>>
>> Cheers,
>> Daniel
>>
>> --
>> Daniel-Constantin Mierla - http://www.asipto.com
>> http://twitter.com/#!/miconda
>> <http://twitter.com/#%21/miconda> -
>> http://www.linkedin.com/in/miconda
>>
>>
>>
>> _______________________________________________
>> SIP Express Router (SER) and Kamailio (OpenSER) -
>> sr-users mailing list
>> sr-users at lists.sip-router.org
>> <mailto:sr-users at lists.sip-router.org>
>> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>>
>>
>>
>
> --
> Daniel-Constantin Mierla -http://www.asipto.com
> http://twitter.com/#!/miconda <http://twitter.com/#%21/miconda> -http://www.linkedin.com/in/miconda
>
>
--
Daniel-Constantin Mierla - http://www.asipto.com
http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20140107/3af98b54/attachment.html>
More information about the sr-users
mailing list