[sr-dev] git:5.6:6ac1d7a7: sipt: Fix isup generic_number and generic_number_nai decoding (GH #3209)
Daniel-Constantin Mierla
miconda at gmail.com
Tue Aug 16 12:01:25 CEST 2022
Module: kamailio
Branch: 5.6
Commit: 6ac1d7a7cdb49fb8db4ff280c5159098b0b4284f
URL: https://github.com/kamailio/kamailio/commit/6ac1d7a7cdb49fb8db4ff280c5159098b0b4284f
Author: russagit <rustam.safargalin at sifox.ru>
Committer: Daniel-Constantin Mierla <miconda at gmail.com>
Date: 2022-08-16T11:59:15+02:00
sipt: Fix isup generic_number and generic_number_nai decoding (GH #3209)
(cherry picked from commit 9f3d1c274ad926e9640d0091c9702a34f8b2e539)
---
Modified: src/modules/sipt/ss7_parser.c
---
Diff: https://github.com/kamailio/kamailio/commit/6ac1d7a7cdb49fb8db4ff280c5159098b0b4284f.diff
Patch: https://github.com/kamailio/kamailio/commit/6ac1d7a7cdb49fb8db4ff280c5159098b0b4284f.patch
---
diff --git a/src/modules/sipt/ss7_parser.c b/src/modules/sipt/ss7_parser.c
index 30d85cdb1e2..eaac53e5ca0 100644
--- a/src/modules/sipt/ss7_parser.c
+++ b/src/modules/sipt/ss7_parser.c
@@ -570,7 +570,7 @@ int isup_get_generic_number_nai(unsigned char *buf, int len)
if(offset != -1 && len-offset-2 > 1)
{
- return buf[offset+2] & 0x7F;
+ return buf[offset+3] & 0x7F;
}
return -1;
}
@@ -586,13 +586,13 @@ int isup_get_generic_number(unsigned char *buf, int len, char* sb_buf)
if(offset != -1 && len-offset-2 > 1)
{
sbparamlen = (buf[offset+1] & 0xFF) - 2;
- oddeven = (buf[offset+2] >> 7) & 0x1;
+ oddeven = (buf[offset+3] >> 7) & 0x1;
while ((sbparamlen > 0) && (buf[offset] != 0)) {
- sb_buf[sb_i]="0123456789ABCDEF"[(buf[offset+4+sb_j] & 0x0F)];
+ sb_buf[sb_i]="0123456789ABCDEF"[(buf[offset+5+sb_j] & 0x0F)];
if(sbparamlen > 1 || oddeven == 0)
{
- sb_buf[sb_i+1]="0123456789ABCDEF"[(buf[offset+4+sb_j] >>4 & 0x0F)];
+ sb_buf[sb_i+1]="0123456789ABCDEF"[(buf[offset+5+sb_j] >>4 & 0x0F)];
}
sb_i=sb_i+2;
sbparamlen--;
More information about the sr-dev
mailing list