Simon McVittie [Thu, 29 Mar 2012 18:17:17 +0000 (19:17 +0100)]
Add a simple regression test for unbound sockets
https://bugzilla.gnome.org/show_bug.cgi?id=673083
Simon McVittie [Thu, 29 Mar 2012 18:17:02 +0000 (19:17 +0100)]
SoupSocket: local, remote address are undefined if unconnected
Warn and return NULL deterministically, rather than warning and returning
uninitialized stack garbage, but document it as "undefined"; these
methods were never meant to be valid in this situation, apparently.
Bug: https://bugzilla.gnome.org/show_bug.cgi?id=673083
Dan Winship [Mon, 6 Aug 2012 14:29:31 +0000 (10:29 -0400)]
tld-test: update for changes to TLD data
Dan Winship [Mon, 6 Aug 2012 14:17:28 +0000 (10:17 -0400)]
update effective_tld_names.dat
Nilamdyuti Goswami [Fri, 3 Aug 2012 10:08:38 +0000 (15:38 +0530)]
Assamese translation updated
Kristjan SCHMIDT [Wed, 1 Aug 2012 18:01:48 +0000 (20:01 +0200)]
Add Esperanto translation
Fran Diéguez [Tue, 31 Jul 2012 00:02:52 +0000 (02:02 +0200)]
Updated Galician translations
Dan Winship [Mon, 30 Jul 2012 16:13:16 +0000 (12:13 -0400)]
autogen.sh: remove two outdated bits
Alexsey Nadtochey [Mon, 30 Jul 2012 11:40:13 +0000 (15:40 +0400)]
Updated Russian translation
Sweta Kothari [Fri, 27 Jul 2012 09:06:06 +0000 (14:36 +0530)]
Updated gujarati file & Added LINGUAS file for gujarati
Paweł Forysiuk [Thu, 26 Jul 2012 18:44:02 +0000 (20:44 +0200)]
Fix building with MinGW compiler
Cheng Lu [Thu, 26 Jul 2012 05:35:55 +0000 (13:35 +0800)]
Update Chinese simplified translation for ui
Kjartan Maraas [Wed, 25 Jul 2012 14:29:32 +0000 (16:29 +0200)]
Updated Norwegian bokmål translation
Dan Winship [Wed, 25 Jul 2012 12:54:11 +0000 (08:54 -0400)]
test-utils: simplify the SoupRequest test utils a bit
Yaron Shahrabani [Tue, 24 Jul 2012 20:15:09 +0000 (23:15 +0300)]
Updated Hebrew translation.
Dan Winship [Tue, 24 Jul 2012 20:06:43 +0000 (16:06 -0400)]
SoupConverterWrapper: handle truncated responses in general
Rather than just the specific case of "server claims non-0
Content-Length but response is empty", allow the response to be
truncated at any point. Because, you know, the web.
Dan Winship [Tue, 24 Jul 2012 19:22:44 +0000 (15:22 -0400)]
SoupSessionAsync: fix handling of timed-out SoupRequests
When using the SoupRequest API, a message that hit
SOUP_SESSION_TIMEOUT would error out, but would not emit "finished" or
get fully removed from the queue. Fix that and add SoupRequest tests
to timeout-test (along with tests that "finished" gets emitted).
Tom Tryfonidis [Fri, 20 Jul 2012 10:59:25 +0000 (13:59 +0300)]
Updated Greek translation
Dan Winship [Thu, 19 Jul 2012 12:49:55 +0000 (08:49 -0400)]
SoupSocket: don't emit "readable" on disconnect for blocking sockets
"readable" and "writable" are only supposed to be emitted for
non-blocking sockets, but we were emitting "readable" on disconnect
for all sockets.
In libsoup 2.38 and earlier, this could cause a crash if a message in
a SoupSessionSync failed at certain points, since the code wasn't
expecting to end up in io_read(). The current code no longer has this
problem (since soup-message-io no longer uses the SoupSocket signals),
but other external users of SoupSocket might.
Matej Urbančič [Thu, 19 Jul 2012 08:13:14 +0000 (10:13 +0200)]
Updated Slovenian translation
Dan Winship [Wed, 18 Jul 2012 21:43:12 +0000 (17:43 -0400)]
SoupServer: fix non-default-main-context usage
Need to push the server's async_context around doing message I/O to
make sure all the responses come back to the right place.
Dan Winship [Wed, 18 Jul 2012 12:35:58 +0000 (08:35 -0400)]
Fix deprecation warning on soup_message_headers_get()
https://bugzilla.gnome.org/show_bug.cgi?id=680143
Dan Winship [Tue, 17 Jul 2012 21:00:07 +0000 (17:00 -0400)]
SoupConverterWrapper: handle empty "compressed" responses
If a server sends an empty response but includes a Content-Encoding
header (in particular, in a HEAD or 304 response), suppress the
PARTIAL_INPUT error from the GZlibDecompressor and just return 0.
https://bugzilla.gnome.org/show_bug.cgi?id=679527 (?)
Dan Winship [Tue, 17 Jul 2012 20:58:55 +0000 (16:58 -0400)]
SoupBodyInputStream: fix hang reading empty chunked response
Set the eof flag immediately after reading the last chunk, rather than
waiting for the next read, since if the caller calls is_readable() or
create_source() instead, we need to know to not wait for the
base_stream to become readable.
Мирослав Николић [Tue, 17 Jul 2012 20:08:13 +0000 (22:08 +0200)]
Added Serbian translation
Dan Winship [Tue, 17 Jul 2012 14:11:07 +0000 (10:11 -0400)]
soup_uri_normalize: more fixes
uri_normalized_copy() should not go into fixup mode when it sees a
non-printable character if that character is in @unescape_extra.
Likewise, if it does go into fixup mode, it shouldn't fix up the
@unescape_extra characters.
https://bugzilla.gnome.org/show_bug.cgi?id=680018
Dan Winship [Tue, 17 Jul 2012 12:34:51 +0000 (08:34 -0400)]
2.39.4.1
Carlos Garcia Campos [Tue, 17 Jul 2012 10:54:07 +0000 (12:54 +0200)]
soup-tld: Handle SOUP_TLD_ERROR_NO_BASE_DOMAIN in soup_tld_domain_is_public_suffix()
And return FALSE in case domain doesn't have a base domain, so that non
suffixed domains like localhost are not considered public.
https://bugzilla.gnome.org/show_bug.cgi?id=679230
Dan Winship [Tue, 17 Jul 2012 12:27:46 +0000 (08:27 -0400)]
tld-parser.py: fix tabs vs spaces
and remove an unused import. patch from "marduk".
https://bugzilla.gnome.org/show_bug.cgi?id=680089
Daniel Mustieles [Tue, 17 Jul 2012 10:05:08 +0000 (12:05 +0200)]
Updated Spanish translation
Dan Winship [Mon, 16 Jul 2012 22:27:30 +0000 (18:27 -0400)]
2.39.4
Dan Winship [Mon, 16 Jul 2012 22:03:24 +0000 (18:03 -0400)]
soup-tld: do not consider non suffixed domains as public
Non suffixed hostnames (used in many intranet applications) should not be
considered as public.
Based on a patch from Sergio Villar Senin.
https://bugzilla.gnome.org/show_bug.cgi?id=679230
Alban Browaeys [Mon, 16 Jul 2012 21:21:18 +0000 (23:21 +0200)]
Set the message priv->decoders to NULL after free.
Set the message priv->decoders to NULL after free
to fix
(epiphany:14909): GLib-GObject-CRITICAL **: g_object_unref:
assertion `G_IS_OBJECT (object)' failed
in epiphany from soup_message_cleanup_response.
https://bugzilla.gnome.org/show_bug.cgi?id=680055
Dan Winship [Mon, 16 Jul 2012 16:58:40 +0000 (12:58 -0400)]
soup_message_headers_get_content_length: recheck encoding
Use soup_message_headers_get_encoding() rather than looking at
hdrs->encoding directly, so that it gets recomputed if it's stale (eg,
from another header having been removed).
https://bugzilla.gnome.org/show_bug.cgi?id=680029
Carlos Garcia Campos [Mon, 16 Jul 2012 16:18:31 +0000 (18:18 +0200)]
soup-cache: Save the sniffed mime type in the cache too
https://bugzilla.gnome.org/show_bug.cgi?id=680029
Dan Winship [Mon, 2 Jul 2012 17:50:39 +0000 (13:50 -0400)]
SoupSession: rename host_lock to conn_lock
since that describes its purpose better
Dan Winship [Fri, 8 Jun 2012 08:04:36 +0000 (04:04 -0400)]
soup-message-io: make disconnect-on-unfinished more implicit
Rather than disconnecting the connection from soup_message_io_stop()
if the message didn't complete, do it from
SoupConnection:clear_current_item(). This makes it DTRT even if the
SoupMessageQueueItem loses its connection before
soup_message_io_stop() gets called.
Dan Winship [Sun, 27 May 2012 15:49:26 +0000 (11:49 -0400)]
soup_session_queue_message: simplify the msg refcounting internally
Dan Winship [Sun, 27 May 2012 15:30:03 +0000 (11:30 -0400)]
SoupSession: replace queue_message() base impl with a separate method
Create soup_session_append_queue_item() to do what the base
implementation of queue_message() did, and use that from various
places that used to call the base queue_message() directly.
Dan Winship [Mon, 16 Jul 2012 16:04:52 +0000 (12:04 -0400)]
soup-uri: fix uri_normalized_copy to not always do fixup
need_fixup was always getting set, because the trailing NUL character
was being processed by the loop. Fix.
Pointed out by Yann SOUBEYRAND,
https://bugzilla.gnome.org/show_bug.cgi?id=680018
Chao-Hsiung Liao [Mon, 16 Jul 2012 00:48:40 +0000 (08:48 +0800)]
Updated Traditional Chinese translation(Hong Kong and Taiwan)
Ihar Hrachyshka [Sun, 15 Jul 2012 11:23:21 +0000 (14:23 +0300)]
Updated Belarusian translation.
Aurimas Černius [Sat, 14 Jul 2012 15:50:25 +0000 (18:50 +0300)]
Added Lithuanian translation
Kjartan Maraas [Sat, 14 Jul 2012 11:24:22 +0000 (13:24 +0200)]
Remove zh_HK and zh_TW because the translation files are missing
Chao-Hsiung Liao [Sat, 14 Jul 2012 06:17:37 +0000 (14:17 +0800)]
Updated Traditional Chinese translation(Hong Kong and Taiwan)
Dan Winship [Mon, 9 Jul 2012 18:36:09 +0000 (14:36 -0400)]
Fix the retry-on-broken-connection codepath for SoupRequest
The retry-if-the-server-closes-the-connection-immediately code was
only getting run in the SoupMessage API codepaths. Fit it into the
right place in the SoupRequest paths too, and test that from
connection-test.
Might fix https://bugzilla.gnome.org/show_bug.cgi?id=679527 ?
Dan Winship [Mon, 9 Jul 2012 17:44:42 +0000 (13:44 -0400)]
Add some test-utils helpers for async SoupRequest usage
Dan Winship [Fri, 13 Jul 2012 19:27:13 +0000 (15:27 -0400)]
soup-client-input-stream: don't chain up from close/close_async
GInputStream's default close_async method runs the sync close method
in a thread, which means that you can't chain up to it from a subclass
implementation. And GFilterInputStream only overrides close_fn, not
close_async, so there's no way to asynchronously get the
close-base-stream behavior if we want to override close_async in
SoupClientInputStream. Ugh! Anyway, we always have a non
close-base-stream SoupBodyInputStream somewhere under the
SoupClientInputStream, so there's no need to chain up anyway.
Fixes a sporadic bug caused by the fact that we were closing the
stream (and thus calling soup_message_io_run_until_finish()) twice.
Dan Winship [Fri, 6 Jul 2012 17:09:50 +0000 (13:09 -0400)]
Clean up includes
Especially, include soup.h rather than individually including a bunch
of other public soup-*.h files.
Remove unnecessary system includes (many are leftovers from code that
has moved down into glib).
Dan Winship [Wed, 4 Jul 2012 17:12:38 +0000 (13:12 -0400)]
Reorganize files to need fewer forward declarations
Also, prefix virtual method implementation names with the class name,
to be consistent with other code.
Dan Winship [Wed, 4 Jul 2012 16:44:37 +0000 (12:44 -0400)]
Use G_DEFINE_INTERFACE and G_DEFINE_BOXED_TYPE
Dan Winship [Mon, 2 Jul 2012 14:49:53 +0000 (10:49 -0400)]
Use g_clear_object(), g_clear_pointer()
Dan Winship [Mon, 2 Jul 2012 14:18:18 +0000 (10:18 -0400)]
Use g_ptr_array_new_with_free_func()
Dan Winship [Mon, 2 Jul 2012 13:49:48 +0000 (09:49 -0400)]
Use g_slist_free_full()
Dan Winship [Sun, 3 Jun 2012 13:36:14 +0000 (09:36 -0400)]
Replace g_hash_table_foreach() with GHashTableIter
or g_hash_table_new_full() when the foreach was only being used for
cleanup.
Dan Winship [Mon, 2 Jul 2012 13:34:18 +0000 (09:34 -0400)]
Remove an unnecessary old demo program that doesn't work any more
Dan Winship [Sun, 3 Jun 2012 13:33:44 +0000 (09:33 -0400)]
soup-session.c: whitespace fix
Dan Winship [Fri, 13 Jul 2012 18:18:22 +0000 (14:18 -0400)]
requester-test: fix some debug printfs
Nilamdyuti Goswami [Fri, 13 Jul 2012 14:42:43 +0000 (20:12 +0530)]
Assamese translation completed
Nilamdyuti Goswami [Fri, 13 Jul 2012 14:38:08 +0000 (20:08 +0530)]
Added Assamese to LINGUAS
Yaron Shahrabani [Thu, 12 Jul 2012 15:58:38 +0000 (18:58 +0300)]
Updated Hebrew translation.
Dan Winship [Wed, 11 Jul 2012 00:35:08 +0000 (20:35 -0400)]
SoupCookie: ignore values on httponly and secure attributes
The cookie parsing algorithm says to ignore values on attributes that
aren't supposed to have them, so do that. Also add a test for this.
Based on a patch from "Basavaraj".
Also, drive-by bugfix in soup_cookie_to_set_cookie_header() /
soup_cookies_to_response() (the SoupServer side of the cookie APIs),
which were outputting "HttpOnly" if the cookie had the "secure" flag
set, rather than the "http_only" flag.
https://bugzilla.gnome.org/show_bug.cgi?id=678753
Dan Winship [Wed, 11 Jul 2012 00:12:41 +0000 (20:12 -0400)]
Fix cookies-test.c indentation
Kjartan Maraas [Tue, 10 Jul 2012 05:57:26 +0000 (07:57 +0200)]
Updated Norwegian bokmål translation
Javier Jardón [Thu, 5 Jul 2012 14:50:32 +0000 (23:50 +0900)]
Replace deprecated symbols
Javier Jardón [Sat, 10 Mar 2012 12:24:05 +0000 (12:24 +0000)]
Add deprecation attributes to deprecated functions
This is using the newly introduce G_DEPRECATED macros
from GLib. Traditional deprecation guards are still in
place.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=671770
Alexander Shopov [Thu, 5 Jul 2012 09:37:46 +0000 (12:37 +0300)]
Updated Bulgarian translation
Dan Winship [Wed, 4 Jul 2012 15:11:50 +0000 (11:11 -0400)]
update .gitignore for tld_data.inc
Nguyễn Thái Ngọc Duy [Sat, 30 Jun 2012 03:16:01 +0000 (10:16 +0700)]
Added Vietnamese translation
Andika Triwidada [Thu, 28 Jun 2012 03:26:37 +0000 (10:26 +0700)]
Updated Indonesian translation
Colin Walters [Tue, 26 Jun 2012 17:27:17 +0000 (13:27 -0400)]
tld-parser: Rewrite in Python
This avoids the issues in building native code to build an
intermediate file to build more native code. Automake has
BUILT_SOURCES but it's easier to just have build tools in scripting
languages.
https://bugzilla.gnome.org/show_bug.cgi?id=678909
Colin Walters [Tue, 26 Jun 2012 17:40:33 +0000 (13:40 -0400)]
build: Don't write tld_data.inc to srcdir which may not be writable
Generated data should go in the builddir.
https://bugzilla.gnome.org/show_bug.cgi?id=678909
Colin Walters [Tue, 26 Jun 2012 15:20:33 +0000 (11:20 -0400)]
tld-parser: Add error handling
Colin Walters [Tue, 26 Jun 2012 14:13:28 +0000 (10:13 -0400)]
Revert "make dist fix"
This reverts commit
76cc02212e63f692e6e36bdf99987928dc3c2ed2. After
discussion with Dan on IRC, we agreed to revert this for now until a
better solution is written. Probably one of
1) Rewrite tld-parser in a scripting language, so it doesn't have
a build process
2) Hack somewhere else in automake to make 'make dist' happy
Dan Winship [Tue, 26 Jun 2012 12:48:25 +0000 (08:48 -0400)]
2.39.3
Dan Winship [Tue, 26 Jun 2012 12:42:38 +0000 (08:42 -0400)]
make dist fix
Fran Diéguez [Sun, 24 Jun 2012 21:26:41 +0000 (23:26 +0200)]
Updated Galician translations
Tom Tryfonidis [Fri, 22 Jun 2012 10:17:20 +0000 (13:17 +0300)]
Updated Greek translation
Sasi Bhushan Boddepalli [Wed, 20 Jun 2012 13:43:41 +0000 (19:13 +0530)]
Updated Telugu Translation
Sasi Bhushan Boddepalli [Wed, 20 Jun 2012 13:39:36 +0000 (19:09 +0530)]
Updated Telugu Translation
Dan Winship [Mon, 4 Jun 2012 16:25:51 +0000 (12:25 -0400)]
belatedly commit 2.39.2 NEWS
Matej Urbančič [Sat, 16 Jun 2012 06:47:56 +0000 (08:47 +0200)]
Updated Slovenian translation
Daniel Mustieles [Fri, 15 Jun 2012 10:10:51 +0000 (12:10 +0200)]
Updated Spanish translation
Sergio Villar Senin [Thu, 19 Apr 2012 18:39:24 +0000 (20:39 +0200)]
soup-cookie-jar: do not accept cookies for well known public domains
SoupCookieJar uses the new soup_tld_* utils to reject cookies whose domains
are registered public suffixes. This prevents sites from setting supercookies.
https://bugzilla.gnome.org/show_bug.cgi?id=673802
Sergio Villar Senin [Mon, 9 Apr 2012 22:06:35 +0000 (00:06 +0200)]
soup-tld: added soup_tld_* utils
The soup_tld_* set of functions along with the list of public suffixes
published in http://publicsuffix.org allows API clients to get the base
domain of a given hostname or to check if a given domain is a public suffix
(one under which internet users can register new names).
https://bugzilla.gnome.org/show_bug.cgi?id=673802
Tom Tryfonidis [Thu, 14 Jun 2012 00:48:40 +0000 (03:48 +0300)]
Updated Greek translation
Christophe Dumez [Tue, 12 Jun 2012 16:59:58 +0000 (19:59 +0300)]
Bump version to 2.39.2
Christophe Dumez [Tue, 12 Jun 2012 08:00:37 +0000 (11:00 +0300)]
Bug 677923 - Add soup_cookie_jar_set_cookie_with_first_party() alternative that takes a SoupCookie in argument
Currently, the only way to add a cookie while checking first_party is to use
soup_cookie_jar_set_cookie_with_first_party(). However, this function takes an
unparsed cookie in argument.
In the event the client has already parsed the cookie (e.g. to do some
pre-processing), it would be useful to have an alternative to
soup_cookie_jar_set_cookie_with_first_party() which takes a parsed SoupCookie
in argument. This would be more efficient.
Christophe Dumez [Tue, 12 Jun 2012 06:55:11 +0000 (09:55 +0300)]
Bug 677922 - Add soup_cookie_jar_get_cookies() alternative that returns a GSList of SoupCookies
Adds a soup_cookie_jar_get_cookie_list() function that returns the
cookies in the jar that would be sent with a request to a specific
uri, as a GSList of SoupCookies.
Dan Winship [Tue, 12 Jun 2012 11:14:35 +0000 (07:14 -0400)]
soup_message_headers_get_content_type: annotate @params
https://bugzilla.gnome.org/show_bug.cgi?id=677002
Ihar Hrachyshka [Fri, 8 Jun 2012 14:37:31 +0000 (17:37 +0300)]
Updated Belarusian translation.
Colin Walters [Thu, 7 Jun 2012 02:03:08 +0000 (22:03 -0400)]
tests/date: Fix compiler warning
Sergio Villar Senin [Mon, 4 Jun 2012 18:51:12 +0000 (20:51 +0200)]
soup-cache: use the status code from the stored response for expiration heuristics
We must check the status code of the stored response instead of the status
code of the SoupMessage passed to soup_cache_entry_set_freshness(). The reason
is because the SoupMessage might be the one used to revalidate the resource
instead of the original.
Sergio Villar Senin [Fri, 1 Jun 2012 17:38:51 +0000 (19:38 +0200)]
soup-cache: use the proper Content-Type when returning data from cache
This does not completely fixes the content-type handling by the cache as it
does not take into account the sniffed content type. Anyway trying to return
something from the original message was clearly wrong as it was not sent.
Better use the Content-Type from the 304 response.
Sergio Villar Senin [Fri, 1 Jun 2012 17:17:40 +0000 (19:17 +0200)]
soup-cache: correctly handle conditional requests not returning 304
If we do not get a 304 after a conditional request we have to refresh the
cache contents for that resource. We should use the original SoupMessage to
retrieve the new data from the resource (we were incorrectly using the
SoupMessage used for the conditional request).
The current strategy is clearly suboptimal as we ask again for the resource
instead of directly using the data from the response of the conditional
request. This will change once the cache is integrated into the streams
stack.
Piotr Drąg [Sun, 3 Jun 2012 13:35:54 +0000 (15:35 +0200)]
Updated Polish translation
Bruno Brouard [Sun, 3 Jun 2012 08:25:10 +0000 (10:25 +0200)]
New French translation
Kjartan Maraas [Wed, 30 May 2012 15:42:10 +0000 (17:42 +0200)]
Updated Norwegian bokmål translation
Dan Winship [Sun, 27 May 2012 16:34:05 +0000 (12:34 -0400)]
proxy-test: unskip accidentally skipped tests
Yaron Shahrabani [Sat, 26 May 2012 04:42:23 +0000 (07:42 +0300)]
Updated Hebrew translation.