[reSIProcate] stateless-proxy transportselector problem
Developers,
I've been following the list for about a month and finally
had some time
to jump in on some stuff I've been needing to work on.
Current SVN
revision is 3278.
I started with the stateless proxy example to get a dummy OK
back to a
Polycom IP 500 Phone because of issues it has.
I got past the issue of "proto" being NULL in the
constructor and Data()
asserting a null condition.
In requestValidation() I added:
if (request->header(h_RequestLine).getMethod() ==
REGISTER) {
sendResponse( request, 200 );
return false;
}
Now when I receive a REGISTER it results in:
stateless-proxy: TransportSelector.cxx:572: void
resip::TransportSelector::transmit(
resip::SipMessage*, resip::Tuple&): Assertion
'target.transport' failed.
In StatelessHandler.cxx:82 an attempt is made to build the
target Tuple:
Tuple destination(via.param(p_received), port,
Tuple::toTransport(via.transport()));
however the 3rd param is really populating mTransportType
and not transport...
the destination.transport is still NULL. Method names are a
little misleading here.
I have a no-holds-barred HACK in place so it routes for me
at the moment but
I know it is wrong... there is a comment at the beginning
of TransportSelector::
transmit() that the transport-determination logic is also
needed for responses...
If I'm on the right path let me know and I'll finish out the
TransportSelector::transmit() code and submit it... If
not, point me, please.
I hope to be actively invovled moving forward and I should
have a number of
'sample' programs for people just getting started after I
finish getting over
this hurdle.
Jay