<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=koi8-r" http-equiv=Content-Type>
<META name=GENERATOR content="MSHTML 8.00.6001.18865"></HEAD>
<BODY>
<DIV dir=ltr align=left><SPAN class=972330800-29122009><FONT color=#0000ff
size=2 face=Arial>Igor</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=972330800-29122009><FONT color=#0000ff
size=2 face=Arial></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=972330800-29122009><FONT color=#0000ff
size=2 face=Arial>There are 2 things here.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=972330800-29122009><FONT color=#0000ff
size=2 face=Arial>1. compensate for the T1000 inability to renegotiate the
channel on master/slave conflict. (it should be the slave but ignores the
message from H323plus) so that you still get audio.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=972330800-29122009><FONT color=#0000ff
size=2 face=Arial>2. ensure that if the OLC does contain an invalid sessionID
that we avoid the assert and reject the OLC.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=972330800-29122009><FONT color=#0000ff
size=2 face=Arial></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=972330800-29122009><FONT color=#0000ff
size=2 face=Arial>I have checked a patch into the CVS (h323.cxx,h323neg.cxx)
that should resolve both problems.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=972330800-29122009><FONT color=#0000ff
size=2 face=Arial></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=972330800-29122009><FONT color=#0000ff
size=2 face=Arial>Simon</FONT></SPAN></DIV><BR>
<DIV dir=ltr lang=en-us class=OutlookMessageHeader align=left>
<HR tabIndex=-1>
<FONT size=2 face=Tahoma><B>From:</B> Igor Pavlov [mailto:pavlov.ig@gmail.com]
<BR><B>Sent:</B> Tuesday, 29 December 2009 12:24 AM<BR><B>To:</B> Simon
Horne<BR><B>Cc:</B> h323plus@lists.packetizer.com<BR><B>Subject:</B> Re:
[h323plus] Valid sessionID in OpenLogicalChannel command<BR></FONT><BR></DIV>
<DIV></DIV>Simon<BR><BR>I can see following sequence of packets with
sniffer:<BR><BR>me -> T1000 : masterSlaveDetermination : terminalType
50<BR>T1000 -> me : masterSlaveDetermination : terminalType 50<BR>me ->
T1000 : masterSlaveDeterminationAck : descision slave(1)<BR>T1000 -> me :
masterSlaveDeterminationAck : descision master(0)<BR><BR>Am I understand you
right that T1000 says that he is master, however don't discharge master's
obligations correct ?<BR><BR>May be Assert should work only in debug? But in
release in this case h323plus should just reject such RTP session (with
incorrect sessionID) ? <BR><BR>Igor<BR><BR>
<DIV class=gmail_quote>28 декабря 2009 г. 16:47 пользователь Simon Horne <SPAN
dir=ltr><<A
href="mailto:s.horne@packetizer.com">s.horne@packetizer.com</A>></SPAN>
написал:<BR>
<BLOCKQUOTE
style="BORDER-LEFT: rgb(204,204,204) 1px solid; MARGIN: 0pt 0pt 0pt 0.8ex; PADDING-LEFT: 1ex"
class=gmail_quote>
<DIV>
<DIV dir=ltr align=left><SPAN><FONT color=#0000ff size=2
face=Arial>Igor</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN><FONT color=#0000ff size=2
face=Arial></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN><FONT color=#0000ff size=2 face=Arial>The
problem you are having with the Tandberg T1000 is a tandberg bug. The endpoint
cannot properly renegotiate the OLC on a master/slave conflict. The
H323plus end advises the T1000 that it is master however the
T1000 ignores it causing the conflict. Tandberg may have
a firmware update to correct the problem.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN><FONT color=#0000ff size=2
face=Arial></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN><FONT color=#0000ff size=2
face=Arial>Simon</FONT></SPAN></DIV><BR>
<DIV dir=ltr lang=en-us align=left>
<HR>
<FONT size=2 face=Tahoma>
<DIV class=im><B>From:</B> Igor Pavlov [mailto:<A
href="mailto:pavlov.ig@gmail.com" target=_blank>pavlov.ig@gmail.com</A>]
<BR></DIV><B>Sent:</B> Monday, 28 December 2009 11:07 PM
<DIV>
<DIV></DIV>
<DIV class=h5><BR><B>To:</B> Simon Horne<BR><B>Cc:</B> <A
href="mailto:h323plus@lists.packetizer.com"
target=_blank>h323plus@lists.packetizer.com</A><BR><B>Subject:</B> Re:
[h323plus] Valid sessionID in OpenLogicalChannel
command<BR></DIV></DIV></FONT><BR></DIV>
<DIV>
<DIV></DIV>
<DIV class=h5>
<DIV></DIV>About H.264 plugin - actualy I have 3rd party static library for
H.264 encoding/decoding and use H264 plugin as wrapper to connect library to
h323plus. I don't think anyone has interest of half working plugin without
static library...<BR><BR>
<DIV class=gmail_quote>28 декабря 2009 г. 15:57 пользователь Simon Horne <SPAN
dir=ltr><<A href="mailto:s.horne@packetizer.com"
target=_blank>s.horne@packetizer.com</A>></SPAN> написал:<BR>
<BLOCKQUOTE
style="BORDER-LEFT: rgb(204,204,204) 1px solid; MARGIN: 0pt 0pt 0pt 0.8ex; PADDING-LEFT: 1ex"
class=gmail_quote>
<DIV>
<DIV dir=ltr align=left><FONT color=#0000ff size=2
face=Arial><SPAN>Igor</SPAN></FONT></DIV>
<DIV dir=ltr align=left><FONT color=#0000ff size=2
face=Arial><SPAN></SPAN></FONT> </DIV>
<DIV dir=ltr align=left><SPAN><FONT color=#0000ff size=2 face=Arial>The
problem is caused by an master/slave conflict when first opening the audio
channel which results in the OLC being rejected. The correct
process is to renegotiate the OLC. It appears that the T1000 cannot
properly renegotiate the OLC and incorrectly allocates an
invalid sessionID of 0 which causes the assert and behavior you
highlighted.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN><FONT color=#0000ff size=2
face=Arial></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN><FONT color=#0000ff size=2 face=Arial>I also
see you are using a modified and working H.264 plugin and have decided
not to contribute any of that work back to the project. This is a
pity.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN><FONT color=#0000ff size=2
face=Arial></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN><FONT color=#0000ff size=2
face=Arial>Simon</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN><FONT color=#0000ff size=2
face=Arial></FONT></SPAN> </DIV><FONT color=#0000ff size=2
face=Arial></FONT><BR>
<DIV dir=ltr lang=en-us align=left>
<HR>
<FONT size=2 face=Tahoma><B>From:</B> Igor Pavlov [mailto:<A
href="mailto:pavlov.ig@gmail.com" target=_blank>pavlov.ig@gmail.com</A>]
<BR><B>Sent:</B> Monday, 28 December 2009 9:46 PM<BR><B>To:</B> Simon
Horne<BR><B>Cc:</B> <A href="mailto:h323plus@lists.packetizer.com"
target=_blank>h323plus@lists.packetizer.com</A><BR><B>Subject:</B> Re:
[h323plus] Valid sessionID in OpenLogicalChannel
command<BR></FONT><BR></DIV>
<DIV>
<DIV></DIV>
<DIV>
<DIV></DIV>Sending log.<BR>T1000 in most cases after Reject sends OLC with
sessionID=0, and in less cases send OLC with sessionID from 32 up to 53
(increase 1 after each reject).<BR><BR><BR>
<DIV class=gmail_quote>2009/12/28 Simon Horne <SPAN dir=ltr><<A
href="mailto:s.horne@packetizer.com"
target=_blank>s.horne@packetizer.com</A>></SPAN><BR>
<BLOCKQUOTE
style="BORDER-LEFT: rgb(204,204,204) 1px solid; MARGIN: 0pt 0pt 0pt 0.8ex; PADDING-LEFT: 1ex"
class=gmail_quote>
<DIV>
<DIV dir=ltr align=left><SPAN><FONT color=#0000ff size=2
face=Arial>Igor</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN><FONT color=#0000ff size=2
face=Arial>Session ID should never be zero. This is clearly an error
coming from the T1000 unit. </FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN><FONT color=#0000ff size=2
face=Arial></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN><FONT color=#0000ff size=2 face=Arial>Can
you post a level 6 trace showing the condition the T1000 sends an OLC with
sessionID = 0</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN><FONT color=#0000ff size=2
face=Arial></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN><FONT color=#0000ff size=2
face=Arial>Simon</FONT></SPAN></DIV><BR>
<DIV dir=ltr lang=en-us align=left>
<HR>
<FONT size=2 face=Tahoma><B>From:</B> <A
href="mailto:h323plus-bounces@lists.packetizer.com"
target=_blank>h323plus-bounces@lists.packetizer.com</A> [mailto:<A
href="mailto:h323plus-bounces@lists.packetizer.com"
target=_blank>h323plus-bounces@lists.packetizer.com</A>] <B>On Behalf Of
</B>Igor Pavlov<BR><B>Sent:</B> Monday, 28 December 2009 8:25
PM<BR><B>To:</B> <A href="mailto:h323plus@lists.packetizer.com"
target=_blank>h323plus@lists.packetizer.com</A><BR><B>Subject:</B>
[h323plus] Valid sessionID in OpenLogicalChannel
command<BR></FONT><BR></DIV>
<DIV>
<DIV></DIV>
<DIV>
<DIV></DIV>Hi.<BR><BR>I have problem when I reject OpenLogicalChannel
(audio) while communicating with Tandberg T1000.<BR>In most cases Tandberg
send me OpenLogicalChannel again with sessionID=0 so my application falls
in assertion<BR>in file rtp.cxx line 760 :<BR>PAssert(id > 0 &&
id < 256, PInvalidParameter);<BR><BR>I could not find valid value range
for sessionID, but I don't like when application crashes in this case
:(<BR clear=all>What can I do in this situation?<BR><BR><BR>Igor
Pavlov<BR></DIV></DIV></DIV></BLOCKQUOTE></DIV><BR><BR clear=all><BR>--
<BR>Игорь Павлов<BR></DIV></DIV></DIV></BLOCKQUOTE></DIV><BR><BR
clear=all><BR>-- <BR>Игорь
Павлов<BR></DIV></DIV></DIV></BLOCKQUOTE></DIV><BR><BR clear=all><BR>--
<BR>Игорь Павлов<BR></BODY></HTML>