Launchpad has imported 12 comments from the remote bug at
https://bugs.freedesktop.org/show_bug.cgi?id=68829.

If you reply to an imported comment from within Launchpad, your comment
will be sent to the remote bug automatically. Read more about
Launchpad's inter-bugtracker facilities at
https://help.launchpad.net/InterBugTracking.

------------------------------------------------------------------------
On 2013-09-02T00:56:21+00:00 U26 wrote:

Created attachment 85035
Patch for wocky

Right now connecting to the new Facebook server we send a disco request
to chat.facebook.com. The new server responds omitting the from from in
the reply.

This causes gabble to reject the reply and then disconnect because we
had no DISCO reply.

Attached patch fixes this.

--

The patch could also be done by using

+stanza_is_from_server(self, should_be_from)

in the if clause below. 
I chose this way to be more explicit, but the other way is maybe simpler.

Reply at: https://bugs.launchpad.net/ubuntu/+source/telepathy-
gabble/+bug/1170832/comments/10

------------------------------------------------------------------------
On 2013-09-02T11:36:36+00:00 Simon McVittie wrote:

Comment on attachment 85035
Patch for wocky

Review of attachment 85035:
-----------------------------------------------------------------

What's the worst that can happen?

RFC 6120 §8.1.2.1 says:

   2.  When the server generates a stanza on its own behalf for delivery
       to the client from the server itself, the stanza MUST include a
       'from' attribute whose value is the bare JID

so this is not RFC-compliant XMPP. (Interop > RFC pedantry in situations
where it doesn't harm security, though.)

Also,

   4.  A server MUST NOT send to the client a stanza without a 'from'
       attribute if the stanza was not generated by the server on its
       own behalf

so if the server obeys §8.1.2.1.4, the worst that can happen with this
change is that we see a stanza generated by the server on behalf of our
account and we wrongly accept it as a valid stanza generated by the
server itself, which is what we need to do to fix this interop bug.

So, I'm OK with this change in principle.

::: wocky/wocky-c2s-porter.c
@@ +859,5 @@
>          goto finally;
>      }
>  
> +  /** If we sent an IQ to the server allow the server to omit 'to'
> +   * in the reply. */

omit 'from', surely?

/** is for doc-comments consumed by gtk-doc, not for ordinary comments.

Please do mention that the Facebook server now does this (preferably
with "see fd.o #68829" or the URL of the bug) and that we would normally
interpret this as coming from "the server on behalf of our account".
Something like this:

  /* If we sent an IQ to the server itself, allow it to
   * omit 'from' in its reply, which is normally used
   * for messages from the server on behalf of our own
   * account (as of 2013-09-02, the Facebook server does
   * this). See fd.o #68829 */

The server is still returning valid disco information about itself, not
about our account, I hope?

Reply at: https://bugs.launchpad.net/ubuntu/+source/telepathy-
gabble/+bug/1170832/comments/11

------------------------------------------------------------------------
On 2013-09-04T15:21:35+00:00 U26 wrote:

Thanks will update patch.


Disco requests/responses attached for future reference.

Facebook's beta server for me returns the following on a disco request

<!-- sent -->
<iq id="327894361669" to="beta.chat.facebook.com" type="get" 
xmlns="jabber:client">
        <query xmlns="http://jabber.org/protocol/disco#info"/>
</iq>

<!-- received -->
<iq id="327894361669" type="result" xmlns="jabber:client">
        <query xmlns="http://jabber.org/protocol/disco#info";>
                <identity category="server" type="Facebook XMPP"/>
                <feature var="http://jabber.org/protocol/commands"/>
                <feature var="http://jabber.org/protocol/chatstates"/>
                <feature var="vcard-temp"/>
        </query>
</iq>

requesting disco info chat.facebook.com is the same

<!-- sent -->
<iq id="67671632942" to="chat.facebook.com" type="get" xmlns="jabber:client">
        <query xmlns="http://jabber.org/protocol/disco#info"/>
</iq>

<!-- received -->
<iq id="67671632942" type="result" xmlns="jabber:client">
        <query xmlns="http://jabber.org/protocol/disco#info";>
                <identity category="server" type="Facebook XMPP"/>
                <feature var="http://jabber.org/protocol/commands"/>
                <feature var="http://jabber.org/protocol/chatstates"/>
                <feature var="vcard-temp"/>
        </query>
