Bug 23777 - Don't advertise FT ContactCapability unless contact can stream data
Summary: Don't advertise FT ContactCapability unless contact can stream data
Status: NEW
Alias: None
Product: Telepathy
Classification: Unclassified
Component: gabble (show other bugs)
Version: unspecified
Hardware: Other All
: lowest minor
Assignee: Telepathy bugs list
QA Contact: Telepathy bugs list
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-09-07 08:21 UTC by Simon McVittie
Modified: 2009-09-08 05:54 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Simon McVittie 2009-09-07 08:21:43 UTC
From my caps-sanity branch:

>      /* FIXME: should we check for SI, bytestreams and/or IBB too? */
>      resource = gabble_presence_pick_resource_by_caps (presence,
>          gabble_capability_set_predicate_has, NS_FILE_TRANSFER);

I think we should check for the actual requirements for file transfer (currently I believe that means bytestreams, SI and either IBB or SOCKS5); otherwise we'll falsely advertise the FT capability for people we'd actually be unable to make a stream to.

However, I could be wrong, in which case please close this as INVALID.
Comment 1 Guillaume Desmottes 2009-09-08 02:23:18 UTC
If you advertise NS_FILE_TRANSFER that means you support XEP-0096: SI File Transfer. As this XEP uses SI, you are suppose to support XEP-0095: Stream Initiation as well.

We could check that the client supports at least one of the bytestream we implement (SOCKS5 and/or IBB) but, in practice, I'm not aware of any client supporting FT and SI but not SOCKS5 or IBB.

Furthemore, if we want to be more strict on caps checking we should extensively test interop with other clients. From my experience, some of them don't announce everything they support. This could have be fixed though, I didn't test this since a while.
Comment 2 Simon McVittie 2009-09-08 05:54:54 UTC
(In reply to comment #1)
> If you advertise NS_FILE_TRANSFER that means you support XEP-0096: SI File
> Transfer. As this XEP uses SI, you are suppose to support XEP-0095: Stream
> Initiation as well.

OK, that's reassuring.

> We could check that the client supports at least one of the bytestream we
> implement (SOCKS5 and/or IBB) but, in practice, I'm not aware of any client
> supporting FT and SI but not SOCKS5 or IBB.

Based on this, setting a low severity/priority.

> Furthemore, if we want to be more strict on caps checking we should extensively
> test interop with other clients. From my experience, some of them don't
> announce everything they support. This could have be fixed though, I didn't
> test this since a while.

A valid point; perhaps this should just be fixed by removing the comment, then.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.