Opened 5 years ago

Closed 5 years ago

Last modified 5 years ago

#304 closed баг (fixed)

Выполнять старт таймера соединения только по первому ответу

Reported by: alx Owned by: alx
Priority: средний Milestone: 1 очередь
Component: any Keywords:
Cc:

Description (last modified by alx)

Если канальному окончанию установлен лимит времени соединения, то при ответе удаленного абонента (получении "200 OK" на отправленный INVITE) запускается таймер соединения (conn_timer).

Но ответ "200 OK" может приходить несколько раз в течение времени жизни соединения! Например "200 OK" приходит в ответ на reINVITE, отправляемый при установке соединения на hold и/или снятии соединения с hold'а. При этом каждый раз выполняется рестарт таймера соединения и, таким образом, абонент может сколько угодно продлевать установленный оператором лимит времени соединения.

Для исправления ситуации предлагается при получении ответа запускать таймер соединения только если он еще не запущен. Если уже запущен, рестарт таймера не выполнять.

Change History (3)

comment:1 by alx, 5 years ago

Description: modified (diff)

comment:2 by alx, 5 years ago

Resolution: fixed
Status: newclosed

In 1556/sip_ua:

Исправлена ошибка: Таймер длительности соединения мог перезапускаться при REINVITE,
например при постановке на холд или снятии с холда. Теперь этот таймер запускается
только один раз. Closes #304.

comment:3 by alx, 5 years ago

In 1557/sip_ua:

Merged r1556 (See #304).

Note: See TracTickets for help on using tickets.