</iq>


I know Facebook rolls out services gradually, and some of my user's are
hitting the same error that I am currently getting with the beta service
so I suspect this will hit most user's soon.

Reply at: https://bugs.launchpad.net/ubuntu/+source/telepathy-
gabble/+bug/1170832/comments/12

------------------------------------------------------------------------
On 2013-09-04T16:15:15+00:00 U26 wrote:

Created attachment 85203
Updated patch

Reply at: https://bugs.launchpad.net/ubuntu/+source/telepathy-
gabble/+bug/1170832/comments/13

------------------------------------------------------------------------
On 2013-09-06T10:12:57+00:00 Guillaume-desmottes wrote:

Thanks, I merged your patch to the Wocky 'master' and 'gabble-0.18'
branches.

Should be in telepathy-gabble 0.18.1 and 0.19.0.

Reply at: https://bugs.launchpad.net/ubuntu/+source/telepathy-
gabble/+bug/1170832/comments/14

------------------------------------------------------------------------
On 2013-09-06T10:39:58+00:00 Guillaume-desmottes wrote:

I just released telepathy-gabble 0.18.1 including this fix.

Reply at: https://bugs.launchpad.net/ubuntu/+source/telepathy-
gabble/+bug/1170832/comments/15

------------------------------------------------------------------------
On 2013-09-06T16:15:39+00:00 Simon McVittie wrote:

(In reply to comment #2)
> Facebook's beta server for me returns the following on a disco request
> 
> <!-- sent -->
> <iq id="327894361669" to="beta.chat.facebook.com" type="get"

Are you explicitly connecting to beta.chat.facebook.com, or getting
directed there via resource binding? I notice that Gabble's special
cases for Facebook are all based on the stream server being
"chat.facebook.com"...

Reply at: https://bugs.launchpad.net/ubuntu/+source/telepathy-
gabble/+bug/1170832/comments/16

------------------------------------------------------------------------
On 2013-09-06T16:18:37+00:00 U26 wrote:

I was explicitly using beta.chat.facebook.com in order to reproduce this
issue and for the the IQ stanzas I posted.

Other reporters on KDE forums who appeared to have this issue were using
standard chat.facebook.com. One user verified this patch solved their
problem.

Reply at: https://bugs.launchpad.net/ubuntu/+source/telepathy-
gabble/+bug/1170832/comments/17

------------------------------------------------------------------------
On 2013-09-09T12:02:14+00:00 Simon McVittie wrote:

Reopening to fix in older branches - I need a backport for Debian
anyway.

Reply at: https://bugs.launchpad.net/ubuntu/+source/telepathy-
gabble/+bug/1170832/comments/18

------------------------------------------------------------------------
On 2013-09-09T12:13:04+00:00 Simon McVittie wrote:

Created attachment 85494
Add a regression test for #68829

---

This passes on 0.18 and master. I haven't tried 0.16 yet.

Reply at: https://bugs.launchpad.net/ubuntu/+source/telepathy-
gabble/+bug/1170832/comments/19

------------------------------------------------------------------------
On 2013-09-09T12:25:50+00:00 Simon McVittie wrote:

(In reply to comment #9)
> Created attachment 85494
> Add a regression test for #68829
> 
> ---
> 
> This passes on 0.18 and master. I haven't tried 0.16 yet.

Also works fine on 0.16 when I cherry-pick David's Wocky patch. I'd like
to do a 0.16.7 release with this: hopefully the Debian release team will
let me ship that, rather than messing about with a patch series (which
is annoying because Wocky is a submodule).

Reply at: https://bugs.launchpad.net/ubuntu/+source/telepathy-
gabble/+bug/1170832/comments/20

------------------------------------------------------------------------
On 2013-09-09T13:04:06+00:00 Guillaume-desmottes wrote:

Comment on attachment 85494
Add a regression test for #68829

Review of attachment 85494:
-----------------------------------------------------------------

++

Reply at: https://bugs.launchpad.net/ubuntu/+source/telepathy-
gabble/+bug/1170832/comments/21


** Changed in: telepathy-gabble
       Status: Unknown => In Progress

** Changed in: telepathy-gabble
   Importance: Unknown => Medium

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1170832

Title:
  "Facebook Requires Authorization" when already authorized

To manage notifications about this bug go to:
https://bugs.launchpad.net/empathy/+bug/1170832/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to