< Previous by Date Date Index Next by Date >
< Previous in Thread Thread Index Next in Thread >

Re: [reSIProcate] Smarter accept header validation in dum?


I haven't tried out the new code yet, but from the commit diff it looks like 
the situation I described in my original post will still occur, although it 
is now solvable.

In DialogUsageManager::validateAccept() the for loop that checks the Accept 
values will sill bail with a 406 the first time it sees an unacceptable 
value.  Of course it had to be this way with the old code, but now that your 
fix relates mimes to request types I think the loop should only send a 406 if 
zero Accept header values match.  The request should be acceptable if only 
one mime type matches even if all the rest don't, correct? 

Thanks,
~Scott

On February 2, 2005 1:15 pm, Scott Godin wrote:
> I've completed making changes for this and have committed to the teltel
> branch.  Supported MimeTypes are now Request specific.
>
> -----Original Message-----
> From: Scott Godin
> Sent: Friday, January 21, 2005 4:08 PM
> To: 'Scott Zuk'; resiprocate-devel@xxxxxxxxxxxxxxxxxxx
> Subject: RE: [reSIProcate] Smarter accept header validation in dum?
>
> I agree with you, and I like your suggestion.  I will add this to my task
> list.
>
> For now - you could just disable Accept validation completely - by calling
> profile method:
> validateAcceptEnabled() = false;
>
> -----Original Message-----
> From: Scott Zuk [mailto:szuk@xxxxxxxxxxxxxxx]
> Sent: Thursday, January 20, 2005 1:23 AM
> To: resiprocate-devel@xxxxxxxxxxxxxxxxxxx
> Subject: [reSIProcate] Smarter accept header validation in dum?
>
> Hi,
>
> I'm trying to get my dum based program to talk with windows messenger,
> however
> the way the dum handles accept header validation causes all subscribe
> requests sent by windows messenger to be rejected.
>
> WM sends subscribes with an Accept header containing the mime types
> "text/xml+msrtc.pidf" "application/xpidf+xml" and "application/pidf+xml" in
> that order.  My app is set to reply using only "application/pidf+xml" so in
> theory this should be fine.  The problem though is that
> DialogUsageManager::validateAccept() sends a 406 failure on the first
> unrecognized mime type it sees, even if there is a valid one later in the
> list.  Is this the intended behaviour?
>
> I think the dum should take into account the message type when determining
> valid accept mime types.  Adding a method to Profile that would allow
> something like
> addSupportedMimeType(Mime("application", "pidf+xml"), SUBSCRIBE) might be
> usefull.  Are there any current plans to implement something like this in
> resiprocate?
>
> Thanks,
> ~Scott
> _______________________________________________
> resiprocate-devel mailing list
> resiprocate-devel@xxxxxxxxxxxxxxxxxxx
> https://list.sipfoundry.org/mailman/listinfo/resiprocate-devel