Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
Conflicts:
NEWS
configure.ac
lib/ext/wocky
|
|
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=65036
Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
|
|
We don't currently use JabberAuthenticator in this mode, so nobody
noticed that it didn't work. I'm about to add a test that does use it.
|
|
|
|
We also have local changes, which should go "upstream" to telepathy-glib
at some point.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=63119
|
|
Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=43166#c0
|
|
This didn't work as-is because the <presence type='unavailable'> had no
<x> child. Using make_muc_presence() does the job nicely.
|
|
|
|
https://bugs.freedesktop.org/show_bug.cgi?id=43166#c7
|
|
There were a combination of problems before:
* The server's error message was not exposed in the delivery report;
* Wocky didn't recognise policy-violation;
* There was a bug in Wocky's error parsing code which clobbered the
message type.
So many bugs for such a small stanza!
|
|
There will be more cases shortly
|
|
These three tests were making blocking calls to Disconnect() rather than
using the disconnect_conn() helper. As a result, Gabble was waiting 5
seconds for the test server to send back </stream:stream> before timing
out. Using disconnect_conn(), which sends the stream close back
properly, shaves between 15 and 18 wasted seconds off the test suite.
|
|
|
|
This renames the classes I'm moving to Wocky, and updates all the
remaining code to cope. A few things are missed out because it's only
reasonable to change them when the code is in Wocky:
• GABBLE_TYPE_STUN_SERVER_SOURCE (the GEnum for WockyStunServerSource)
can't be renamed easily because it is generated by Gabble's enumtype
thing.
• GABBLE_DEBUG_MEDIA.
Here's the program I used, for posterity.
#!/usr/bin/perl -pi
use strict;
BEGIN {
undef $/;
}
my @Classes = qw(Factory Session Transport_Iface Transport_IceUdp
Transport_RawUdp Transport_Google Content Info
Media_Rtp Relay);
for my $Class (@Classes) {
my $FullClass = "Jingle$Class";
$FullClass =~ s/_//g;
my $under_class = "jingle_" . lc($Class);
my $UNDER_CLASS = uc($under_class);
s/Gabble$FullClass/Wocky$FullClass/g;
s/gabble_$under_class/wocky_$under_class/g;
s/GABBLE_$UNDER_CLASS/WOCKY_$UNDER_CLASS/g;
s/GABBLE_TYPE_$UNDER_CLASS/WOCKY_TYPE_$UNDER_CLASS/g;
s/GABBLE_IS_$UNDER_CLASS/WOCKY_IS_$UNDER_CLASS/g;
}
s/GabbleGoogleRelay/WockyGoogleRelay/g;
s/gabble_google_relay/wocky_google_relay/g;
s/GABBLE_N_JINGLE_RELAY_TYPES/WOCKY_N_JINGLE_RELAY_TYPES/g;
s/gabble_stun_server/wocky_stun_server/g;
s/GABBLE_STUN_SERVER/WOCKY_STUN_SERVER/g;
# Can't rename GABBLE_TYPE_STUN_SERVER_SOURCE because it's generated. Blah.
s/GabbleStunServer/WockyStunServer/g;
my @Blah_Blah = qw(Candidate State Action Content_Senders Transport_Type
Transport_Protocol Candidate_Type Reason
Transport_State Dialect Content_State Media_Type Codec
Media_Description Feedback_Message Rtp_Header_Extension
Media_Profile);
for my $Class (@Blah_Blah) {
my $FullClass = "Jingle$Class";
$FullClass =~ s/_//g;
my $under_class = "jingle_" . lc($Class);
my $UNDER_CLASS = uc($under_class);
s/\b$FullClass/Wocky$FullClass/g;
s/\b_$FullClass/_Wocky$FullClass/g;
s/\b$under_class/wocky_$under_class/g;
s/\b$UNDER_CLASS/WOCKY_$UNDER_CLASS/g;
}
s/MAX_JINGLE_STATES/WOCKY_N_JINGLE_STATES/g;
s/JINGLE_IS_GOOGLE_DIALECT/WOCKY_JINGLE_DIALECT_IS_GOOGLE/g;
|
|
We have this hack that sets __repr__ on domish.Element to call its
toXml() method, which ends up being used by the verbose logging code
when it dumps all of an event's attributes. Unfortunately, this blows up
if a stanza contains non-ASCII characters, because repr() tries to
convert unicode to str using .encode('ascii').
This made running jingle/test-send-file in verbose mode fail, because
the file being sent by the test has a non-ASCII filename. The fix is to
make the __repr__ hack escape non-ASCII characters using the
unicode-escape codec.
|
|
I did write this test as I went along, but I forgot to commit it.
Whoops.
|
|
|
|
There's no reason these should be any different, but I thought it might
be worth trying them anyway.
|
|
https://bugs.freedesktop.org/show_bug.cgi?id=52146
|
|
|
|
test_close_then_challenge() and test_close_then_success() each trigger
similar bugs.
test_abort_then_challenge() and test_abort_then_success() both trigger
the same bugs by a different route, which I don't think my first attempt
at fixing the original bug would have caught.
test_close_then_failure() and test_abort_then_failure() pass, and are
here for completeness.
|
|
|
|
|
|
Previously, if the bus wasn't there (perhaps I killed it when trying and
failing to ^C the test suite?) the test would just sit there forever
after the unhandled exception made its way up to the mainloop.
|
|
I wasn't sure from reading the code that this actually worked any more,
and it wasn't tested. I'm happy to say that it does work.
|
|
|
|
|
|
|
|
https://bugs.freedesktop.org/show_bug.cgi?id=57546
|
|
https://bugs.freedesktop.org/show_bug.cgi?id=25961
https://bugs.freedesktop.org/show_bug.cgi?id=25385
|
|
|
|
Previously, this test checked that events didn't happen by waiting for
them to happen, asserting if they did, and catching the TimeoutError
which occurred if they didn't.
But it's more obvious what's happening to forbid the event, take all the
actions, and then sync the stream to make sure it hasn't appeared. Plus,
it shaves 6 seconds off the test.
|
|
|
|
|
|
|
|
This test didn't actually use any of the jingle protocol stuff at
all—it's just a caps test.
|
|
The connection doesn't seem to leak any more. I added this in 07822b272
because <https://bugs.freedesktop.org/show_bug.cgi?id=29790>. I haven't
investigated fully, but the test passes, sooooo... :)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
In passing, test all dialects. (Though I think this may be a little
overzealous.)
https://bugs.freedesktop.org/show_bug.cgi?id=25385
|
|
|
|
Derived from a patch by Mike Ruprecht.
https://bugs.freedesktop.org/show_bug.cgi?id=25961
|
|
Previously, Google's reply to our original google:jingleinfo query would
be used correctly, but the act of passing it to
gabble_jingle_info_take_stun_server would set get_stun_from_jingle to
FALSE, causing any later calls to got_jingle_info_stanza() to ignore the
updated STUN server information.
We address this by distinguishing between user-set and server-provided
STUN servers, as opposed to just between fallback or not.
|