Tristan Van Berkom [Tue, 23 Jul 2013 05:25:39 +0000 (14:25 +0900)]
Adding cursor example program
The example program is a contact browser showing off
some of the cursor features such as localized alphabetic indexes.
Tristan Van Berkom [Tue, 2 Jul 2013 08:51:10 +0000 (17:51 +0900)]
Added tests for EBookClientCursor
o test-client-cursor-create.c
This test checks expected failure error codes and expected successfull
cursor creation in Sync / Async and Normal / DRA modes.
o test-client-cursor-operations.c
A more complex set of tests which run in all various modes
and configurations (i.e. Sync / Async / DRA / Threaded)
Tristan Van Berkom [Thu, 18 Jul 2013 21:39:46 +0000 (06:39 +0900)]
Added tests for the low level cursor API
o test-sqlite-create-cursor
The new test case verifies that cursor creation is well protected
(cursor creation is denied for some queries and ordering requests).
o test-sqlite-cursor-move-by
This test case asserts that e_book_backend_sqlite_cursor_move_by()
works as expected. Consequently, a hand full of additional test
vcards were added for this.
o test-sqlite-cursor-set-target.c
This test case tests e_book_backend_sqlitedb_cursor_set_target().
The special case of setting a partial state is tested so that when
a cursor is setup to sort by "family_name, given_name" and the target
is set to "J", then we recieve results inclusive of the contact with
the family name "J".
o test-sqlite-cursor-calculate.c
This test verifies that e_book_backend_sqlitedb_cursor_calculate() report
the right position and total values when the cursor is moved, after the
target is set, after the addressbook is modified, for filtered and unfiltered
result sets.
o test-sqlite-cursor-set-sexp.c
This test verifies that invalid queries are rejected, and that a cursor
position is changed by the new sexp with the correct new filtered values
after applying a filter (sexp) to the cursor.
o Tests to ensure that localized data is properly migrated:
- test-sqlite-cursor-posix-initial
- test-sqlite-cursor-en-US-migrated
- test-sqlite-cursor-fr-CA-migrated
- test-sqlite-cursor-de-DE-migrated
- test-sqlite-cursor-posix-migrated
o A test case testing basic ECollator features.
This patch also changes the test case vcard data to
specify a contact UID in each vcard's .vcf file, this
allows us more flexability with the above added tests.
Tristan Van Berkom [Thu, 23 May 2013 10:56:04 +0000 (19:56 +0900)]
EBookClient: Implemented e_book_client_get_cursor() and locale property
Propagate the 'locale' property change notifications when the dbus
proxy notifies a locale property change, also load the initial value
of the dbus proxy's locale property for the initial value.
Tristan Van Berkom [Tue, 2 Jul 2013 08:47:34 +0000 (17:47 +0900)]
Added EBookClientCursor
The user facing cursor API, deals with calling cursor APIs in DRA mode
and normal modes over D-Bus, handles threading situations, and notifies
of cursor state changes in the caller's main context.
Tristan Van Berkom [Thu, 23 May 2013 07:26:26 +0000 (16:26 +0900)]
EBookBackendFile: Implement cursors.
o Implemented EBookBackend.create_cursor() and EBookBackend.delete_cursor()
methods using the EDataBookCursorSqlite implementation
o Ensure that all addressbook modifications and revision changes are
atomic operations, the revision changes happen in the same transactions
as any other addressbook modification (allowing revision checks to be
done safely in direct read access mode).
o Implement EBookBackend->set_locale() & ->get_locale()
Tristan Van Berkom [Thu, 23 May 2013 06:24:09 +0000 (15:24 +0900)]
EDataBook: Cursor related changes
Watch the system bus for locale notifications
When org.freedesktop.locale1 is available, listen to changes in
the LC_COLLATE locale and configure backends with locale changes
using e_book_backend_set_locale(), notify property changes via
the locale property on the addressbook D-Bus API.
Also, load the backend's initially set locale as the locale property
value until the org.freedesktop.locale1 D-Bus interface notifies
us of a locale change on the system bus.
Also handle D-Bus calls for creating cursors and export new
cursors on the bus.
Tristan Van Berkom [Sat, 19 Oct 2013 18:03:54 +0000 (20:03 +0200)]
Added EDataBookCursor & EDataBookCursorSqlite
EDataBookCursor is an abstract class with the mid-level cursor APIs, it
takes care of responding to D-Bus APIs and provides an API which can
be used in Direct Read Access mode but does not implement the actual
cursor state and navigation directly.
EDataBookCursorSqlite is a cursor implementation which uses
a EBookBackendSqliteDB cursor to implement the EDataBookCursor
methods.
This patch also adds the E_CLIENT_ERROR_END_OF_LIST error, intended
to be a generic boundary error when a client api reaches the end
of some list of data (this is used by the cursor API of course
to report an error when trying to navigate the cursor outside of the
list boundaries).
Tristan Van Berkom [Fri, 17 May 2013 11:03:45 +0000 (20:03 +0900)]
EBookBackend: Adding cursor related APIs
Added new ->set_locale() API and ->get_locale() API
Use these to dynamically set the locale of a running addressbook, and also
to fetch the currently configured locale of an addressbook at startup time
Also added new methods for creating and deleting cursors.
Tristan Van Berkom [Mon, 22 Apr 2013 11:42:14 +0000 (20:42 +0900)]
EBookBackendSqliteDB: Adding cursor related APIs
Added the following APIs:
o e_book_backend_sqlitedb_cursor_new()
Creates a cursor for a given query expression and sort order
o e_book_backend_sqlitedb_cursor_free()
Frees a cursor and it's resources
o e_book_backend_sqlitedb_cursor_move_by()
Moves the cursor and fetches results
Moving the cursor now has 3 possible "origins":
o EBSDB_CURSOR_ORIGIN_CURRENT:
Fetch results and move from the current
cursor position
o EBSDB_CURSOR_ORIGIN_PREVIOUS:
Fetch results and move from the previous
cursor position, practical for refreshing
a result set after the addressbook changes
o EBSDB_CURSOR_ORIGIN_RESET:
Fetch results from the beginning (or end,
if moving backwards through results).
To achieve the EBSDB_CURSOR_ORIGIN_PREVIOUS origin, the cursor
holds on to two cursor states at all times (the current cursor
state and previous cursor state).
o e_book_backend_sqlitedb_cursor_set_target_alphabetic_index()
To set the cursor target by alphabetic index, also added
e_book_backend_sqlitedb_ref_collator() to get a hold of the active
collator which can be used to list the active alphabet attributes.
o e_book_backend_sqlite_cursor_calculate()
Calculates the position / total values of a cursor.
o e_book_backend_sqlitedb_cursor_set_sexp()
Sets the search expression for a given cursor
o e_book_backend_sqlitedb_get/set_locale()
Locale setting is now only ever guessed when creating a new addressbook
before e_book_backend_sqlitedb_set_locale() is called, setting the locale
will save the localization setting and it will be reused on subsequent
accesses. If and when a locale setting is changed, the contact sort
keys are regenerated with a new ECollator for the new locale.
o e_book_backend_sqlitedb_cursor_compare()
An api to compare the cursor with an EContact, this allows
EDataBookCursor to track total / position when the addressbook is
modified without constantly recalculating it with SQLite queries.
Tristan Van Berkom [Mon, 20 May 2013 07:08:35 +0000 (16:08 +0900)]
Adding D-Bus API for cursor related APIs
o org.freedesktop.locale1
We generate a GDBus object to deal with the "org.freedesktop.locale1" interface
on the system bus, specifically we are interested in system wide locale change
notifications.
o org.gnome.evolution.AddressBook
Added the "Locale" property and added a method
to create a cursor.
o org.gnome.evolution.dataserver.AddressBookCursor
The new D-Bus interface to interact with cursors.
Tristan Van Berkom [Tue, 30 Apr 2013 07:09:35 +0000 (16:09 +0900)]
Added utility ECollator to libedataserver.
The ECollator API wraps up the required ICU APIs into something more
convenient for usage in EDS. The provided features allow for rich
locale sensitive sorting as well as knowledge of the user's native
alphabet.
Some auxilary objects are needed to access features in ICU which are
available only in C++:
EAlphabetIndex
A private accessory used internally by ECollator to implement AlphabeticIndex
features. This is in a separate file since we need to use C++ APIs to use
the AlphabeticIndex, so we compile it into a separate archive to be statically
linked in with libedataserver.la.
ETransliterator
Added this glue to call icu::Transliterator C++ APIs on behalf of ECollator.
Tristan Van Berkom [Fri, 26 Apr 2013 12:29:31 +0000 (21:29 +0900)]
Added detection of ICU libs to configure.ac
Mathias Hasselmann [Tue, 5 Mar 2013 10:03:24 +0000 (11:03 +0100)]
test-server-utils: Add e_test_server_utils_run_full()
Basically this is to tell e_test_server_utils_run() to not
wipe the working directory before start.
Conflicts:
tests/test-server-utils/e-test-server-utils.h
Tristan Van Berkom [Thu, 3 Oct 2013 22:05:36 +0000 (00:05 +0200)]
Tests: Added 3 new contacts and a few more query tests.
The new tests check some specific phone number matching cases
with E_BOOK_QUERY_EQUALS_NATIONAL_NUMBER queries.
Tristan Van Berkom [Sat, 12 Oct 2013 18:54:55 +0000 (20:54 +0200)]
EBookBackendSqliteDB: introspect summary structure before adding columns.
Some additional auxilary columns need to be added in upgrades, these
columns which need to be added depend on which contact fields are
in the summary. This patch ensures that the summary is properly
introspected before adding columns, so that the right columns are added.
Tristan Van Berkom [Sat, 12 Oct 2013 18:51:31 +0000 (20:51 +0200)]
EBookBackendSqliteDB: Fix introspect_summary()
Fixed introspect_summary() to resolve whether the summary
configuration has any attribute lists.
Milan Crha [Fri, 13 Sep 2013 09:40:03 +0000 (11:40 +0200)]
Include locale.h where needed
Tristan Van Berkom [Wed, 23 Oct 2013 18:20:07 +0000 (20:20 +0200)]
Added README file for addressbook migration test
This file details the addressbook migration test
which has a few components, and lists some details
on how to maintain the test.
Matthew Barnes [Sun, 20 Oct 2013 14:20:15 +0000 (10:20 -0400)]
Post-release version bump.
Matthew Barnes [Sun, 20 Oct 2013 14:03:56 +0000 (10:03 -0400)]
NEWS update for 3.11.1 release.
Matthew Barnes [Sun, 20 Oct 2013 13:17:42 +0000 (09:17 -0400)]
Miscellaneous cleanups.
Tristan Van Berkom [Thu, 3 Oct 2013 22:04:14 +0000 (00:04 +0200)]
EBookBackendSqliteDB: Fixed an inconsistency in phone number matches.
The phone number national number matching algoritm was hard coding
the country code length to 2, causing some random results.
Enrico Nicoletto [Sat, 19 Oct 2013 16:31:56 +0000 (13:31 -0300)]
Updated Brazilian Portuguese translation
Andika Triwidada [Tue, 15 Oct 2013 04:51:33 +0000 (11:51 +0700)]
Updated Indonesian translation
Milan Crha [Mon, 14 Oct 2013 19:36:28 +0000 (21:36 +0200)]
camel_stream_eos() returns FALSE even when at the end of stream
That breaks stream copy routine like camel_stream_write_to_stream(),
which relies on the camel_stream_eos().
Tristan Van Berkom [Wed, 24 Apr 2013 08:48:42 +0000 (17:48 +0900)]
ECalClient tests: Use async apis to open the client for every async test.
Tristan Van Berkom [Wed, 24 Apr 2013 08:18:06 +0000 (17:18 +0900)]
EBookClient tests: Use async apis to open the client for every async test.
Tristan Van Berkom [Wed, 24 Apr 2013 07:56:02 +0000 (16:56 +0900)]
test-utils: Added argumement to the fixture closure data to open async
If a closure specifies async then the EBookClient or ECalClient will be
opened using async APIs instead of sync APIs.
Tristan Van Berkom [Wed, 24 Apr 2013 07:16:57 +0000 (16:16 +0900)]
EBookClient: (bug 701260) Added async apis to connect to a DRA book.
Added e_book_client_connect_direct() and e_book_client_connect_direct_finish()
Carles Ferrando [Sun, 13 Oct 2013 20:22:12 +0000 (22:22 +0200)]
[l10n] Updated Catalan (Valencian) translation
Gil Forcada [Sun, 13 Oct 2013 20:21:41 +0000 (22:21 +0200)]
[l10n] Update Catalan translation
Milan Crha [Thu, 10 Oct 2013 17:08:20 +0000 (19:08 +0200)]
Bug #695232 - Finish EVCard quoted-printable handling
Matthew Barnes [Tue, 8 Oct 2013 21:35:09 +0000 (17:35 -0400)]
ESourceRegistry: Reorder the "builtin" vs "default" functions.
The "builtin" functions aren't really part of the "DefaultSources"
GSettings front-end API. Instead they represent a set of ESources
which are always available. Keep them grouped together.
Matthew Barnes [Tue, 8 Oct 2013 02:10:22 +0000 (22:10 -0400)]
Bug 709561 - Pick up Windows Live mail from GOA
This adds an "outlook-backend" module, similar to the "google-backend"
and "yahoo-backend" modules.
Outlook.com recently added IMAP support, and GNOME Online Accounts now
exports a "Mail" interface on its "Windows Live" accounts. This module
configures an E-D-S IMAP/SMTP account bound to the GOA account.
Milan Crha [Mon, 7 Oct 2013 10:24:09 +0000 (12:24 +0200)]
Bug #709550 - CamelService: Do not call disconnect_sync from its finalize
Matthew Barnes [Sat, 5 Oct 2013 14:38:07 +0000 (10:38 -0400)]
Bug 708627 - Use PLAIN instead of LOGIN for GOA SMTP accounts
Tristan Van Berkom [Fri, 4 Oct 2013 19:07:31 +0000 (21:07 +0200)]
Revert change to distcheck configure flags.
This change was accidentally pushed in with commit
ca64872e
(Add regression test for contacts database migrations).
Matthew Barnes [Fri, 4 Oct 2013 17:13:56 +0000 (13:13 -0400)]
CamelIMAPXSummary cleanups.
Matthew Barnes [Fri, 4 Oct 2013 15:16:05 +0000 (11:16 -0400)]
imapx_parse_uids: Return a GArray instead of a GPtrArray.
GArray is better for packing integer values. The UIDs are 32 bits,
so this is actually a little more memory efficient on 64-bit systems.
Matthew Barnes [Wed, 2 Oct 2013 23:13:50 +0000 (19:13 -0400)]
CamelStream: Implement GSeekable.
The base GIOStream may be seekable, so implement the GSeekable interface
and simply forward the request to the base GIOStream.
I think pretty much all the CamelStream subclasses are also seekable, so
they should override the base class implementation.
Tristan Van Berkom [Wed, 2 Oct 2013 21:09:03 +0000 (23:09 +0200)]
Fixed contacts DB migration test when handling a system without db_load.
Tristan Van Berkom [Wed, 2 Oct 2013 20:44:48 +0000 (22:44 +0200)]
Addressbook Migration test: Added EDS 3.10 test sandbox.
Tristan Van Berkom [Fri, 27 Sep 2013 23:16:57 +0000 (01:16 +0200)]
EBookBackendSqliteDB: Fixed upgrade_contacts() for cases with missing vcards.
This patch avoids critical warnings to be fired when opening an old summary
mode SQLite whilst upgrading/migrating an addressbook from EDS <= 3.6.
Tristan Van Berkom [Wed, 25 Sep 2013 17:54:07 +0000 (19:54 +0200)]
Bug 709198 - Add regression test for contacts database migrations
The migration tests come with a few components:
o tests/book-migration/vcards/*.vcf:
The vcards which the test case expects to find in the migrated
databases.
o tests/book-migration/db/[various versions]/[File backend files]:
Various sandboxes created from the vcards, each one created
with a different stable version of EDS
o tests/book-migration/test-migration.c:
The actual test, this automatically loops over the available
test directories and runs the migration suite for each version
o tests/book-migration/setup-migration-test.c:
A simple program used to inject the test contacts into EDS,
this program can be used to generate the test sandbox from
EDS version 3.0 onward.
o The makefile also contains a 'setup-migration' target which
can be used to generate a new repository automatically in
the tests/book-migration/db/ directory with the current version,
this can only be used to generate the sandbox from 3.10 and
above.
Matthew Barnes [Wed, 2 Oct 2013 17:00:38 +0000 (13:00 -0400)]
CamelMultipartSigned cleanups.
Move the public struct members into the private section.
New functions:
camel_multipart_signed_set_content_stream()
camel_multipart_signed_set_signature()
Matthew Barnes [Wed, 2 Oct 2013 16:11:59 +0000 (12:11 -0400)]
CamelMultipartEncrypted cleanups.
Turns out this class is trivial; just sets the internal MIME type to
"multipart/encrypted", the rest of it was unused cruft. Debated if
this class is even worth keeping, but I'll leave it for now.
Matthew Barnes [Wed, 2 Oct 2013 14:11:50 +0000 (10:11 -0400)]
CamelMultipart cleanups.
Move the public struct members into the private section.
Use a GPtrArray instead of a GList to track the individual parts.
New functions:
camel_multipart_get_preface()
camel_multipart_get_postface()
Matthew Barnes [Wed, 2 Oct 2013 14:06:12 +0000 (10:06 -0400)]
Remove unused camel_multipart_remove_part_at().
Matthew Barnes [Wed, 2 Oct 2013 14:05:10 +0000 (10:05 -0400)]
Remove unused camel_multipart_remove_part().
Matthew Barnes [Wed, 2 Oct 2013 14:03:44 +0000 (10:03 -0400)]
Remove unused camel_multipart_add_part_at().
Matthew Barnes [Wed, 2 Oct 2013 04:09:21 +0000 (00:09 -0400)]
Camel: Remove tests/message/test3.c.
Mostly testing unused CamelMultipart API.
Remove the test so I can remove the unused API.
Matthew Barnes [Wed, 2 Oct 2013 03:41:15 +0000 (23:41 -0400)]
Remove unused camel_stream_buffer_new_with_vbuf().
Matthew Barnes [Wed, 2 Oct 2013 03:20:46 +0000 (23:20 -0400)]
Remove unused CamelMimeFilterSave.
Matthew Barnes [Wed, 2 Oct 2013 03:11:30 +0000 (23:11 -0400)]
Remove unused camel_cipher_context_export_keys_sync().
Also removes the unused asynchronous functions:
camel_cipher_context_export_keys()
camel_cipher_context_export_keys_finish()
Matthew Barnes [Wed, 2 Oct 2013 03:05:54 +0000 (23:05 -0400)]
Remove unused camel_cipher_context_import_keys_sync().
Also removes the unused asynchronous functions:
camel_cipher_context_import_keys()
camel_cipher_context_import_keys_finish()
Matthew Barnes [Wed, 2 Oct 2013 02:39:01 +0000 (22:39 -0400)]
Remove unused camel_index_names().
Matthew Barnes [Wed, 2 Oct 2013 02:35:58 +0000 (22:35 -0400)]
Remove unused camel_index_new().
Matthew Barnes [Wed, 2 Oct 2013 02:34:40 +0000 (22:34 -0400)]
CamelIndexNameClass: Remove unused sync() method.
Matthew Barnes [Wed, 2 Oct 2013 02:34:01 +0000 (22:34 -0400)]
Remove unused camel_index_name_new().
Matthew Barnes [Wed, 2 Oct 2013 02:32:26 +0000 (22:32 -0400)]
Remove unused camel_index_cursor_reset().
Matthew Barnes [Wed, 2 Oct 2013 02:28:59 +0000 (22:28 -0400)]
Remove unused camel_index_cursor_new().
Matthew Barnes [Tue, 1 Oct 2013 21:59:12 +0000 (17:59 -0400)]
CamelGpgContext: Use g_file_new_tmp() in swrite().
g_file_new_tmp() creates a GFileIOStream, which we then wrap in a
CamelStream for use with CamelDataWrapper.
Matthew Barnes [Tue, 1 Oct 2013 20:25:14 +0000 (16:25 -0400)]
CamelDataCache: Use GFileIOStream.
Return pure CamelStreams with an underlying GFileIOStream,
instead of CamelStreamFs.
Matthew Barnes [Tue, 1 Oct 2013 16:08:14 +0000 (12:08 -0400)]
Camel: Port mime-filter tests to use GIO streams.
Matthew Barnes [Tue, 1 Oct 2013 14:33:09 +0000 (10:33 -0400)]
Add CamelFilterOutputStream.
CamelFilterOutputStream is similar to GConverterOutputStream, except it
operates on a CamelMimeFilter instead of a GConverter.
This class is meant to be a temporary solution until all of Camel's MIME
filters are ported to the GConverter interface.
Matthew Barnes [Tue, 1 Oct 2013 14:19:07 +0000 (10:19 -0400)]
Add CamelFilterInputStream.
CamelFilterInputStream is similar to GConverterInputStream, except it
operates on a CamelMimeFilter instead of a GConverter.
This class is meant to be a temporary solution until all of Camel's MIME
filters are ported to the GConverter interface.
Matthew Barnes [Tue, 1 Oct 2013 15:20:35 +0000 (11:20 -0400)]
Remove unused camel_session_build_password_prompt().
Matthew Barnes [Tue, 1 Oct 2013 15:06:06 +0000 (11:06 -0400)]
Remove unused camel_folder_summary_guess_content_info().
Matthew Barnes [Tue, 1 Oct 2013 15:18:33 +0000 (11:18 -0400)]
Add indices for new symbols in 3.12 to API documentation.
Matthew Barnes [Tue, 1 Oct 2013 15:05:02 +0000 (11:05 -0400)]
Update Camel API documentation.
Matthew Barnes [Mon, 30 Sep 2013 17:22:58 +0000 (13:22 -0400)]
Bug 708730 - CalDAV: Improve handling of invalid access tokens
If e_source_get_oauth2_access_token_sync() fails, rather than dumping
the error message to stderr where users won't see it, stash the GError
within the CalDAV backend to be retrieved when the backend falls back
to caldav_authenticate().
This both returns a descriptive error message to the client application
and prevents an inappropriate password prompt while authenticating with
an access token instead of a password.
Milan Crha [Mon, 30 Sep 2013 12:46:52 +0000 (14:46 +0200)]
Fix some "may be used uninitialized" compiler warnings
Milan Crha [Mon, 30 Sep 2013 11:26:52 +0000 (13:26 +0200)]
Bug #704869 - Make CamelSaslGssapi usable out of Camel
Matthew Barnes [Fri, 27 Sep 2013 16:45:06 +0000 (12:45 -0400)]
Add camel_session_ref_proxy_resolver().
Replaces camel_session_get_socks_proxy().
Returns a GProxyResolver for the given CamelService.
camel_network_connect_sync() now calls this and hands the returned
GProxyResolver off to its GSocketClient just prior to connecting.
Matthew Barnes [Fri, 27 Sep 2013 17:19:46 +0000 (13:19 -0400)]
Remove other GLib 2.35.x checks.
Matthew Barnes [Fri, 27 Sep 2013 16:01:55 +0000 (12:01 -0400)]
Remove all g_type_init() calls.
g_type_init() is deprecated in GLib 2.36.
Matthew Barnes [Fri, 27 Sep 2013 15:51:53 +0000 (11:51 -0400)]
Bump minimum GLib requirement to 2.36.
Needed for g_socket_client_set_proxy_resolver().
Matthew Barnes [Fri, 27 Sep 2013 11:56:52 +0000 (07:56 -0400)]
CamelSession: Simplify trust_prompt() signature.
Let the CamelSession subclass encode the certificate data if it needs to.
That's an Evolution-specific implementation detail Camel doesn't need to
know about. The method signature is now:
CamelCertTrust (*trust_prompt) (CamelSession *session,
CamelService *service,
GTlsCertificate *certificate,
GTlsCertificateFlags errors);
Matthew Barnes [Fri, 27 Sep 2013 01:05:21 +0000 (21:05 -0400)]
Remove unused camel_getnameinfo().
Matthew Barnes [Fri, 27 Sep 2013 00:18:56 +0000 (20:18 -0400)]
Remove unused CamelTcpStream.
Matthew Barnes [Thu, 26 Sep 2013 23:56:49 +0000 (19:56 -0400)]
Remove unused CamelTcpStreamRaw.
Matthew Barnes [Thu, 26 Sep 2013 23:48:54 +0000 (19:48 -0400)]
Remove unused CamelTcpStreamSSL.
Matthew Barnes [Thu, 26 Sep 2013 23:37:38 +0000 (19:37 -0400)]
CamelNetworkService: Transition to GTcpConnection.
camel_network_service_connect_sync() now returns a CamelStream with a
base GTcpConnection instead of a CamelTcpStream. CamelNetworkService
handles peer certificate acceptance during the TLS handshake.
This also adds camel_network_service_starttls() to be called after
issuing a STARTTLS command to a server. This function replaces the
GTcpConnection with a GTlsConnection in the given CamelStream.
Proxy support is temporarily disabled until I can rework a few things.
New functions:
camel_network_service_starttls()
Matthew Barnes [Thu, 26 Sep 2013 20:30:34 +0000 (16:30 -0400)]
Add camel_stream_ref_base_stream().
Replaces camel_stream_get_base_stream().
Now that the base stream is replacable, this needs to be thread-safe.
Matthew Barnes [Thu, 26 Sep 2013 19:35:36 +0000 (15:35 -0400)]
Add camel_stream_set_base_stream().
Replaces the GIOStream passed to camel_stream_new(). The new base
stream should wrap the original base stream, such as when adding
Transport Layer Security after issuing a STARTTLS command.
Matthew Barnes [Wed, 25 Sep 2013 21:13:44 +0000 (17:13 -0400)]
CamelCertDB: Remove unused enum.
Matthew Barnes [Wed, 25 Sep 2013 21:09:28 +0000 (17:09 -0400)]
CamelCert: Change 'rawcert' from GByteArray to GBytes.
More efficient, and nicer when working with GIO streams.
Matthew Barnes [Wed, 25 Sep 2013 13:36:14 +0000 (09:36 -0400)]
CamelStream: Add a "base-stream" property.
CamelStream is no longer an abstract class. It can now act as a thin
GIOStream wrapper by way of camel_stream_new().
This is a step towards elminating CamelStream itself. The plan is to
start removing CamelStream subclasses and using GIO streams directly,
until only CamelStream remains. Then replace CamelStream arguments
with GIOStream/GInputStream/GOutputStream in higher level APIs like
CamelDataWrapper.
Matthew Barnes [Wed, 25 Sep 2013 13:49:04 +0000 (09:49 -0400)]
Remove unused CamelStreamVFSOpenMethod enum.
Matthew Barnes [Wed, 25 Sep 2013 12:28:15 +0000 (08:28 -0400)]
Remove unused CamelStreamVFS.
Piotr Drąg [Tue, 24 Sep 2013 23:36:43 +0000 (01:36 +0200)]
Updated POTFILES.in
Matthew Barnes [Sun, 22 Sep 2013 21:49:05 +0000 (17:49 -0400)]
trust-prompt: Show a GcrCertificateWidget in the dialog.
Replaces the ugly CertificateViewer widget.
Yuri Myasoedov [Tue, 24 Sep 2013 09:13:15 +0000 (13:13 +0400)]
Updated Russian translation
victory [Mon, 23 Sep 2013 20:58:01 +0000 (05:58 +0900)]
l10n: Update Japanese translation
Matthew Barnes [Mon, 23 Sep 2013 15:27:42 +0000 (11:27 -0400)]
Remove camel_store_free_folder_info().
Use camel_folder_info_free() instead.
Matthew Barnes [Mon, 23 Sep 2013 15:10:16 +0000 (11:10 -0400)]
Remove camel_store_free_folder_info_full().
Use camel_folder_info_free() instead.
CamelStore's free_folder_info() method now defaults to an equivalent
implementation, but even that is about to be removed since all known
subclasses set the method to camel_store_free_folder_info_full().
Matthew Barnes [Mon, 23 Sep 2013 14:55:27 +0000 (10:55 -0400)]
Remove unused camel_store_free_folder_info_nop().
Matthew Barnes [Mon, 23 Sep 2013 12:36:59 +0000 (08:36 -0400)]
Remove camel_folder_free_message_info().
Use camel_message_info_unref() instead.
Matthew Barnes [Mon, 23 Sep 2013 12:31:19 +0000 (08:31 -0400)]
Remove camel_folder_ref_message_info().
Use camel_message_info_ref() instead.