| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
CamelRemoteStore do its stuff in service::connect, not ::post_connect.
svn path=/trunk/; revision=5116
|
|
|
|
|
|
| |
Prepare for the ability to cancel operations (much better exception handling). Clean up IMAP like nobody's business
svn path=/trunk/; revision=5103
|
|
|
|
| |
svn path=/trunk/; revision=4687
|
|
|
|
|
|
| |
* remove some non-error case debugging messages.
svn path=/trunk/; revision=3904
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-06-22 Jeffrey Stedfast <fejj@helixcode.com>
* providers/sendmail/camel-sendmail-provider.c:
* providers/vee/camel-vee-provider.c:
* providers/smtp/camel-smtp-provider.c:
* providers/mbox/camel-mbox-provider.c:
* providers/pop3/camel-pop3-provider.c:
* providers/imap/camel-imap-provider.c: Updated
* camel-session.c: Moved service_cache hash table into the
providers.
(service_cache_remove): Updated.
(camel_session_get_service): Updated.
* camel-url.c (camel_url_hash): Took out the hashing of
url->passwd. We don't want this anymore.
* providers/imap/camel-imap-folder.c (imap_init): Took out
references to 'namespace'
(camel_imap_folder_init): Same
* providers/imap/camel-imap-folder.h: No more namespace. We are
instead going to use url->path as the namespace.
svn path=/trunk/; revision=3700
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-06-20 Jeffrey Stedfast <fejj@helixcode.com>
* providers/imap/camel-imap-folder.c (imap_get_summary): Only
fetch the summary if the folder summary doesn't already exist.
When the summary *does* exist, start fetching from 1, not 0.
(imap_free_summary): Don't do anything here.
(imap_finalize): Free the summary here instead of in
imap_free_summary().
* camel-url.c (check_equal): No need to check s1 if s2 is NULL
(camel_url_equal): Don't check the passwd component of the url.
and in mail/component-factory.c (create_imap_storage): removal of
debug statements
mail/folder-browser.c (folder_browser_load_folder): improved imap
service parser
svn path=/trunk/; revision=3649
|
|
|
|
|
|
|
|
|
|
|
|
| |
* camel-session.c (camel_session_query_authenticator): Add another
argument, "mode", which can be CAMEL_AUTHENTICATOR_ASK or
CAMEL_AUTHENTICATOR_TELL, so callers can get the app to un-cache
bad info.
* providers/pop3/camel-pop3-store.c (pop3_connect): uncache the
password if it doesn't work.
svn path=/trunk/; revision=3496
|
|
|
|
|
|
|
|
| |
2000-06-02 Christopher James Lahey <clahey@helixcode.com>
* camel-session.c: Don't ref the services in the cache.
svn path=/trunk/; revision=3396
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-06-02 Christopher James Lahey <clahey@helixcode.com>
* camel-session.c: Ref and unref objects in the service cache
properly.
* camel-store.c: Ref the folder when returning it using
lookup_folder. Used the folder's full name for the key for the
folder cache since that's used to uncache it.
svn path=/trunk/; revision=3388
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-05-30 Not Zed <NotZed@HelixCode.com>
* providers/mbox/camel-mbox-folder.c (mbox_append_message): Init
filter_from to NULL, for exception case.
(mbox_get_message_by_uid): Cast off_t to long int for diagnostics.
* camel-url.c (camel_url_hash): Hash funciton for using camel
url's as hash keys.
(camel_url_equal): equal function for same.
* camel-session.c (camel_session_finalise): Free cached services.
(camel_session_init): Init service cache.
(service_cache_remove): destroy callback to remove a service from
the cache.
* camel-store.c (get_folder_internal): Remove the extra ref of the
folder. That seems the right behaviour ...?
(camel_store_get_type): Doh, actually call store init, so the
cache works.
(cache_folder): strdup the folder name! no wonder it never found
it again.
svn path=/trunk/; revision=3298
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* camel-object.c: New subclass of GtkObject which is now the base
of the Camel object hierarchy. Currently the only difference
between CamelObject and GtkObject is that CamelObjects don't start
out floating.
* *.h: Move a bunch of typedefs to camel-types.h. Standardize on
using <camel/foo.h> in header files rather than <foo.h>, "foo.h",
or "camel/foo.h". Remove some unneeded includes.
* camel-address.c, camel-data-wrapper.c, camel-folder-search.c,
camel-folder-summary.c, camel-folder.c, camel-mime-filter.c,
camel-mime-parser.c, camel-service.c, camel-session.c,
camel-stream.c: These are now subclasses of CamelObject.
* camel-data-wrapper.c (set_output_stream):
* camel-medium.c (set_content_object):
* camel-seekable-substream.c
(init_with_seekable_stream_and_bounds):
* providers/mbox/camel-mbox-folder.c (mbox_get_message_by_uid):
remove gtk_object_sink calls.
* camel-stream-buffer.c (init_vbuf):
* camel-stream-filter.c (camel_stream_filter_new_with_stream):
ref the original stream.
* camel-folder-summary.c (camel_folder_summary_finalise): unref
the filters when finalizing.
* camel-mime-part-utils.c
(simple_data_wrapper_construct_from_parser,
camel_mime_part_construct_content_from_parser):
* camel-mime-part.c (camel_mime_part_set_content): Unref objects
that are created only to be handed off to other objects. If
they're going to be needed later, they will have been additionally
ref'ed by the object that needs them.
* providers/pop3/camel-pop3-folder.c (get_message_by_number):
unref the message stream after creating the data from it.
* camel-stream.c, camel-stream-buffer.c, camel-stream-filter.c,
camel-stream-fs.c, camel-stream-mem.c: Remove camel_stream_close,
since its semantics are dubious (what happens when you close a
stream other people still have references on?).
* providers/nntp/camel-nntp-store.c:
* providers/smtp/camel-smtp-transport.c:
* providers/pop3/camel-pop3-store.c:
replace camel_stream_close calls with gtk_object_unref.
* providers/mbox/camel-mbox-folder.c:
* providers/nntp/camel-nntp-folder.c:
* providers/sendmail/camel-sendmail-transport.c:
replace camel_stream_close with camel_stream_flush +
gtk_object_unref
svn path=/trunk/; revision=2882
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* camel-session.c (camel_session_list_providers): New function to
replace camel_provider_scan. Returns a list of either (a) all
currently-loaded providers, or (b) all available providers.
* camel-url.[ch]: Add an "empty" flag to CamelURL (indicating that
it contains only a protocol).
* camel-service.c (camel_service_query_auth_types): Make this take
a CamelException (since it may have to try to connect to the
server, and it might not able to.)
* providers/pop3/camel-pop3-store.c: add KPOP (Kerberized POP)
support. This is mostly so I have two kinds of authmech to play
with instead of just one. (But it does actually work.)
* providers/smtp/camel-smtp-transport.c (query_auth_types): update
for prototype change, but disable the functionality, since it
doesn't really support any auth types yet.
(camel_smtp_transport_get_type): add an object init function to
set the service url_flags.
svn path=/trunk/; revision=2797
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* camel-provider.h: Tweak the definition of CamelProvider. Among
other things, a provider may now be both a store and a transport.
* camel-provider.c: Remove a lot of code we had no intention of
using. This now only contains two functions: camel_provider_init
to read the installed .urls files, and camel_provider_load to
load and register a new provider.
* camel-session.c: Remove more unused code and simplify some of
the remaining code. The list of available provider modules is now
stored in the session, and it handles calling camel_provider_load
to load them as needed. Provider registration is now done by
calling back from the module init routine, which allows a single
module to register providers for multiple URL types.
* providers/*: Update provider structures and init routines for
the new stuff. Add a .urls file to each provider specifying what
urls it handles, and install that with the library.
* providers/nntp/camel-nntp-provider.c: Add hints towards
supporting both news: and nntp: URLs, and using nntp as both a
store and a transport.
svn path=/trunk/; revision=2691
|
|
|
|
|
|
|
| |
* camel-session.c (get_store_for_protocol_with_url): Set the
exception if no provider is found.
svn path=/trunk/; revision=2477
|
|
|
|
|
|
|
|
|
|
|
| |
* g_url_new really wanted to take a CamelException. So, rename
Gurl to CamelURL, g_url_* to camel_url_* (with camel_url_new
taking an exception), and url-util.[ch] to camel-url.[ch]. Also
force url->port to be numeric and remove camel_service_getport. (I
was confused before: the URL RFC says the port must be numeric, so
we don't want to do getportbyname.)
svn path=/trunk/; revision=2300
|
|
|
|
| |
svn path=/trunk/; revision=2091
|
|
|
|
|
|
| |
The UI works now.
svn path=/trunk/; revision=2074
|
|
|
|
| |
svn path=/trunk/; revision=1922
|
|
|
|
| |
svn path=/trunk/; revision=1890
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* camel-session.h:
* camel-session.c: add CamelExceptions to several functions. Use
camel_session_new to initialize the session and URL fields of
created CamelStores as appropriate.
* camel-store.h:
* camel-store.c
* camel-service.h:
* camel-service.c: Move the session and url (and associated
functions) from CamelStore to CamelService. Add url_flags to
CamelService so subclasses can specify which URL components
are mandatory for them. Add camel_session_new for
camel_session_get_store* to use.
* providers/mbox/camel-mbox-folder.c:
* providers/mbox/camel-mbox-store.c:
* providers/mbox/camel-mbox-store.h: Update for above changes.
svn path=/trunk/; revision=1888
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* camel/camel-types.h: New header with the typedefs for all camel
classes. Now the class headers can just include this and the
header for the parent type. This makes it possible for
CamelService to include a CamelSession without creating an
#include loop.
* camel/*:
* composer/e-msg-composer-attachment-bar.h:
* mail/folder-browser.c:
* mail/message-list.c: frob #includes to match the new reality
svn path=/trunk/; revision=1850
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-02-17 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-formatter.c (handle_text_plain):
(handle_text_html): use camel_stream_reset instead
of seek. The formatter should be able to work
with all streams, not only seekable streams.
In the case where some provider implementation
would not be able to provide a reset method
to their stream, implementors would have
to find a workaround.
* camel/camel-session.c (camel_session_new): use
(void) instean of () in function decl.
* camel/camel-folder.c: ifdef async operation
related code.
* camel/camel-seekable-stream.c (_seek): added a warning.
(_reset): default implementation of reset for seekable
stream.
* camel/camel-mime-message.h: set_received_date declaration fix.
cosmetic changes.
* camel/providers/mbox/camel-mbox-provider.c (camel_provider_module_init):
use (void) instead of ().
* camel/camel-stream.c (camel_stream_reset):
new method for CamelStream.
svn path=/trunk/; revision=1835
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2000-01-21 bertrand <bertrand@helixcode.com>
* camel/camel-store.c: add exception handling everywhere in
the store related functions arguments.
* camel/providers/mbox/camel-mbox-folder.c: idem
* camel/providers/mbox/camel-mbox-folder.h: idem
* camel/providers/mbox/camel-mbox-store.h: idem
* camel/providers/mbox/Makefile.am (libcamelmbox_la_SOURCES):
added camel-mbox-provider.c to the mbox provider
sources.
svn path=/trunk/; revision=1605
|
|
|
|
| |
svn path=/trunk/; revision=1533
|
|
|
|
| |
svn path=/trunk/; revision=1489
|
|
|
|
| |
svn path=/trunk/; revision=1348
|
|
|
|
| |
svn path=/trunk/; revision=1147
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1999-08-13 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/hash-table-utils.c (g_strcase_equal):
(g_strcase_hash): those two func go here now.
* camel/hash_table_utils.c (hash_table_generic_free):
free a (gpointer, gpointer) hash table pair.
* camel/camel-mime-message.c (camel_mime_message_init): use
case insensitive hash table functions.
(_set_flag):
(camel_mime_message_set_flag):
(_get_flag):
(camel_mime_message_get_flag):
Use const for flag name, they are now
duplicated.
svn path=/trunk/; revision=1110
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1999-08-12 bertrand <Bertrand.Guiheneuf@aful.org>
* tests/ui-tests/store_listing.c (show_folder_messages):
remove stupid debug code.
(add_mail_store): use camel_session_get_store instead
of creating MH store directly.
(main): load MH provider.
* camel/camel-provider.c (camel_provider_register_as_module):
register new provider.
(camel_provider_get_for_protocol):
Now, implementation is correct.
* camel/camel-store.c (_finalize):
* camel/camel-store.h (struct _CamelStore):
further disabled url_name field use.
URL will be generated dynamically.
Ben dam don dieu, vla t'y pas que ya tout le bourier qui marche !
(Autoload store/protocol from URL works)
svn path=/trunk/; revision=1108
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1999-08-12 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-session.c (camel_session_get_store_for_protocol):
compilation and runtime fixes.
* camel/providers/MH/camel-mh-store.c (_init):
synced with CamelStore.
* camel/camel-store.c (_init):
in CamelStore::init, url_name is now const.
disabled url_name copy.
Last check in did not even compile...
svn path=/trunk/; revision=1107
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1999-08-12 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-session.c (camel_session_get_store):
new function: returns a store for an URL.
(camel_session_get_store_for_protocol):
new functionc: returns a store for a given
store protocol (as IMAP/POP/MH ...)
* camel/string-utils.c (g_strcase_equal):
(g_strcase_hash): case insensitive hash table
funcs.
* camel/camel-session.c (camel_session_init): hash table
keys are case insensitive.
* camel/camel-provider.c (camel_provider_get_for_protocol):
new function, returns the last registered
provider for a protocol.
svn path=/trunk/; revision=1106
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1999-08-12 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/providers/MH/camel-mh-provider.c:
new file. MH provider registration stuff.
* camel/camel-provider.c (camel_provider_register_as_module):
load a provider from a shared object (plugin).
(camel_provider_register): register a provider
"by hand". Used for statically defined providers.
* tests/test7.c: new test.
tests providers loading framework.
Providers modules loading Works !!! :))))
svn path=/trunk/; revision=1105
|
|
|
|
| |
svn path=/trunk/; revision=1052
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1999-07-13 Miguel de Icaza <miguel@gnu.org>
* camel/gmime-base64.c (gmime_encode_base64): Implemented base64
encoder based on CamelStreams. Should the encoder/decoder be a
Stream itself?
* camel/gmime-utils.c: include config.h here.
* camel/url-util.c: ditto.
* camel/gstring-util.c: ditto.
* camel/gmime-content-field.c: ditto.
* camel/camel-stream.c: ditto.
* camel/camel-stream-fs.c: ditto.
* camel/camel-store.c: ditto.
* camel/camel-simple-data-wrapper.c: ditto.
* camel/camel-session.c: ditto.
* camel/camel-service.c: ditto.
* camel/camel-mime-part.c: ditto.
* camel/camel-mime-message.c: ditto.
* camel/camel-log.c: ditto.
* camel/camel-data-wrapper.c: ditto
* camel/camel-folder.c: ditto.
* camel/camel-stream.c (camel_stream_write): Moved api
documentation to the places that they document.
(camel_stream_class_init): Virtual classes do not need to have a
default implementation. So null them all.
(camel_stream_write): Return value from write.
(camel_stream_available): implement.
(camel_stream_write_strings): documented.
* devel-docs/query/virtual-folder-in-depth.sgml: Small
reformatting
1999-06-28 bertrand <Bertrand.Guiheneuf@inria.fr>
* tests/test2.c (main): now use
CamelDataWrapper::contruct_form_stream to test
svn path=/trunk/; revision=1024
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1999-05-01 bertrand <Bertrand.Guiheneuf@inria.fr>
* camel/camel-folder.c
(__camel_folder_get_mode):
(camel_folder_get_mode):
(camel_folder_get_parent_store):
(__camel_folder_get_parent_store):
(camel_folder_get_parent_folder):
(__camel_folder_get_parent_folder):
new methods
* camel/camel-service.c: put __ prefix before
private virtual funcs.
svn path=/trunk/; revision=886
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1999-04-25 bertrand <Bertrand.Guiheneuf@inria.fr>
* camel/camel-session.c (camel_session_get_store_from_provider):
initialize folder object.
* camel/camel-store.c (init): new method.
called by session object at instantiation time.
* camel/camel-store.h (struct _CamelStore):
new fields : session and url_name
svn path=/trunk/; revision=879
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1999-04-25 bertrand <Bertrand.Guiheneuf@inria.fr>
* camel/camel-session.c (camel_session_set_provider):
new method to set the default provider for a protocol.
(camel_session_get_store_from_provider):
new method to instantiate a folder from a provider.
* camel/camel-provider.h: s/GString/gchar/g
+ typo fix.
svn path=/trunk/; revision=878
|
|
svn path=/trunk/; revision=877
|