| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
2001-07-19 Peter Williams <peterw@ximian.com>
* Revert 7/11/2001 patch for IMAP INBOX filtering at NotZed's
request.
svn path=/trunk/; revision=11226
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-17 Peter Williams <peterw@ximian.com>
Clean up some exception misusage.
* providers/imap/camel-imap-command.c (camel_imap_command): Use
our own internal exception for sending the string and transfer it
to @ex if anything goes wrong.
(imap_read_response): Use our own internal exception for reading
the untagged responses and blah blah blah.
* camel-session.c (get_service): Use our own internal exception
when constructing the service and transfer it to @ex if anything
goes wrong.
* camel-remote-store.c (remote_recv_line): Instead of having
gboolean exception, use our own internal exception and copy
it to @ex if anything goes wrong.
* camel-store.c (store_sync): Create an internal exception
because sync_folder() checks it for validity. Transfer it to
@ex when done.
* camel-exception.c (camel_exception_get_description): If @ex is
NULL, complain - passing NULL exceptions to Camel is okay, but
there should be no circumstances under which they're then
examined.
(camel_exception_get_id): Same here,
(camel_exception_xfer): NULL-protect and warn if transferring from
a NULL exception.
svn path=/trunk/; revision=11177
|
|
|
|
|
|
|
|
|
|
| |
2001-07-17 Jeffrey Stedfast <fejj@ximian.com>
* camel-store.c (init_trash): Use CAMEL_VTRASH_NAME.
* camel-vtrash-folder.h: #define CAMEL_VTRASH_NAME
svn path=/trunk/; revision=11158
|
|
|
|
|
|
|
|
|
|
|
| |
* providers/imap/camel-imap-command.c (camel_imap_response_free):
Given:
* 4 EXISTS
* 1 EXPUNGE
We have to pass 3, not 4 to camel_imap_folder_changed for the
exists count. Fixes ximian bug #2112 (finally!).
svn path=/trunk/; revision=11133
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-14 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-folder.c (camel_imap_folder_changed):
If the message info for an expunged message is NULL, then just
break out - maybe a message was expunged that we were never
notified even existed?
svn path=/trunk/; revision=11106
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-13 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-utils.c (rfc2047_decode_word): Added a hack to
convert charsets in the format iso8859-1 to iso-8859-1 because it
seems to be more iconv friendly. It has been reported that on some
systems, iconv doesn't know about iso8859-1 while it *does* know
about iso-8859-1. See bug #4530.
svn path=/trunk/; revision=11094
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-13 Peter Williams <peterw@ximian.com>
* Makefile.am (install-exec-local): Let people install as non-root,
but give them a bigass warning so they're not allowed to complain when
it doesn't work right.
* camel-remote-store.c (sync_remote_folder): New function:
hash table callback.
(remote_disconnect): If cleanly disconnecting, sync our folders. Fixes
deadlocks on exit (folders syncing after store disconnects) and also makes
sense.
svn path=/trunk/; revision=11090
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-13 Jeffrey Stedfast <fejj@ximian.com>
* camel-uid-cache.c (camel_uid_cache_new): We now use a structure
as the bucket data rather than just a cache level so set the save
state to TRUE.
(maybe_write_uid): We only save the uid if the cache levels are
the same *and* if the save state is TRUE.
(free_uid): Free the state value.
(camel_uid_cache_get_new_uids): New uids that get added to the
cache start with a save state of FALSE.
(camel_uid_cache_save_uid): Set the save state of the uid to
TRUE. What should we do if the uid isn't already in the cache?
Currently I make it add the uid, but maybe it shouldn't?
* providers/imap/camel-imap-folder.c (imap_filter_timeout): Update
to reflect CamelFilterDriver API changes.
* camel-filter-driver.c (camel_filter_driver_filter_folder): Take
a cache argument so we can tell the cache whether or not the uid
should be saved (meaning we have successfully filtered it).
svn path=/trunk/; revision=11084
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-12 Jeffrey Stedfast <fejj@ximian.com>
* camel-filter-driver.c (camel_filter_driver_filter_message):
Okay, I've decided that that user is just on crack. We don't want
to allow filtering of deleted messages or we could get some
unexpected behavior.
(do_move): Oops. My last fix needs to be after the if-statement,
not inside it.
(do_copy): And here too.
svn path=/trunk/; revision=11068
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-12 Jeffrey Stedfast <fejj@ximian.com>
* camel-filter-driver.c (camel_filter_driver_filter_message):
Okay, I've decided that that user is just on crack. We don't want
to allow filtering of deleted messages or we could get some
unexpected behavior.
svn path=/trunk/; revision=11048
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-12 Jeffrey Stedfast <fejj@ximian.com>
* camel-filter-driver.c (do_move): Only set p->copied and
p->deleted if the messages are copied without an exception.
(do_copy): Same - but obviously we don't set the p->deleted here
at all.
(camel_filter_driver_filter_message): Since users complained that
they couldn't filter deleted messages for "safe keeping" (WTF?
safe keeping? why were they deleted in the first place then??), I
have taken out the code that optimized filtering by not allowing
deleted messages to be filtered. This fixes bug #4473.
Note: Users have a warped sense of logic.
svn path=/trunk/; revision=11047
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-12 Not Zed <NotZed@Ximian.com>
* camel-mime-part-utils.c (extract_metatag_charset): Removed.
(check_html_charset): Replaced with this.
(simple_data_wrapper_construct_from_parser): Call
check_html_charset if we dont have a charset on the content-type,
and we have text/html data.
(check_html_charset): We also need to do qp/base64 decoding
ourselves, sigh.
* camel-mime-utils.c (html_meta_param_list_decode): Removed. This
was very wrong, the rules for mail headers vastly different from
rules for decoding html elements.
(rfc2184_decode): Move the malloc inside the iconv_open worked,
otherwise we have a memleak.
* camel-mime-filter-html.c (camel_mime_filter_html_finalize, init,
run, reset): Changed to use camelhtmlparser, and fixed a tiny
memleak.
* camel-html-parser.c: Made the html indexer tokeniser re-usable.
ONLY TO BE USED INTERNAL TO CAMEL HOWEVER.
(tokenise_step): Slight fix to non-quoted values.
svn path=/trunk/; revision=11028
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-12 Not Zed <NotZed@Ximian.com>
* camel-folder-summary.c
(camel_folder_summary_info_new_from_message): Removed some code i
wasn't supposed to commit.
* providers/local/camel-local-summary.c (local_summary_add): Only
set info->size if it is not zero.
(local_summary_add): If we dont get a size from the info passed
in, calculate it using a null stream write. Should do #4392.
svn path=/trunk/; revision=11025
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-11 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-part-utils.c (extract_metatag_charset): New function
to extract a meta-tag charset value if it exists.
(simple_data_wrapper_construct_from_parser): Along the same lines
as the code I previously ripped out, but this time use the
mime-parser's seek ability to help us along. Currently I read up
to a 2k buffer size - this is probably overkill, 1k is probably
plenty.
* camel-mime-utils.c (html_meta_param_list_decode): When we get to
an `=', we must skip past it before trying to grab the param
value. duh.
svn path=/trunk/; revision=11021
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-11 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-part-utils.c
(simple_data_wrapper_construct_from_parser): Ripped out my code
since it was never being used since the mime parser is not using a
seekable stream (ever?) which pretty much means my code needs to
be done someplace else.
svn path=/trunk/; revision=11016
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-11 Peter Williams <peterw@ximian.com>
* providers/imap/camel-imap-folder.c (camel_imap_folder_changed):
Run the filter in its own thread to prevent locking issues.
(imap_filter_timeout): New function that does the filtering called
as a CamelSession timeout.
svn path=/trunk/; revision=11011
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-11 Not Zed <NotZed@Ximian.com>
* camel-filter-driver.c (camel_filter_driver_filter_mbox): Create
the messageinfo itself, so we can properly set the size.
* camel-movemail.c (camel_movemail_solaris): Write out the from
line between each message.
2001-07-10 Not Zed <NotZed@Ximian.com>
* providers/local/camel-local-summary.c (local_summary_add): Copy
the size across from the source message info if supplied.
* camel-stream-null.c: Added a 'written' member which keeps track
of how much has been written to the stream.
* camel-movemail.c (camel_movemail): If we have BROKEN_SPOOL
defined, then use the solaris movemail to quote from lines that
sendmail didn't.
(camel_movemail_solaris): Compile this in if BROKEN_SPOOL defined.
svn path=/trunk/; revision=10989
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-10 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-utils.c (html_meta_param_list_decode): New function
to parse an HTML meta-tag.
* camel-mime-part-utils.c
(simple_data_wrapper_construct_from_parser): If the Content-Type
did not contain a charset parameter and it's also a text/html
part, we have 1 last place to look - in the META html tags. *sigh*
* camel-mime-message.c (camel_mime_message_get_source):
s/gint/unsigned since that's what it should be.
svn path=/trunk/; revision=10976
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-09 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-context.c (pgp_sign): Forget the passphrase if the
user has set that option.
(pgp_clearsign): Same.
(pgp_encrypt): And here...
(pgp_decrypt): And finally here.
(camel_pgp_context_new): Take a `remember' argument.
svn path=/trunk/; revision=10932
|
|
|
|
|
|
|
|
|
| |
2001-07-09 Not Zed <NotZed@Ximian.com>
* providers/local/camel-maildir-summary.c (maildir_summary_sync):
Oops, e_poolv_set free's it for us, so dont double-free here.
svn path=/trunk/; revision=10902
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-06 Not Zed <NotZed@Ximian.com>
* camel-vee-folder.c (camel_vee_folder_finalise): Changed so we
dont have the list changing under us, just going to the next node
before we call a function that might change the list is
potentially dangerous (slight mod of peters fix). Hmm, i think it
would've double-unref'd it too(?)
svn path=/trunk/; revision=10900
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-08 Chris Toshok <toshok@ximian.com>
* camel-tcp-stream-openssl.c (camel_tcp_stream_openssl_finalize):
openssl_table is gone. we now store/get the stream from the
SSL_CTX's app_data.
(stream_read): rework the non-blocking case to account for SSL
possibly buffering data (in which case select will block even
though data is ready to be read), and to account for FreeBSD's
strange behavior of returning -1/EAGAIN even though select said
the fd was ready to be read.
(ssl_verify): openssl_table is gone.
(open_ssl_connection): set the SSL_CTX's app_data to be the
stream, remove the openssl_table code.
svn path=/trunk/; revision=10894
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-06 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-utils.c (header_encode_param): Don't allow in to be
NULL, so instead of doing if (in == NULL) return;, make it a
g_return_val_if_fail and later we can make it an assert or
something.
svn path=/trunk/; revision=10868
|
|
|
|
|
|
|
|
|
| |
2001-07-06 Jeffrey Stedfast <fejj@ximian.com>
* providers/local/camel-maildir-store.c (get_inbox): Fixes bug
#1138.
svn path=/trunk/; revision=10860
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-06 Jeffrey Stedfast <fejj@ximian.com>
* providers/local/camel-mbox-summary.c
(camel_mbox_summary_build_from): Make the `day-of-month' digit
take up 2 chars by using "%2d". Fixes bug #3989 for lame mailers
like Pine.
svn path=/trunk/; revision=10858
|
|
|
|
|
|
|
|
|
| |
2001-07-06 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-context.c (crypto_exec_with_passwd): Set the pipe fd's
to nonblocking.
svn path=/trunk/; revision=10847
|
|
|
|
|
|
|
|
|
|
| |
2001-07-06 Peter Williams <peterw@ximian.com>
* camel-object.c (camel_object_unref): Make sure that after the
finalization event has happened and the finalization functions
have been called that the object still has a zero refcount.
svn path=/trunk/; revision=10844
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-06 Joe Shaw <joe@ximian.com>
* providers/nntp/camel-nntp-grouplist.c: Add locking to
camel_nntp_get_grouplist_from_server().
* providers/nntp/camel-nntp-resp-codes.h: Added
NNTP_EXTENSIONS_SUPPORTED (202).
* providers/nntp/camel-nntp-store.c (camel_nntp_store_get_extensions):
Check for both NNTP_LIST_FOLLOWS and NNTP_EXTENSIONS_SUPPORTED from
a LIST EXTENSIONS request. (Dunno if NNTP_LIST_FOLLOWS ever comes
out of this, but that's what was already there...) Also, put some
locking around it.
(finalize): e_mutex_destroy() the command lock
(camel_nntp_store_init): e_mutex_new() the command lock.
* providers/nntp/camel-nntp-store.h: Add locking macros.
svn path=/trunk/; revision=10838
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-05 Jeffrey Stedfast <fejj@ximian.com>
* camel-folder-summary.c (camel_message_info_string): Added an
assert to make sure that `mi' isn't NULL.
(camel_message_info_set_string): Same.
* providers/imap/camel-imap-command.c (camel_imap_response_free):
Create and use a temporary CamelException for use with
camel_imap_folder_changed.
svn path=/trunk/; revision=10834
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-05 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-context.c (pgp_verify): Send the
--no-auto-key-retrieve argument to gpg if we are in offline mode
so that we don't have to worry about gpg hanging if it can't
connect to the key servers, because now it shouldn't even attempt
to.
svn path=/trunk/; revision=10831
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-05 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-context.c (pgp_verify): Send the
--no-auto-key-retrieve argument to gpg so that we don't have to
worry about gpg hanging if it can't connect to the key servers,
because now it shouldn't even attempt to.
svn path=/trunk/; revision=10827
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-05 Chris Toshok <toshok@ximian.com>
* camel-tcp-stream-openssl.c (ssl_verify): use
X509_STORE_CTX_get_ex_data to get at the SSL* - don't use the
X509_STORE_CTX to look up our stream, since it's not what we used
to insert our stream into the hashtable.
(open_ssl_connection): insert the stream into the hashtable before
calling SSL_connect, as this can cause ssl_verify to be called,
and we need to look up the stream there. remove the stream from
the hashtable if there's an error connecting.
(stream_connect): pass the CamelTcpStreamOpenSSL* to
open_ssl_connection since it handles the hashtable stuff. remove
hashtable stuff from here.
svn path=/trunk/; revision=10819
|
|
|
|
|
|
|
|
|
| |
2001-07-05 Jeffrey Stedfast <fejj@ximian.com>
* camel-folder.c (camel_folder_copy_messages_to): if source ==
dest, just no-op.
svn path=/trunk/; revision=10817
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-05 Peter Williams <peterw@ximian.com>
* camel-vee-folder.c (camel_vee_folder_finalise): Move this before the
camel_vee_folder_remove_folder because that function modifies p->folders
messing up our iteration.
(camel_vee_folder_finalise): Don't unref our summary; camel-folder now
does this.
* camel-object.h (CamelObject): Add a 'destroying' flag to CamelObject.
* camel-object.c (obj_init): Clear 'destroying'.
(camel_object_unref): If 'destroying' then do not send the finalize
event and do not call finalize functions. Otherwise, set destroying
so just in case we get refed (eg event code) we don't get doubly
finalized.
svn path=/trunk/; revision=10811
|
|
|
|
|
|
|
| |
e_poolv_cpy() call, since it may allocaote a new poolv if the
lengths do not match.
svn path=/trunk/; revision=10790
|
|
|
|
|
|
|
|
|
|
| |
2001-07-05 Not Zed <NotZed@Ximian.com>
* camel-mime-filter-basic.c (filter): Fix the assertion slightly,
if we have a little bit of input the output size could be larger,
since we store upto 3 chars in the state.
svn path=/trunk/; revision=10786
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-05 Not Zed <NotZed@Ximian.com>
* camel-folder-summary.c
(camel_folder_summary_info_new_from_message): When indexing a new
record, create a pseudo word 'ibexindexed' so we can always tell
that a message has already been idnexed, even if it contains no
words of its own. Things like maildir use this check to see if
its already been processed, and it matters if it is incorrect in
this case (not just wasted cycles).
(camel_folder_summary_info_new_from_parser): And same here.
* providers/local/camel-maildir-summary.c (maildir_summary_sync):
Changed the logicfor epoolv code to be different, we dont need to
update hash references or any tricky stuff.
(maildir_summary_check): Samehere.
* camel-folder-summary.h: Removed include of e-memory.h.
svn path=/trunk/; revision=10785
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-03 Joe Shaw <joe@ximian.com>
* providers/nntp/camel-nntp-resp-codes.h: Added NNTP_NO_PERMISSION
(502) to the list of response codes.
* providers/nntp/camel-nntp-store.c (nntp_store_connect): If we
receive a NNTP_NO_PERMISSION, don't get into an infinite loop trying
to reconnect, get extensions, etc. Just give up and return FALSE.
svn path=/trunk/; revision=10769
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* providers/imap/camel-imap-message-cache.c
(camel_imap_message_cache_clear): Doh. Don't remove things from
the hash table while foreach'ing it. (And can't use foreach_remove
either because we have to remove them in a weird order). Fixes
#3618.
* providers/imap/camel-imap-folder.c (imap_get_message): If the
server returns OK from the FETCH BODY, but there's no parseable
BODY response, it's probably because there's an UN-parseable BODY
response, implying the message is badly formatted, MIMEwise. In
that case, fall back to fetching the message as a single part.
svn path=/trunk/; revision=10748
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-02 Sam Creasey <sammy@oh.verio.com>
* providers/nntp/camel-nntp-folder.c: Implemented
nntp_folder_search_by_expression and
nntp_folder_search_free. Basic search functionality e.g. unread
marking now works for NNTP folders.
* camel_filter_search.c (get_size): Added get-size sexp directive
to get the size of a message for filters.
* providers/nntp/camel-nntp-folder.c (camel_nntp_folder_new):
Always check with the NNTP server after summary load -- this
function now always expires old summary entries and syncs with
the news server.
* providers/nntp/camel-nntp-utils.c (camel_nntp_get_headers):
Only fetch headers for articles not already logged in
the summary file.
* providers/nntp/camel-nntp-grouplist.c
(camel_nntp_get_grouplist_from_*): change from g_list_append()
to g_list_prepend() + g_list_reverse. Traversing 40,000
element linked lists sucks.
* providers/nntp/camel-nntp-store.c (camel_nntp_command):
Should the NNTP connection die with
CAMEL_EXCEPTION_SERVICE_NOT_CONNECTED, make a single retry
attempt. Timing out the NNTP link is less painful this way.
svn path=/trunk/; revision=10716
|
|
|
|
|
|
|
|
|
| |
2001-07-02 Peter Williams <peterw@ximian.com>
* README (Introduction): Add comment noting that Camel actually
exists now :-)
svn path=/trunk/; revision=10696
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* camel-session.c (camel_session_get_filter_driver): new method to
get an application-initialized filter driver.
* camel-filter-driver.c (camel_filter_driver_new): Remove the
get_folder function and data args from here...
(camel_filter_driver_set_folder_func): ...and add this function to
set/change them.
* providers/imap/camel-imap-folder.c (camel_imap_folder_new): If
this folder is INBOX and we're filtering INBOX, set a flag on the
folder for later.
(imap_update_summary): Add another argument (GPtrArray *recents),
and if it's non-NULL, add the uids of any \Recent new messages to
it.
(camel_imap_folder_changed): If doing filtering in this folder,
create a recents array and pass it to imap_update_summary. Then
get a filter driver and use it to filter the recent messages.
* providers/imap/camel-imap-summary.h:
* providers/imap/camel-imap-utils.c (imap_parse_flag_list): Add
support for the \Recent flag.
* providers/imap/camel-imap-provider.c (imap_conf_entries): enable
the "filter" option.
* camel-types.h: add CamelFilterDriver typedef here
svn path=/trunk/; revision=10681
|
|
|
|
|
|
|
|
|
| |
2001-07-02 Not Zed <NotZed@Ximian.com>
* camel-lock-client.c (camel_lock_helper_init): properly return
error if we can't create pipes.
svn path=/trunk/; revision=10677
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-02 Not Zed <NotZed@Ximian.com>
* camel-folder-summary.c (summary_build_content_info): re-enable
html indexing.
* camel-mime-filter-html.c: Completely re-implemented using a
custom parser.
svn path=/trunk/; revision=10676
|
|
|
|
|
|
|
| |
* tests/misc/url.c (main): Change a camel_exception_clear to
camel_exception_init to fix a sometimes-crash
svn path=/trunk/; revision=10675
|
|
|
|
|
|
|
|
|
| |
2001-06-29 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-utils.c: Added Originator: header as a header to look
for when looking for the mailing list.
svn path=/trunk/; revision=10603
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-06-29 Jeffrey Stedfast <fejj@ximian.com>
* tests/mime-filter/Makefile.am: Build the test-crlf test program.
* tests/mime-filter/test-crlf.c: New test suite for the crlf
filter.
* camel-mime-filter-crlf.c (filter): Fixed to correctly encode and
decode dots.
svn path=/trunk/; revision=10602
|
|
|
|
| |
svn path=/trunk/; revision=10592
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
by sendmail to strip the BCC from the email while still sending to the BCC
recipients.
camel:
2001-06-28 Peter Williams <peterw@ximian.com>
* camel-mime-filter-stripheader.c: New file. Filter that strips a
header from mime output.
* camel-mime-filter-stripheader.h: New file. Header for the above.
* providers/smtp/camel-smtp-transport.c (smtp_data): Use the stripheader
filter to remove the "Bcc" header.
* Makefile.am: Add the stripheader files.
* tests/lib/Makefile.am (INCLUDES): Get this to compile again.
* tests/mime-filter/test-stripheader.c: New file. Test suite for
the CamelMimeFilterStripHeader.
* tests/mime-filter/Makefile.am: New test section: mime filters.
mail:
2001-06-28 Peter Williams <peterw@ximian.com>
* mail-ops.c (mail_send_message): Revert fejj's Bcc header removal;
this unsets the BCC recipients and so doesn't send to the Bcc'd
people at all.
svn path=/trunk/; revision=10576
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-06-28 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-utils.c (header_decode_param_list): Fix a memory
leak. Also if the decoded value is NULL, that means it wasn't
encoded so we don't want to toss the old value.
(header_param_list_format_append): Correctly wrap long parameter
values according to rfc2184.
svn path=/trunk/; revision=10566
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* providers/imap/camel-imap-folder.c (imap_refresh_info): If the
folder is frozen, don't refresh, just record that we need to do it
later.
(imap_append_online): If the APPEND doesn't trigger an immediate
EXISTS response (because the folder isn't the selected folder, or
because the server doesn't do that until the next command), call
imap_refresh_info on the folder.
(imap_copy_online): Likewise. (Replacing the unconditional NOOP
that was there before, which absolutely killed filter performance
by forcing the IMAP provider to switch back and forth between
folders after every copy or move.)
(imap_thaw): If the folder needs a refresh, do it.
* camel-folder.c (camel_folder_is_frozen): New method
svn path=/trunk/; revision=10565
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-06-27 Jeffrey Stedfast <fejj@ximian.com>
* camel-transport.c (camel_transport_init): Initialize the private
send_lock.
(camel_transport_finalize): Free the private send_lock.
(camel_transport_get_type): Set the init and finalize functions.
(camel_transport_send): Lock the transport.
(camel_transport_send_to): Same.
* camel-private.h: Add CAMEL_TRANSPORT_(UN)LOCK macros.
svn path=/trunk/; revision=10547
|
|
|
|
|
|
|
|
|
|
|
| |
2001-06-27 Jeffrey Stedfast <fejj@ximian.com>
* tests/folder/test9.c (main): Updated to match the current API.
* tests/folder/test3.c: #include <gtk/gtk.h> since we use
gtk_init().
svn path=/trunk/; revision=10546
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-06-27 Jeffrey Stedfast <fejj@ximian.com>
* camel-internet-address.c
(camel_internet_address_encode_address): Use the new
header_address_fold.
* camel-mime-utils.c: Removed some old #if 0'd code of mine.
(rfc2047_encode_word): If enclen is 0, don't write an encoded word
token (=?iso-8859-7?Q??= would be an invalid token).
(header_address_fold): New function to wrap address headers -
header_fold() was force-wrapping rfc2047 encoded words which was
making the test suite fail. The *real* solution, however, is to
not create rfc2047 encoded words longer than 72 chars.
svn path=/trunk/; revision=10545
|
|
|
|
|
|
|
|
|
|
|
| |
2001-06-26 Jeffrey Stedfast <fejj@ximian.com>
* camel-filter-driver.c (open_folder): Since we want an error
opening a folder to result in the message being copied to Inbox
(assuming no other filters get a chance to `move` it), don't
record any exceptions that may occur in this function.
svn path=/trunk/; revision=10515
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* providers/imap/camel-imap-folder.c (camel_imap_folder_selected,
imap_append_offline, imap_append_online,
camel_imap_folder_changed): lock the cache around accesses
* providers/imap/camel-imap-store.c (get_folder_online): ref the
newly-created folder (as current_folder) before calling
camel_imap_folder_selected, in case that needs to do something
that causes another folder to become current...
svn path=/trunk/; revision=10509
|
|
|
|
|
|
|
| |
* camel-service.c (camel_service_get_url): D'oh.
s/FALSE/CAMEL_URL_HIDE_PASSWORD/
svn path=/trunk/; revision=10505
|
|
|
|
|
|
| |
* camel-url.c (camel_url_encode): constify args
svn path=/trunk/; revision=10503
|
|
|
|
|
|
| |
* camel-url.c (camel_url_encode): constify args
svn path=/trunk/; revision=10501
|
|
|
|
|
|
|
|
|
|
| |
2001-06-25 Jeffrey Stedfast <fejj@ximian.com>
* camel-filter-search.c (get_source): g_strdup() the message
source here or we will have problems later when we go to free the
result ;-)
svn path=/trunk/; revision=10498
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* providers/imap/camel-imap-store.c (try_auth): Fix this: IMAP
doesn't allow an extra argument to AUTHENTICATE to avoid a useless
round trip like some other SASL bindings do.
* providers/imap/camel-imap-command.c (imap_read_response): Deal
with IMAP servers that (incorrectly) return "+\r\n" rather than
"+ \r\n" for an empty continuation response.
(camel_imap_response_extract_continuation): Likewise.
svn path=/trunk/; revision=10480
|
|
|
|
|
|
| |
helixcode.com with ximian.com all over the place.
svn path=/trunk/; revision=10440
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-06-21 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-utils.c (word_types_compatable): New function that
decides if 2 word types are mergeable. An atom and a qstring are
mergeable; 2 qstrings are mergeable; and 2 encoded words are
mergeable.
(header_encode_phrase_merge_words): If 2 words are merged, the new
word type is the MAX of the combined types. This means that if we
merge a qstring and an atom, the resulting word type is a
qstring.
* camel-internet-address.c (internet_format):
s/g_string_sprintfa/g_string_append since this makes more sense in
this particular case.
(internet_encode): Same here.
svn path=/trunk/; revision=10377
|
|
|
|
|
|
|
|
|
|
| |
2001-06-21 Jeffrey Stedfast <fejj@ximian.com>
* providers/smtp/camel-smtp-transport.c (smtp_send): Use
camel_address_length() rather than casting and accessing data
members.
svn path=/trunk/; revision=10365
|
|
|
|
|
|
|
|
|
|
| |
2001-06-20 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-utils.c (header_raw_check_mailing_list): If the first
char of the mailing-list name is '<', chop it off to make Ettore
happy. Fixes bug #2153.
svn path=/trunk/; revision=10347
|
|
|
|
| |
svn path=/trunk/; revision=10297
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-06-19 Not Zed <NotZed@Ximian.com>
* camel-lock-helper.c (unlock_id): Fixed a bug when not running
setuid it wouldn't unlock.
* camel-movemail.c (camel_movemail): use new
locking daemon, also return an error code.
svn path=/trunk/; revision=10287
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-06-18 Jeffrey Stedfast <fejj@ximian.com>
Note: Except for the info_free(), the NULL checks are
g_return's. I felt that since g_free() handles NULL that our
_free() functions should also.
* camel-folder.c (camel_folder_change_info_free): Check to make
sure that the info pointer isn't NULL.
(camel_folder_change_info_change_uid): Same.
(camel_folder_change_info_changed): Same.
(camel_folder_change_info_remove_uid): Same.
(camel_folder_change_info_add_uid): Same.
(camel_folder_change_info_build_diff): Same.
(camel_folder_change_info_cat): Same.
(camel_folder_change_info_add_source): Same.
(camel_folder_change_info_add_source_list): Same.
(camel_folder_change_info_add_update): Same.
(camel_folder_change_info_add_update_list): Same.
svn path=/trunk/; revision=10280
|
|
|
|
|
|
|
|
|
|
| |
* tests/stream/Makefile.am (LDADD):
* tests/smime/Makefile.am (LDADD):
* tests/misc/Makefile.am (LDADD):
* tests/message/Makefile.am (LDADD):
* tests/folder/Makefile.am (LDADD): Remove DB3_LDADD
svn path=/trunk/; revision=10272
|
|
|
|
|
|
|
| |
* Makefile.am (install-exec-local): Set camel-lock-help setgid or
setuid as needed
svn path=/trunk/; revision=10267
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-06-18 Not Zed <NotZed@Ximian.com>
* camel-folder-summary.c
(camel_folder_summary_info_new_from_parser): Only create a missing
uid if we have indexing turned on.
* camel-lock-helper.c (setup_process): Function to setup
process/sanity/security checks. Change to the real uid as soon as
we can.
(lock_path): First try to lock as the real uid, if that fails, try
the root uid.
(unlock_id): Unlock as the uid we created the lock as.
* Makefile.am (INCLUDES): Added -DCAMEL_SBINDIR for lock helper
location.
* providers/local/camel-spool-folder.c (spool_lock): Implemented,
using lock helper locking. Need to work out if the locking
requires a root created lock?
(spool_unlock): Likewise.
2001-06-15 Not Zed <NotZed@Ximian.com>
* camel-lock-helper.c: Setuid Lock helper process. Creates and manages
.locks, keeping them active, removing them, etc. What real perms it
needs is a little system dependent.
2001-06-14 Not Zed <NotZed@Ximian.com>
* providers/local/camel-maildir-store.c (get_folder_info): Implement.
(scan_dir): Does the work of scanning for maildir directories.
2001-06-13 Not Zed <NotZed@Ximian.com>
* providers/local/camel-spool-store.c (get_folder_info):
Implemented, just returns a hardcoded INBOX folder.
(free_folder_info): implemented, free's the 1 possible level of
folder info.
* providers/local/camel-spool-folder.c
(camel_spool_folder_construct): Set the real unread message
count on the folder_created thing.
svn path=/trunk/; revision=10261
|
|
|
|
|
|
|
|
|
|
| |
* providers/imap/camel-imap-message-cache.c
(camel_imap_message_cache_max_uid): Return the largest real UID in
the cache (as an integer). Eventually to be used for an
optimization in the new-message fetch code.
(cache_put): Keep track of max_uid.
svn path=/trunk/; revision=10254
|
|
|
|
|
|
|
|
|
| |
2001-06-14 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-utils.c: Added Mailing-List header regex so that we
can do mlist magic on that header.
svn path=/trunk/; revision=10242
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-05-28 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-utils.c (header_decode_param): Properly handle
correct and incorrect (for the common case, ie Outlook and
Netscape/Mozilla) rfc2184 values.
(header_decode_rfc2184_param): Get the param name and see if we
should expect a rfc2184 parameter value.
(rfc2184_decode): Decode a rfc2184 value.
(hex_decode): hex decode a string.
(header_decode_param_list): Handle rfc2184 encoded parameters (ie
parameters that have been split and perhaps encoded).
(header_param_list_format_append): Encode the value before seeing
if it will fit on the line. If the value does get encoded, be sure
to put a '*' before the equal-sign.
(header_encode_param): New function to rfc2184 encode a parameter
value (maybe it should be renamed?)
apparently with my last commit, I had also commit'd this but didn't realise it.
svn path=/trunk/; revision=10241
|
|
|
|
|
|
|
|
|
| |
2001-06-14 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-part.c (init_header_name_table): Don't try to format
the Reply-To header - we don't want to wrap the reply-to address.
svn path=/trunk/; revision=10231
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-06-12 Not Zed <NotZed@Ximian.com>
* providers/local/camel-spool-*.[ch]: A new provider, for spool
mailboxes. Mostly a cut and paste of the mbox code, but not a
subclass CamelLocal*. Not tested a lot, doesn't lock yet, use
with extreme caution.
* tests/lib/folders.c (test_folder_message_ops): Added spool arg,
spool folders can't be deleted, renamed, etc.
(test_folder_basic): Same.
* tests/folder/test2.c (main): Added checks for spool type.
* tests/[message|stream|folder|misc|smime]/Makefile.am (LDADD):
Added db3 flags, so make check compiles, doesn't run though.
2001-05-24 Not Zed <NotZed@Ximian.com>
* providers/local/camel-local-provider.c
(camel_provider_module_init): Added spool provider.
svn path=/trunk/; revision=10198
|
|
|
|
|
|
|
|
|
| |
2001-06-07 Jon Trowbridge <trow@ximian.com>
* camel-filter-driver.c (camel_filter_driver_filter_folder): Add a
separator between the service url and the folder name, if needed.
svn path=/trunk/; revision=10153
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-06-07 Jon Trowbridge <trow@ximian.com>
* camel-filter-driver.c (camel_filter_driver_filter_mbox): Added
an argument, so that the original source URI of the mbox can be
passed in. This is needed because this function is called
post-movemail, so we are never reading from the original mbox
anymore. Without the original mbox URI, the X-Evolution-Source
tag gets set incorrectly and filter-on-source will fail to work.
(camel_filter_driver_filter_message): Also take an extra arg
for the original source URI. It is the original URI, not the
source URI, that is used for filtering and for setting the
X-Evolution-Source tag.
2001-06-07 Jon Trowbridge <trow@ximian.com>
* mail-ops.c (fetch_mail_fetch): Pass the original source URI
to camel_filter_driver_filter_mbox.
(mail_send_message): Pass NULL as the orginal source URI
to camel_filter_driver_filter_message.
svn path=/trunk/; revision=10152
|
|
|
|
|
|
|
|
| |
* providers/imap/camel-imap-folder.c (imap_rescan): Don't fetch
the UID and FLAGS of messages we don't know about yet, since
they'll just get discarded.
svn path=/trunk/; revision=10132
|
|
|
|
|
|
|
|
|
|
|
| |
2001-06-01 Jeffrey Stedfast <fejj@ximian.com>
* tests/smime/pgp.c: Fix to not get into a recursive loop in
get_type().
* tests/smime/pgp-mime.c: Same.
svn path=/trunk/; revision=10102
|
|
|
|
|
|
|
|
| |
2001-05-31 Jeffrey Stedfast <fejj@ximian.com>
* camel-smime-context.c: Numerous fixes to get it to compile.
svn path=/trunk/; revision=10073
|
|
|
|
|
|
|
|
|
| |
2001-05-31 Jeffrey Stedfast <fejj@ximian.com>
* camel.h: Added camel-cipher-context.h, camel-cms-context.h,
camel-smime-context.h, and camel-smime-utils.h
svn path=/trunk/; revision=10067
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-05-31 Jeffrey Stedfast <fejj@ximian.com>
* camel-cms-context.[c,h]: New virtual class for manipulating
cryptographic message syntax messages (like S/MIME).
* camel-smime-context.[c,h]: Modified to inherit from the
CamelCMSContext class rather than the CamelCipherContext class.
* camel-smime.[c,h]: Removed - just use camel-smime-context
directly.
* camel-smime-utils.[c,h]: New source files. Moved the 2 useful
functions from camel-smime.[c,h] into here.
svn path=/trunk/; revision=10065
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* camel-charset-map.c: Redo the BUILD_MAP code to not depend on
libunicode. Now it only generates a map of "popular" 8bit
encodings. (It's not worthwhile to support obscure encodings,
because any mailer that supports them will support UTF8 too. And
Chinese and Japanese use mostly the same UTF8 characters so you
need to decide between those encodings based on the locale or
the charset of the message you're replying to or the input
method you used. So this is sufficient for camel_charset_best's
use.)
* camel-charset-map-private.h: Regenerated.
* camel.c (camel_shutdown): Move #ifdefs around to prevent a
warning.
svn path=/trunk/; revision=10055
|
|
|
|
| |
svn path=/trunk/; revision=10045
|
|
|
|
| |
svn path=/trunk/; revision=10042
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* providers/imap/camel-imap-store.c (imap_connect_online,
imap_connect_offline): Create a CamelDiscoDiary.
(imap_disconnect_offline): And free it.
* providers/imap/camel-imap-folder.c (camel_imap_folder_selected):
If RESYNCING, don't do any sort of checking that the remote folder
matches the summary, beyond making sure that the UIDVALIDITY is
correct.
(imap_rescan): Add a missing camel_folder_summary_info_free when
removing a UID from the summary.
(imap_expunge_uids_offline): Implement. Fairly simple.
(imap_expunge_uids_resyncing): Implement. If the store supports
UIDPLUS, we can just use imap_expunge_uids_online. If not, we need
to temporarily undelete any messages marked deleted on the server
that aren't supposed to get expunged.
(imap_append_offline): Implement, using cache and summary
operations, and triggering the folder_changed event by hand.
(imap_append_resyncing): Implement. Redo imap_append_online a bit
in the process to make them able to share more code.
(imap_copy_offline): Implement.
(imap_copy_online): Move parts of this out into a helper.
(imap_copy_resyncing): Implement. In most cases this is just like
imap_copy_online, but if you are copying a message that was itself
copied or appended into the folder, and the server doesn't do
UIDPLUS, it will be necessary to replace at least part of the copy
operation with one or more appends.
* providers/imap/camel-imap-command.c (imap_read_response): Don't
record the current folder in the response when in RESYNCING mode.
(This means that EXISTS and EXPUNGE responses won't be processed,
which is needed because the summary may not match the folder at
this point.)
(imap_read_response): On error, call
camel_imap_response_free_without_processing, not
camel_imap_response_free.
* providers/imap/camel-imap-utils.c (imap_uid_array_to_set): Make
this work better when operating on UIDs that aren't in the summary.
* providers/imap/camel-imap-summary.c
(camel_imap_summary_add_offline): New routine used by
imap_append_offline and imap_copy_offline to create new summary
entries.
svn path=/trunk/; revision=10041
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* camel-disco-diary.c: Code for logging and replaying offline
operations.
* camel-disco-store.c (disco_construct): Set disco->status here
(where we can base it on the session's offline status) rather than
at init time.
(disco_connect): If we connect online and have a non-empty diary,
switch to RESYNCING mode and replay the diary to the server.
(disco_get_folder, disco_get_folder_info): Add _resyncing
variants.
* camel-disco-folder.c (disco_sync, disco_expunge_uids,
disco_append_message, disco_copy_messages_to,
disco_move_messages_to): Add _resyncing variants to switches.
(disco_expunge_uids, disco_append_message, disco_copy_messages_to,
disco_move_messages_to): Remove #ifdef'ed out diary code: let the
provider do it.
(disco_append_message): Redo the append methods to no longer
return the UID, since we're no longer doing the logging from here.
svn path=/trunk/; revision=10040
|
|
|
|
|
|
|
|
|
|
| |
2001-05-28 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-utils.c (header_set_param): Use g_strcasecmp()
because some systems don't have strcasecmp(). Also, when removing
a param, make sure to free the param->name too.
svn path=/trunk/; revision=10030
|
|
|
|
| |
svn path=/trunk/; revision=10029
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* tests/lib/messages.c (test_message_read_file): Fix an fd leak
* tests/lib/session.c, tests/lib/session.h: a CamelSession
subclass for the test programs.
* tests/lib/Makefile.am: include session.[ch]
* tests/folder/test*.c: Use a CamelTestSession from libcameltest
instead of cut+pasting everywhere.
* tests/misc/url.c (main): Update for a camel_url_new change at
some point.
* tests/*/.cvsignore: Add stuff.
* camel-mime-utils.c (rfc2047_encode_word): Fix a silly ==/!=
mixup.
svn path=/trunk/; revision=10023
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* providers/imap/camel-imap-folder.c: Add a "need_rescan" flag
saying if we want to rescan the entire folder for flag changes
next time it's selected.
(camel_imap_folder_init): Set need_rescan TRUE.
(camel_imap_folder_selected): If need_rescan is TRUE, call
imap_rescan.
(imap_refresh_info): Only do a full rescan if need_rescan is TRUE.
Otherwise just do a NOOP, making this a MUCH more lightweight
operation. Also, don't call imap_rescan directly if the folder
isn't selected, since that could end up causing the folder to be
scanned *twice* (imap_rescan -> camel_imap_command ->
camel_imap_folder_selected -> imap_rescan).
(imap_rescan): Set need_rescan FALSE.
(imap_sync_online): Don't NOOP if no changes were pushed: the
caller will call refresh_info if it wants to poll for changes.
Fixes evolution-mail doing lots of unnecessary extra work at
quit time.
svn path=/trunk/; revision=10010
|
|
|
|
|
|
|
|
|
|
| |
2001-05-25 Jeffrey Stedfast <fejj@ximian.com>
* providers/smtp/camel-smtp-transport.c (smtp_auth): Oops. Use a
strNcmp to make sure the response begins with a 334 code, not a
strcmp. Duh.
svn path=/trunk/; revision=10004
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-05-25 Jeffrey Stedfast <fejj@ximian.com>
* providers/local/camel-maildir-folder.c (maildir_append_message):
remove the summary info so we are not out-of-sync with the maildir
folder.
* providers/local/camel-mh-folder.c (mh_append_message): remove
the summary info so we are not out-of-sync with the mh folder.
* providers/local/camel-mbox-folder.c (mbox_append_message):
remove the summary info so we are not out-of-sync with the mbox.
svn path=/trunk/; revision=9996
|
|
|
|
|
|
|
|
|
| |
2001-05-24 Jeffrey Stedfast <fejj@ximian.com>
* camel-smime-context.c (camel_smime_context_new): Oops, I spelled
the get-default-db function name wrong.
svn path=/trunk/; revision=9980
|
|
|
|
|
|
|
|
|
|
| |
2001-05-23 Jeffrey Stedfast <fejj@ximian.com>
* providers/local/camel-local-folder.c
(camel_local_folder_construct): s/folder_deleted/folder_created -
result of a bad copy/paste.
svn path=/trunk/; revision=9957
|
|
|
|
|
|
|
|
|
| |
2001-05-23 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-search.c (imap_body_contains):
Optimize the match "" case.
svn path=/trunk/; revision=9955
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-05-21 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-store.c (get_folder_info_online):
Store the CamelFolderInfo tree that was returned from
camel_folder_info_build() in a new variable, 'tree', rather than
'fi' since we later use 'fi' when syncing folders. Not only does
this fix a memory leak, but it also fixes the bug where the user
would only see the last folder in the folder list and/or it's
subfolders.
svn path=/trunk/; revision=9911
|
|
|
|
|
|
|
|
|
| |
2001-05-16 Jeffrey Stedfast <fejj@ximian.com>
* camel-session.c (camel_session_forget_password): The service can
be NULL here too, thanks to Wayne Davis for pointing this out.
svn path=/trunk/; revision=9863
|
|
|
|
|
|
|
|
|
| |
2001-05-16 Jeffrey Stedfast <fejj@ximian.com>
* camel-smime-context.c (camel_smime_context_new): We don't need
to be passed the certdb path anymore.
svn path=/trunk/; revision=9855
|
|
|
|
|
|
|
|
|
|
|
| |
* camel-medium.c (camel_medium_get_headers): New function to
return an array of all headers.
(camel_medium_free_headers): And free them.
* camel-mime-part.c (get_headers, free_headers): Implement this
for CamelMimePart. (Works for CamelMimeMessage too.)
svn path=/trunk/; revision=9849
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-05-15 Jeffrey Stedfast <fejj@ximian.com>
* camel-smime-context.c (camel_smime_context_finalise): Don't
close or free (it wasn't allocated) the certdb.
(camel_smime_context_new): If we get a NULL certdb handle, then
don't bother trying to create a new certdb handle since NSS_Init*
should have done that.
svn path=/trunk/; revision=9830
|
|
|
|
|
|
|
|
|
|
| |
2001-05-15 Jeffrey Stedfast <fejj@ximian.com>
* Makefile.am: Don't use EXTRA_GNOME_*, use the new CAMEL_*
variables so we don't link in tons of extra cruft that we don't
need.
svn path=/trunk/; revision=9821
|
|
|
|
|
|
|
|
|
| |
2001-05-15 Jeffrey Stedfast <fejj@ximian.com>
* tests/smime/pkcs7.c: Added t the test suite - tests the S/MIME
pkcs7 functions.
svn path=/trunk/; revision=9818
|
|
|
|
|
|
|
|
| |
2001-05-14 Jeffrey Stedfast <fejj@ximian.com>
* camel-smime-context.c: Lots of fixes to get this to compile.
svn path=/trunk/; revision=9806
|
|
|
|
|
|
| |
have to pass in a useless value.
svn path=/trunk/; revision=9805
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-05-14 Jeffrey Stedfast <fejj@ximian.com>
* camel-smime-context.c: Lots of fixes to get this to almost
compile. Still struggling with the fact that CERTCertDBHandle is
an "incomplete type". *sigh*.
* camel-smime.c (camel_smime_part_verify): Updated to pass in a
hash argument to camel_smime_verify().
* camel-pgp-mime.c (camel_pgp_mime_part_verify): Update according
to the changes in the context API.
* camel-pgp-context.c (pgp_verify): Updated to take a
CamelCipherHash argument.
* camel-cipher-context.c (camel_cipher_verify): Now takes a hash
argument since the S/MIME code needs this.
svn path=/trunk/; revision=9804
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-05-14 Jeffrey Stedfast <fejj@ximian.com>
* Makefile.am: Add camel-smime-context.[c,h] and camel-smime.[c,h]
to the build.
* camel-smime.[c,h]: New source files for manipulating S/MIME
message parts.
svn path=/trunk/; revision=9799
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-05-14 Jon Trowbridge <trow@ximian.com>
* camel-search-private.c (utf8_get): Replicate the semantics of
the libunicode utf8 functions by returning NULL in the arg
on invalid utf8.
* camel-pgp-context.c (pgp_verify): Check for valid utf8,
terminate loop if something looks wrong.
* camel-mime-utils.c (header_encode_phrase_get_words): Properly
check for invalid utf8.
(header_encode_string): Properly check for invalid utf8.
* camel-charset-map.c (camel_charset_step): Properly check for
invalid utf8.
2001-05-14 Jon Trowbridge <trow@ximian.com>
* e-html-utils.c (is_citation): Check for bad utf8.
svn path=/trunk/; revision=9798
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-05-14 Jeffrey Stedfast <fejj@ximian.com>
* tests/folder/test9.c:
* tests/folder/test8.c:
* tests/folder/test7.c:
* tests/folder/test6.c:
* tests/folder/test5.c:
* tests/folder/test4.c:
* tests/folder/test3.c:
* tests/folder/test2.c:
* tests/folder/test1.c:
* tests/smime/pgp-mime.c:
* tests/smime/pgp.c: Subclass CamelSession since we can no longer
specify the passwd callback any other way and update code
accordingly.
svn path=/trunk/; revision=9796
|
|
|
|
| |
svn path=/trunk/; revision=9785
|
|
|
|
| |
svn path=/trunk/; revision=9784
|
|
|
|
|
|
|
|
|
|
|
| |
* camel-mime-utils.c (header_location_decode): Decode
Content-Location, either correctly or Netscape-generated-brokenly.
* camel-mime-part.c (camel_mime_part_set_content_location,
camel_mime_part_get_content_location, etc): Deal with
Content-Location header.
svn path=/trunk/; revision=9772
|
|
|
|
|
|
|
|
|
|
|
| |
2001-05-11 Jeffrey Stedfast <fejj@ximian.com>
* providers/smtp/camel-smtp-transport.c (smtp_auth): Don't check
the initial auth response until we get into the while-loop
otherwise we have problems if the SASL mechanism supported a
client initiated challenge (like PLAIN and LOGIN do).
svn path=/trunk/; revision=9771
|
|
|
|
|
|
|
|
| |
* camel-stream-null.c (camel_stream_null_new): Make this return
CamelStream * (like the other stream new functions) instead of
CamelStreamNull *
svn path=/trunk/; revision=9760
|
|
|
|
|
|
|
|
|
|
| |
2001-05-10 Chris Toshok <toshok@ximian.com>
* camel-tcp-stream-ssl.c (stream_connect): call SSL_Enable after
the SSL_ImportFD and before PR_Connect. Otherwise, NSS aborts
during the connect.
svn path=/trunk/; revision=9751
|
|
|
|
|
|
|
|
|
| |
2001-05-10 Jeffrey Stedfast <fejj@ximian.com>
* camel-session.c (camel_session_get_password): Don't abort if the
Service is NULL, this is perfectly valid for cipher contexts.
svn path=/trunk/; revision=9748
|
|
|
|
|
|
|
|
|
|
| |
2001-05-09 Peter Williams <peterw@ximian.com>
* providers/imap/camel-imap-folder.c (imap_move_messages_to): Pass
appropriate parameters to CF_CLASS and add comment explaining why
my initial attempt at a solution didn't work.
svn path=/trunk/; revision=9742
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* camel-disco-store.c (camel_disco_set_status): Set the
disconnected status.
(camel_disco_store_can_work_offline): Return whether or not a
given CamelDiscoStore can work offline or not.
* camel-disco-folder.c (camel_disco_folder_cache_message):
Explicitly tell a folder to cache a message. (Better than using
get_message, because for IMAP that doesn't guarantee you'll get
all the message parts.)
(camel_disco_folder_prepare_for_offline): Prepare a folder for
offline use by caching all messages meeting given search criteria
(and doing anything else the particular folder implementation
needs).
* camel-session.c (camel_session_set_online,
camel_session_is_online): A session-wide online/offline toggle.
(camel_session_init): Set online to TRUE.
* providers/imap/camel-imap-store.c (can_work_offline):
Implementation of CamelDiscoStore::can_work_offline. (Checks that
the store has been used online at least once.)
(imap_get_folder_online, imap_get_folder_offline): Deal with
request for "inbox" properly. ("Don't you mean... 'INBOX'?").
* providers/imap/camel-imap-folder.c (imap_cache_message):
Implementation of CamelDiscoFolder::cache_message.
* camel.h: Add camel-disco-store.h and camel-disco-folder.h
svn path=/trunk/; revision=9738
|
|
|
|
| |
svn path=/trunk/; revision=9737
|
|
|
|
|
|
|
|
|
| |
2001-05-09 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-part.c (camel_mime_part_set_content_id): Wrap the
content-id with <>'s.
svn path=/trunk/; revision=9734
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-05-04 Jeffrey Stedfast <fejj@ximian.com>
* providers/smtp/camel-smtp-transport.c (connect_to_server): Add
support for using OpenSSL.
* camel-remote-store.c (remote_connect): Add support for using the
OpenSSL implementation.
* camel-tcp-stream-ssl.c (ssl_bad_cert): Hmmmm, don't pass in a
NULL as the last argument to alert_user - prototype doesn't take
that argument anymore?
* camel-tcp-stream-openssl.c (camel_tcp_stream_openssl_finalize):
(ssl_verify): Use a global hash table to try and lookup the
CamelTcpStreamOpenSSL object given the ssl context since OpenSSL
doesn't think one needs to pass data around, we should all be
living in a world of global variables, duh!
svn path=/trunk/; revision=9697
|
|
|
|
|
|
|
| |
* Makefile.am (libcamelinclude_HEADERS): Fix another build
problem. (Um, anyone else could have done this...)
svn path=/trunk/; revision=9687
|
|
|
|
|
|
|
|
|
|
| |
* providers/imap/camel-imap-store.c (get_folder_online): Fix up
refcounting on current_folder.
* camel-disco-folder.c, camel-disco-store.h: Remove
CamelDiscoDiary refs that weren't supposed to escape yet.
svn path=/trunk/; revision=9667
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* camel-disco-store.c: new abstract class for disconnectable
remote stores
* camel-disco-folder.c: new abstract class for folders on
disconnectable stores.
* Makefile.am: Add camel-disco-folder.[ch] and
camel-disco-store.[ch].
* providers/imap/camel-imap-store.c: Make this a subclass of
CamelDiscoStore, and fix up the offline interfaces for the changes
since they were first written (particularly the fact that some
IMAP stores don't just use subscribed folders).
* providers/imap/camel-imap-folder.c: Make this a subclass of
CamelDiscoFolder, although most ops still fail in disconnected
mode.
* camel-store.c (camel_store_get_folder_info): Change gboolean,
gboolean, gboolean to guint32 in the prototype for this function.
* providers/local/camel-local-store.c (get_folder_info): Update
for prototype change.
svn path=/trunk/; revision=9659
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* providers/imap/camel-imap-store.h: Clean this up a bit. Add a
"tag_prefix" member. Move "useful_lsub" into capabilities.
* providers/imap/camel-imap-store.c (camel_imap_store_init):
Initialize the tag_prefix, based on a static variable.
* providers/imap/camel-imap-command.c (camel_imap_command): Use
the store's tag_prefix character rather than "A" at the start of
the tag. Makes the verbose debug output easier to parse when
connected to multiple IMAP servers. (Well, unless you're connected
to more than 26 servers...)
svn path=/trunk/; revision=9649
|
|
|
|
|
|
|
|
| |
* providers/imap/camel-imap-utils.c (imap_uid_array_to_set): Fix
this up... it was losing count in some cases and giving a more
verbose answer than it needed to.
svn path=/trunk/; revision=9644
|
|
|
|
|
|
|
| |
* providers/pop3/camel-pop3-store.c: Rescue the KPOP code from bit
rot.
svn path=/trunk/; revision=9643
|
|
|
|
|
|
|
|
|
| |
2001-05-01 Anders Carlsson <andersca@codefactory.se>
* camel-tcp-stream-ssl.c (ssl_bad_cert): Remove the last argument from
camel_session_alert_user.
svn path=/trunk/; revision=9640
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* providers/imap/camel-imap-command.c (camel_imap_command): Redo
command locking. Since command_lock is recursive, we can just get
a lock here, and release it either on error, or when the caller
frees the response data. (This simplifies a lot of stuff, and
fixes some problems with camel_imap_folder_changed being called
without the command_lock locked because of the 2001-03-22 change.)
(camel_imap_response_free):
(camel_imap_response_free_without_processing):
(camel_imap_response_extract):
(camel_imap_response_extract_continuation): These all take a
CamelImapStore now as well, to deal with locking.
* providers/imap/camel-imap-private.h: Add
CAMEL_IMAP_STORE_ASSERT_LOCKED, which defaults to a noop, but can
be made to call e_mutex_assert_locked.
* providers/imap/camel-imap-folder.c, camel-imap-search.c,
camel-imap-store.c: Simplify using new locking stuff. Add a few
CAMEL_IMAP_STORE_ASSERT_LOCKED checks.
svn path=/trunk/; revision=9639
|
|
|
|
| |
svn path=/trunk/; revision=9636
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
resync after disconnected operation more efficiently, but also
makes it possible to do appends and moves/copies more efficiently
now.
* providers/imap/camel-imap-folder.c (imap_append_message): If the
server supports UIDPLUS, grab the APPENDUID response and cache the
message into the folder's message cache.
(imap_copy_messages_to): Likewise, for COPYUID, copy any message
parts we have cached between the source and destination folder
caches.
(imap_get_message): If the entire message is already in the cache,
just return that rather than building it from parts.
(imap_update_summary): Fetch just the "UID FLAGS RFC822.SIZE" of
the new messages first, then only fetch the headers for messages
where we don't already have the headers cached.
* providers/imap/camel-imap-message-cache.c: Add gtk-doc comments.
(cache_put): Fix refcounting stuff here.
(camel_imap_message_cache_insert_stream,
camel_imap_message_cache_insert_wrapper): New.
(camel_imap_message_cache_get): Fix a bug here so the memory
caching actually works.
(camel_imap_message_cache_copy): New routine, used by
imap_copy_messages_to.
* providers/imap/camel-imap-utils.c (imap_uid_set_to_array):
Inverse operation of imap_uid_array_to_set. Used to parse COPYUID
response.
svn path=/trunk/; revision=9635
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* providers/imap/camel-imap-utils.c (imap_uid_array_to_set):
New-and-improved version of get_uid_set() from
camel-imap-folder.c. Looks at the summary as it goes so that if
you ask for messages 5, 6, 8, and 9, and there is no message 7,
then you get "5:9" instead of "5:6,8:9"
* providers/imap/camel-imap-folder.c (imap_copy_messages_to): Use
imap_uid_array_to_set() rather than get_uid_set().
(get_uid_set): Gone
svn path=/trunk/; revision=9632
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* camel-session.c: Redo this a lot so that instead of having a
class full of callbacks, we have a subclassable class. Also,
replace the increasingly horrifying
camel_session_query_authenticator with three new routines,
camel_session_get_password, camel_session_forget_password, and
camel_session_alert_user.
* camel-pgp-context.c:
* camel-pkcs7-context.c:
* camel-smime-context.c:
* providers/imap/camel-imap-store.c:
* providers/pop3/camel-pop3-store.c:
* providers/smtp/camel-smtp-transport.c:
Use camel_session_get_password / camel_session_forget_password.
* camel-tcp-stream-ssl.c (ssl_bad_cert): Use
camel_session_alert_user.
svn path=/trunk/; revision=9617
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-04-26 Jeffrey Stedfast <fejj@ximian.com>
* camel.c (camel_init): Automagically call camel_shutdown()
atexit() ;-)
(camel_init): Also initialize NSS databases as read/write for
S/MIME and if NSS fails to init, try initializing with volatile
databases.
* camel-file-utils.h: #include <sys/types.h> for off_t.
svn path=/trunk/; revision=9609
|
|
|
|
|
|
|
|
| |
2001-04-26 Jeffrey Stedfast <fejj@ximian.com>
* camel-file-utils.h: #include <sys/types.h> for off_t.
svn path=/trunk/; revision=9593
|
|
|
|
|
|
| |
living in /usr/include
svn path=/trunk/; revision=9592
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* camel-file-utils.c: New file, with the int, string, time_t, and
off_t encode/decode routines from camel-folder-summary.c moved
here and renamed, for the enjoyment of non-CamelFolderSummary
subclasses.
* Makefile.am (libcamel_la_SOURCES): Add camel-file-utils.c
(libcamelinclude_HEADERS): and camel-file-utils.h
* camel-folder-summary.c: Remove functions that were moved to
camel-file-utils.c, update uses of them for the new names.
(camel_folder_summary_{en,de}code_token are still here.)
* providers/local/camel-mbox-summary.c: Use camel_file_util_*
names
* providers/imap/camel-imap-summary.c: Use camel_file_util_* names
* providers/imap/camel-imap-store.c (imap_store_setup_online,
imap_store_setup_offline): Use camel_file_util_* names, which
makes much more sense since this isn't folder summary stuff.
svn path=/trunk/; revision=9590
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Makefile.am (INCLUDES): Remove UNICODE_CFLAGS (and some other
stuff that's redundant with EXTRA_GNOME_CFLAGS)
(libcamel_la_LIBADD): Replace UNICODE_LIBS with GAL_LIBS.
* camel-search-private.c:
* camel-pgp-context.c:
* camel-mime-utils.c: Use gunicode interfaces rather than
libunicode.
* camel-charset-map.c: Use gunicode rather than libunicode. (The
charmap-regen code still depends on libunicode though.)
* camel-mime-filter-charset.h:
* tests/message/test2.c (convert): Use iconv rather than
unicode_iconv.
* providers/smtp/Makefile.am (libcamelsmtp_la_LIBADD):
* providers/pop3/Makefile.am (libcamelpop3_la_LIBADD):
* providers/local/Makefile.am (libcamellocal_la_LIBADD): Remove
UNICODE_LIBS.
* camel.c (camel_init): Remove call to unicode_init.
* camel-mime-parser.c: Remove unused unicode.h include.
svn path=/trunk/; revision=9585
|
|
|
|
|
|
|
| |
* camel-service.c (get_host): Use e_gethostbyname_r.
(camel_service_gethost): Remove unused var.
svn path=/trunk/; revision=9583
|
|
|
|
|
|
|
|
| |
2001-04-26 Not Zed <NotZed@Ximian.com>
* Applied jacob's patches for e-poolv stuff.
svn path=/trunk/; revision=9571
|
|
|
|
|
|
|
|
|
|
|
| |
2001-04-23 Jeffrey Stedfast <fejj@ximian.com>
* camel.h: Add camel-vee-folder.h and camel-digest-folder.h
* camel-digest-folder.[c,h]: New class that can be used to browse
a multipart/digest message as if it were a CamelFolder.
svn path=/trunk/; revision=9531
|
|
|
|
|
|
|
|
|
| |
2001-04-23 Jeffrey Stedfast <fejj@ximian.com>
* camel-digest-folder.[c,h]: New class that can be used to browse
a multipart/digest message as if it were a CamelFolder.
svn path=/trunk/; revision=9530
|
|
|
|
|
|
|
|
|
|
|
| |
2001-04-22 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-context.c (pgp_verify): Oops, don't use the return
value of iconv() as a string length, it only tells us the number
of non-reversable character conversions. This fixes it so we
actually see the gpg output in the message viewer.
svn path=/trunk/; revision=9495
|
|
|
|
|
|
|
|
|
| |
2001-04-23 Mikael Hallendal <micke@codefactory.se>
* providers/nntp/Makefile.am (INCLUDES):
Changed GTK_INCLUDEDIR to EXTRA_GNOME_CFLAGS.
svn path=/trunk/; revision=9494
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-04-20 Jeffrey Stedfast <fejj@ximian.com>
* camel-smime-context.c (smime_sign): Implemented using the
secmime.h convenience functions.
(smime_clearsign): We just error our here, there is no clearsign
for smime.
(smime_verify): Copied code over from the pkcs7 verify - same
state, ugly and unknown :-)
(smime_encrypt): Implemented using the secmime.h convenience
functions.
(smime_decrypt): Same as the code in pkcs7-context.
svn path=/trunk/; revision=9480
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-04-19 Jeffrey Stedfast <fejj@ximian.com>
* camel-pkcs7-context.c (pkcs7_sign): Implemented.
(pkcs7_clearsign): Implemented.
(get_zero_len_passwd): Convenience function to try a 0-length key
on the certificate db - if this works then there is no need to
prompt the user.
(get_password): Callback to get the password.
(camel_cipher_hash_to_nss): Convenience function to convert a
CamelCipherHash to an NSS HASH_HashType.
(nss_hash_to_sec_oid): Converts a HASH_HashType to a SecOidTag.
(pkcs7_digest): Digest function for use with pkcs7_sign().
(sign_encode_cb): Callback to write the signed data to the output
stream.
(pkcs7_verify): Hacked on a bit more but am still a bit on the
confused side. This might work but I wouldn't hold my breath. The
sign/clearsign should be close if not correct, but this one...god
only knows.
(pkcs7_decrypt): Implemented.
(pkcs7_encrypt): Implemented (mostly, still need to handle when
'sign' is TRUE).
svn path=/trunk/; revision=9461
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-04-19 Jeffrey Stedfast <fejj@ximian.com>
* camel-pkcs7-context.c (pkcs7_sign): Implemented.
(pkcs7_clearsign): Implemented.
(get_zero_len_passwd): Convenience function to try a 0-length key
on the certificate db - if this works then there is no need to
prompt the user.
(get_password): Callback to get the password.
(camel_cipher_hash_to_nss): Convenience function to convert a
CamelCipherHash to an NSS HASH_HashType.
(nss_hash_to_sec_oid): Converts a HASH_HashType to a SecOidTag.
(pkcs7_digest): Digest function for use with pkcs7_sign().
(sign_encode_cb): Callback to write the signed data to the output
stream.
(pkcs7_verify): Hacked on a bit more but am still a bit on the
confused side. This might work but I wouldn't hold my breath. The
sign/clearsign should be close if not correct, but this one...god
only knows.
svn path=/trunk/; revision=9460
|
|
|
|
| |
svn path=/trunk/; revision=9453
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* providers/imap/camel-imap-store.c (camel_imap_store_finalize):
Free base_url and storage_path.
* providers/pop3/camel-pop3-store.c (finalize): Free the
implementation string.
(camel_pop3_command): Clarify documentation to mention that
@ex isn't set (and *@ret is) on CAMEL_POP3_ERR.
(connect_to_server): Set @ex properly on CAMEL_POP3_ERR.
* providers/pop3/camel-pop3-folder.c (pop3_refresh_info,
pop3_get_message): Set @ex properly on CAMEL_POP3_ERR.
svn path=/trunk/; revision=9450
|
|
|
|
|
|
|
|
|
|
|
| |
2001-04-17 Jeffrey Stedfast <fejj@ximian.com>
* camel-pkcs7-context.[c,h]: New source files to handle Pkcs7
encryption, decryption, signing, and verifying. Not yet
complete. I'm sensing this is going to take a while seeing as how
NSS is just so well documented.
svn path=/trunk/; revision=9435
|
|
|
|
| |
svn path=/trunk/; revision=9431
|
|
|
|
| |
svn path=/trunk/; revision=9396
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-04-16 Jeffrey Stedfast <fejj@ximian.com>
* providers/local/camel-mbox-summary.c (summary_rebuild): Don't we
want to tell where we are by using the start of the message? I
think this should be using camel_mime_parser_tell_start_from()
instead. Also divide by the size *before* multiplying by 100 so
that we don't overflow the int which was giving us negative values
for our progress status (oops).
svn path=/trunk/; revision=9394
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-04-16 Jeffrey Stedfast <fejj@ximian.com>
* camel-operation.c: Added a prototype for stamp().
* camel-charset-map.c (camel_charset_locale_name): #include
string.h so we don't get a warning about strchr being undefined
and also init charset to NULL.
* camel-pgp-context.c (pgp_verify): Go back to doing the utf8
conversion by hand so that we don't depend on gal.
svn path=/trunk/; revision=9388
|
|
|
|
|
|
|
|
|
| |
2001-04-16 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-context.c (pgp_verify): Go back to doing the utf8
conversion by hand so that we don't depend on gal.
svn path=/trunk/; revision=9387
|
|
|
|
| |
svn path=/trunk/; revision=9384
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-04-16 Jeffrey Stedfast <fejj@ximian.com>
* Makefile.am: Remove the EXTRA_GNOME_CFLAGS include.
* camel-store.c (camel_mkdir_hier): Convenience function that it
seems a number of camel-store implementations used gal for.
* providers/nntp/camel-nntp-store.c (ensure_news_dir_exists): Lets
not depend on gal for just e_mkdir_hier() - use camel_mkdir_hier()
instead.
* providers/nntp/camel-imap-store.c: Lets not depend on gal for
just e_mkdir_hier() - use camel_mkdir_hier() instead.
* camel-session.c (camel_session_get_storage_path): Don't depend
on e_mkdir_heir() anymore, use the CamelStore version.
* camel-folder-search.h: Removed gal dependency, why was this even
there in the first place?
* providers/imap/camel-imap-folder.c: Don't need gal/util/e-util.h
here, so remove it.
* string-utils.c (strstrcase): New function, well more like old
function brought back to life so we don't have to depend on gal.
* providers/imap/camel-imap-store.c (imap_store_setup_online): Use
strstrcase rather than e_strstrcase so we don't depend on gal.
(get_unread_online): Same here.
* providers/smtp/camel-smtp-transport.c (smtp_helo): Use
strstrcase.
svn path=/trunk/; revision=9383
|
|
|
|
| |
svn path=/trunk/; revision=9377
|
|
|
|
| |
svn path=/trunk/; revision=9334
|
|
|
|
|
|
|
|
|
|
| |
2001-04-15 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-utils.c (header_raw_check_mailing_list): regex
doesn't set errno and regcomp returns 0 on success and any other
value for an error (so don't *just* check for -1).
svn path=/trunk/; revision=9333
|
|
|
|
|
|
|
|
|
| |
2001-04-14 Jeffrey Stedfast <fejj@ximian.com>
* camel-cipher-context.c: Check to make sure the context is a
valid context in all the user functions.
svn path=/trunk/; revision=9314
|
|
|
|
|
|
|
|
|
|
| |
2001-04-13 Jon Trowbridge <trow@ximian.com>
* providers/imap/camel-imap-store.c (imap_disconnect):
s/imap_store/store/, fixing a typo that was causing the build to
fail.
svn path=/trunk/; revision=9306
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-04-13 Jon Trowbridge <trow@gnu.org>
* camel-filter-search.c (get_source): Make the (previously unused)
get-source command actually do the right thing, properly shrouding
any passed-in source and falling back to use the source attached
to the mime message.
2001-04-13 Jon Trowbridge <trow@gnu.org>
* filtertypes.xml: Add XML specs for source account filtering.
* filter-element.c (filter_element_new_type_name): Recognize
type "source", construct a FilterSource.
* filter-source.c: Added. A FilterElement for the account e-mail
comes from.
svn path=/trunk/; revision=9304
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* camel-object.c (camel_object_hook_event):
* camel-uid-cache.c (camel_uid_cache_get_new_uids):
* camel-url.c (camel_url_new_with_base): Plug leaks.
* camel-remote-store.c (camel_remote_store_init): Don't
re-initialize the folders hash table.
* providers/imap/camel-imap-store.c (imap_disconnect): Free
authtypes since they'll be re-read on re-connect.
(get_folder_info): Free folderinfos that we're discarding from the
list.
svn path=/trunk/; revision=9302
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-04-12 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-context.c (camel_pgp_context_get_type): Oops, lets not
get into a recursive call here ;-)
* tests/smime/pgp.c: Updated to reflect changes to the PGP code.
* tests/smime/pgp-mime.c: Same.
svn path=/trunk/; revision=9287
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-04-12 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-mime.c: Updated to reflect the few changes made to the
CamelPgpContext class.
* camel-pgp-context.c: Updated to subclass of CamelCipherContext.
* camel-cipher-context.[c,h]: New base class for
CamelPgpContext. Also contains the replacement for
CamelPgpValidity, CamelCipherValidity.
svn path=/trunk/; revision=9283
|
|
|
|
|
|
|
| |
* camel-mime-filter-crlf.c (filter): Fix a pair of array bounds
reads noted by purify
svn path=/trunk/; revision=9282
|
|
|
|
| |
svn path=/trunk/; revision=9281
|
|
|
|
|
|
|
|
| |
2001-04-12 Jeffrey Stedfast <fejj@ximian.com>
* camel.h: #include the pgp stuff.
svn path=/trunk/; revision=9280
|
|
|
|
|
|
|
|
| |
* providers/imap/camel-imap-message-cache.c
(camel_imap_message_cache_remove):
* camel-url.c (camel_url_to_string): Plug memory leaks.
svn path=/trunk/; revision=9271
|
|
|
|
| |
svn path=/trunk/; revision=9265
|
|
|
|
|
|
|
| |
* providers/imap/camel-imap-utils.c (imap_parse_string_generic):
Simplify peterw's imap_is_atom_char fix.
svn path=/trunk/; revision=9250
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-04-11 Jeffrey Stedfast <fejj@ximian.com>
* tests/smime/Makefile.am: Added pgp-mime.c to the tests.
* tests/smime/pgp-mime.c: Test suite for camel-pgp-mime.c functions.
* Makefile.am: Add camel-pgp-mime.[c,h] to the build.
* camel-pgp-mime.c: Made a number of fixes to get it to compile
and also fixed a few logic errors (mostly forgetting to reset
streams) so that it worked (thanks to the pgp-mime test program).
svn path=/trunk/; revision=9247
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-04-11 JP Rosevear <jpr@ximian.com>
* configure.in: Check if gethostbyname_r take five params
* acconfig.h: add GETHOSTBYNAME_R_FIVE_ARGS
2001-04-11 JP Rosevear <jpr@ximian.com>
* providers/imap/Makefile.am: user GNOME_INCLUDEDIR since gnome
files are included in the top level camel headers and the gtk
include dir is now versioned and such
* providers/local/Makefile.am: ditto
* providers/pop3/Makefile.am: ditto
* providers/smtp/Makefile.am: ditto
* providers/sendmail/Makefile.am: ditto
* camel-service.c: use five arg version of gethostbyname_r if
appropriate
(camel_get_host_byname): check if msg->herr is non-zero instead of
checking if msg->hp is null since we may not always have msg->hp
svn path=/trunk/; revision=9239
|
|
|
|
| |
svn path=/trunk/; revision=9238
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-04-11 Jeffrey Stedfast <fejj@ximian.com>
* camel-sasl-digest-md5.c (digest_response): Use
camel_charset_locale_name() to get the locale charset rather than
checking the CHARSET environment variable. This is a much less
ugly hack. Also: If we fail to be able to convert to UTF8, then
disavow all knowledge of the charset parameter.
* camel-charset-map.c (camel_charset_locale_name): New function to
return the locale charset (or NULL if US-ASCII).
svn path=/trunk/; revision=9237
|
|
|
|
|
|
|
|
|
|
| |
2001-04-11 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-context.c (camel_pgp_verify): Use
e_utf8_from_locale_string() rather than trying to do it manually
since Lauris's version works much better.
svn path=/trunk/; revision=9236
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-04-06 Jeffrey Stedfast <fejj@ximian.com>
* Makefile.am: Added camel-pgp-context.[c,h] to the build. Also
added tests/smime/pgp.c and Makefile.am
* tests/smime/pgp.c: New test suite for PGP functions.
* camel-pgp-context.c: Various fixes to get it to build.
svn path=/trunk/; revision=9213
|
|
|
|
|
|
|
|
|
|
|
| |
001-04-07 Peter Williams <peterw@ximian.com>
* providers/imap/camel-imap-utils.c (imap_parse_string_generic): It
would be a good idea to recognize '\0'. Before, this code was running
off the ends of strings and intermittently coredumping (if it didn't
hit an imap_atom_char first) -- whoops!
svn path=/trunk/; revision=9202
|
|
|
|
|
|
|
|
| |
2001-04-05 Not Zed <NotZed@Ximian.com>
* merge from evolution-0-10-branch to evolution-0-10-merge-0
svn path=/trunk/; revision=9194
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-04-03 Jeffrey Stedfast <fejj@ximian.com>
* Makefile.am: Added tests/ back in
* camel-mime-utils.c (header_decode_text): Ignore whitespace
between encoded words (there were a few cases where it didn't
before).
(header_encode_string): Preserve whitespace between words that are
to be encoded by encoding them too.
(header_encode_phrase): Same here but with phrases.
svn path=/trunk/; revision=9158
|
|
|
|
|
|
|
|
| |
server_flags field as well, and don't overwrite any flags set by
camel_folder_summary_info_new_from_message. Might help with some
of the flag problems...
svn path=/trunk/; revision=9149
|
|
|
|
|
|
|
| |
messages all-at-once, since they don't support the [#.MIME]
syntax.
svn path=/trunk/; revision=9145
|
|
|
|
|
|
|
|
| |
* providers/imap/camel-imap-folder.c (imap_sync): If we don't
change any flags or expunge, send a NOOP to give the server a
chance to send EXISTS, etc, messages.
svn path=/trunk/; revision=9142
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* camel-service.h: Remove the "quick_login" member, which is
unnecessary.
* providers/smtp/camel-smtp-transport.c (smtp_auth): Remove the
references to quick_login and fix this to use the CamelSasl
interfaces correctly to do the same thing.
(connect_to_server): Split this out of smtp_connect
(smtp_connect): Use connect_to_server. When re-EHLO'ing after
auth, ignore errors.
(query_auth_types): Use connect_to_server rather than
smtp_connect, so it doesn't try to authenticate. Add LOGIN
authtype to the list of authtypes to check for.
* providers/smtp/camel-smtp-provider.c
(camel_provider_module_init): Add LOGIN authtype to the authtypes
list explicitly.
* camel-sasl.c (camel_sasl_authtype_list): Don't list LOGIN here:
it's not a real SASL authtype and is only used for SMTP.
* camel-sasl-plain.c:
* camel-sasl-login.c:
* camel-sasl-kerberos4.c:
* camel-sasl-cram-md5.c:
* camel-sasl-anonymous.c:
* providers/pop3/camel-pop3-provider.c: Remove "quick_login"
argument from authtypes.
svn path=/trunk/; revision=9100
|
|
|
|
| |
svn path=/trunk/; revision=9099
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-04-02 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-context.c (camel_pgp_sign): mutex lock & unlock the context.
(camel_pgp_clearsign): Same.
(camel_pgp_verify): Same.
(camel_pgp_encrypt): Same.
(camel_pgp_decrypt): And finally here...
svn path=/trunk/; revision=9096
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-04-02 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-context.h: Update the function prototypes to match
those found in camel-pgp-context.c.
* camel-pgp-context.c: Updated.
* camel-pgp-mime.c (camel_pgp_mime_part_sign): Implemented.
(camel_pgp_mime_part_verify): Implemented.
(camel_pgp_mime_part_encrypt): Implemented.
(camel_pgp_mime_part_decrypt): Implemented.
svn path=/trunk/; revision=9095
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-04-01 Jeffrey Stedfast <fejj@ximian.com>
* camel-sasl-login.[c,h]: New files to handle the LOGIN SASL
mechanism.
* camel-sasl-plain.c: Removed the definition of
camel_sasl_login_authtype.
* camel-sasl.c (camel_sasl_new): Oops. I thought LOGIN was an
alias to PLAIN. I was wrong. These two SASL objects have to be
separate.
* providers/smtp/camel-smtp-transport.c (smtp_auth): Updated to
check for and use authmech->quick_login when available.
svn path=/trunk/; revision=9088
|
|
|
|
|
|
|
|
|
| |
2001-04-01 Jeffrey Stedfast <fejj@ximian.com>
* providers/pop3/camel-pop3-provider.c: Updated the authtypes here
too.
svn path=/trunk/; revision=9087
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-04-01 Jeffrey Stedfast <fejj@ximian.com>
* camel-sasl-plain.c:
* camel-sasl-anonymous.c:
* camel-sasl-digest-md5.c:
* camel-sasl-cram-md5.c:
* camel-sasl-kerberos4.c: Updated the authtype values.
* camel-service.h: Added another field to CamelServiceAuthType
that specifies whether or not the mechanism supports "quick auth"
which means that the client can send the initial challenge in the
AUTH request.
* camel-sasl.c (camel_sasl_new): Add support for LOGIN.
(camel_sasl_authtype_list): Here too.
(camel_sasl_authtype): And finally here.
* camel-sasl-plain.c: Define camel_sasl_login_authtype.
* providers/smtp/camel-smtp-transport.c (smtp_auth): Only unref
the SASL object if it exists.
svn path=/trunk/; revision=9086
|
|
|
|
|
|
|
|
|
| |
* providers/pop3/camel-pop3-store.c (connect_to_server,
query_auth_types, pop3_connect): Move things around here to make
this all work right again (so you don't get prompted for a
password when checking the supported authtypes.)
svn path=/trunk/; revision=9056
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-03-30 Jon Trowbridge <trow@ximian.com>
* e-html-utils.c (e_text_to_html_full): Add support for converting
e-mail addresses to links.
(is_email_address): Added. Identifies e-mail addresses.
(email_address_extract): Added. Extracts a copy of the e-mail
address from the text.
* e-html-utils.h (E_TEXT_TO_HTML_CONVERT_ADDRESSES): Added.
* e-url.c (e_url_shroud): Added. Copy a url, replacing
any plaintext passwords with a single *.
(e_url_equal): Compare two urls, taking into account that
they may or may not be shrouded.
2001-03-30 Jon Trowbridge <trow@ximian.com>
* camel-mime-message.c (camel_mime_message_set_source): Shrould
our source URL before putting it into X-Evolution-Source.
2001-03-30 Jon Trowbridge <trow@ximian.com>
* mail-display.c (mail_text_write): Add (commented-out)
E_TEXT_TO_HTML_CONVERT_ADDRESSES.
* mail-config.c (mail_config_get_account_by_source_url):
Call e_url_equal to compare URLs.
svn path=/trunk/; revision=9050
|
|
|
|
| |
svn path=/trunk/; revision=9037
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-03-29 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-store.c (get_folder_info): Don't
blindly append "/INBOX", construct a CamelURL and set the path
that way.
(parse_list_response_as_folder_info): Don't blindly append
"/<foldername>", construct a CamelURL and set the path that way
instead.
(get_folders_offline): And again here.
svn path=/trunk/; revision=9036
|
|
|
|
|
|
|
|
|
|
| |
2001-03-30 Not Zed <NotZed@Ximian.com>
* camel-service.c (camel_get_host_byname): Dont overwrite an
exception if we got one already. Added camel_operation status to
it, and comment out some debug.
svn path=/trunk/; revision=9034
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-03-29 Not Zed <NotZed@Ximian.com>
* providers/smtp/camel-smtp-transport.c (smtp_connect): Free host
name info when done ... blah blah.
* camel-sasl-kerberos4.c (krb4_challenge): Free host name info
after we're done with it.
* camel-sasl-digest-md5.c (digest_md5_challenge): Free host name
info after we're done with it.
* camel-remote-store.c (remote_connect): Free the host name info
from get_host after we're finished with it.
* camel-service.c (camel_get_host_byname): New function to
lookup a name, and still be cancellable.
(camel_free_host): And a function to free the structure
returned.
(camel_service_gethost): Call get_host_byname for this.
svn path=/trunk/; revision=9033
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-03-29 Jon Trowbridge <trow@ximian.com>
* printing/e-contact-print.c: Added #include <libgnome/gnome-paper.h>
* printing/e-contact-print-envelope.c: Added #include <time.h>
and #include <libgnome/gnome-paper.h>
* gui/component/select-names/e-select-names-completion.c
(match_email): Better handle matching of "nameless" contacts.
* backend/ebook/e-destination.c (e_destination_get_string): Better
handle the case of a "nameless" contact.
2001-03-29 Jon Trowbridge <trow@ximian.com>
* camel-filter-driver.c (camel_filter_driver_filter_message): Save
the source URL using camel_mime_message_set_source.
* camel-mime-message.c (camel_mime_message_set_source): Renamed
camel_mime_message_set_identity to this. Sets the X-Evolution-Source
header.
(camel_mime_message_get_source): Returns the X-Evolution-Source
header.
2001-03-29 Jon Trowbridge <trow@ximian.com>
* mail-callbacks.c: Added #include <time.h> to get things
to compile.
* mail-callbacks.c (mail_generate_reply): Look at the
X-Evolution-Source header, and try to find a corresponding
account. If this works, send the mail from this account.
If not, use the default account.
* mail-ops.c (send_queue_send): Strip out the X-Evolution-Source
header before sending.
* mail-config.c (mail_config_get_account_by_source_url): Added.
Look up accounts by source URL.
svn path=/trunk/; revision=9032
|
|
|
|
| |
svn path=/trunk/; revision=9024
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* camel-url.c (camel_url_to_string): change "gboolean show_passwd"
to "guint32 flags".
* tests/misc/url.c (main): Update calls to camel_url_to_string
* providers/imap/camel-imap-store.c (construct): Call
camel_url_to_string with flags to hide password, authtype, and
params to create the base_url.
(etc): Update for the fact that the base_url no longer has the "/"
at the end.
* camel-service.c (construct): Update calls to camel_url_to_string
(pass CAMEL_URL_HIDE_PASSWORD)
svn path=/trunk/; revision=9014
|
|
|
|
|
|
|
|
|
|
|
| |
2001-03-28 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-context.[c,h]: New class for PGP encrypting,
decrypting, signing and verifying. Next I'll be moving the
contents of mail/mail-crypto into Camel. These files will
basically replace mail/openpgp-utils.[c,h].
svn path=/trunk/; revision=9008
|
|
|
|
|
|
|
|
|
| |
2001-03-29 Not Zed <NotZed@Ximian.com>
* camel-folder-search.c (search_body_contains): Optimise the match
"" case, just match everything in the folder (if we have it).
svn path=/trunk/; revision=9007
|
|
|
|
| |
svn path=/trunk/; revision=9006
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-03-29 Not Zed <NotZed@Ximian.com>
* camel-vtrash-folder.c (vtrash_move_messages_to): Access the
folder directly from the message info.
(vtrash_move_messages_to): I think we also need to call the real
move_messages_to, and not try and bypass the lock, since we dont
have the lock for that folder.
* camel-vee-folder.h: Move CamelVeeMessageInfo to public, so
subclasses can get to it.
* camel-vee-folder.c (camel_vee_folder_add_folder): Dont let you
add a vfolder to itself.
(folder_changed):
(vee_folder_remove_folder):
(vee_folder_build_folder): Copy changes before triggering changed
events, so we can do them outside of locks.
(camel_vee_folder_get_message_folder): Removed function.
(camel_vee_folder_hash_folder): Made public (renamed from
hash_folder), simply for subclasses (probably not needed).
svn path=/trunk/; revision=9004
|
|
|
|
|
|
|
|
|
|
|
| |
2001-03-27 Jeffrey Stedfast <fejj@ximian.com>
* camel-service.c (get_path): Add the port (if user defined) to
the path to fix bug #1996.
Danw: I'm iffy on the "fix" so I'd like you to comment.
svn path=/trunk/; revision=8986
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-03-27 Jeffrey Stedfast <fejj@ximian.com>
* providers/pop3/camel-pop3-folder.c (pop3_sync): If we aren't
going to even check the resp/free buffer that gets returned from
camel_pop3_command, don't even bother using it. Send in NULL
instead.
(pop3_get_message): Check to make sure that the `result' string is
non-NULL. It's possible that some POP servers may return with
"+OK\r\n<message>..." rather than the expected
"+OK ### octets\r\n<message>..."
svn path=/trunk/; revision=8985
|
|
|
|
|
|
|
|
|
|
|
| |
2001-03-27 Not Zed <NotZed@Ximian.com>
* camel-folder-summary.c (camel_folder_summary_finalize): Unref
the html filter when done.
(summary_build_content_info): Disable using the html parser to
help index html mails until it gets sorted out.
svn path=/trunk/; revision=8975
|
|
|
|
|
|
|
|
|
| |
2001-03-27 Not Zed <NotZed@Ximian.com>
* camel-vee-folder.c (folder_changed): Fix a cut n paste bug, we
want uid_removed not uid_changed deref, fixes bug #1999.
svn path=/trunk/; revision=8973
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* camel-sasl.c (camel_sasl_authtype_list): add an argument to say
whether or not you want "PLAIN" in the list (so you don't end up
with "Password" twice in the config dialog).
* providers/imap/camel-imap-provider.c (camel_provider_module_init):
* providers/imap/camel-imap-store.c (query_auth_types): We don't
want PLAIN.
* providers/smtp/camel-smtp-provider.c (camel_provider_module_init):
* providers/smtp/camel-smtp-transport.c (query_auth_types): But we
do.
svn path=/trunk/; revision=8972
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* camel-provider.h: Add an "extra_conf" field to CamelProvider
with structures and defines and stuff, for providers to specify
additional configuration options that they want. Also add a
"supports ssl" flag to the provider flags.
* camel-remote-store.c: add a "default_ssl_port" field.
(remote_construct): If the URL has the "use_ssl" parameter, set
the store's use_ssl flag.
(remote_connect): If using SSL and no port specified, use the
default_ssl_port rather than the default_port.
* providers/smtp/camel-smtp-provider.c (smtp_provider): add
CAMEL_PROVIDER_SUPPORTS_SSL and CAMEL_URL_ALLOW_USER. (The config
gui code knows that the ALLOW_USER and ALLOW_AUTH go together.)
(ssmtp_provider): gone
* providers/smtp/camel-smtp-transport.c (smtp_construct): Set a
flag if "use_ssl" param is set.
(smtp_connect): Check the CamelSmtpTransport use_ssl flag rather
than checking if this is smtp or ssmtp.
* providers/imap/camel-imap-provider.c (imap_conf_entries): Add a
bunch of IMAP-specific configuration options, like "check for new
mail in all folders" (default TRUE), "show only subscribed
folders" (default TRUE), "ignore server-supplied namespace", and
"apply filters to INBOX" (not yet implemented).
(imap_provider): We support SSL and we no longer allow a path in
the URL. (namespace is handled via extra_conf)
(simap_provider): Gone
* providers/imap/camel-imap-store.c (camel_imap_store_init): Set
default_ssl_port, don't set CAMEL_STORE_SUBSCRIPTIONS here
(construct): remove simap stuff, deal with "use_lsub",
"namespace", "check_all", and "filter" parameters. Set base_url
to not include params.
(imap_store_setup_online): Don't ask for the namespace if it was
set explicitly. Don't get subscribed folders if !use_lsub.
(imap_concat): Fix a bug.
(get_folder_info): Support for not checking all folders.
* providers/pop3/camel-pop3-provider.c (pop3_conf_entries): "keep
on server" (currently still implemented by the mailer code, not
here), "delete after N days" (not yet implemented).
(pop3_provider): we support SSL
(spop_provider): gone
* providers/pop3/camel-pop3-store.c (camel_pop3_store_init): Set
default_ssl_port
(pop3_connect): Remove spop code
svn path=/trunk/; revision=8968
|
|
|
|
|
|
|
| |
* camel-url.c (camel_url_new_with_base): Fix parsing of params.
(output_param): And unparsing...
svn path=/trunk/; revision=8967
|
|
|
|
|
|
|
| |
* providers/imap/camel-imap-folder.c (imap_get_full_name): Rewrite
to use imap_store->namespace, not service->url->path
svn path=/trunk/; revision=8966
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-03-26 Jeffrey Stedfast <fejj@ximian.com>
* camel-vee-folder.c (vee_folder_construct): Move all of the
camel_vee_folder_construct() internals here.
(camel_vee_folder_construct): This function basically becomes a
wrapper for vee_folder_construct and also checks to make sure that
the UNMATCHED vfodler is constructed otherwise constructs it.
(camel_vee_folder_new): Call vee_folder_construct() instead so
that we don't get into a dead-lock.
svn path=/trunk/; revision=8964
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-03-26 Jeffrey Stedfast <fejj@ximian.com>
* camel-store.c (init_trash): Use camel_vtrash_folder_new() to
create the vtrash folder now.
* camel-vtrash-folder.[c,h]: New subclass of CamelVeeFolder for
our vTrash folders.
* camel-folder.c (camel_folder_copy_messages_to): Don't watch for
vtrash folders anymore.
(camel_folder_move_messages_to): Same.
* camel-vee-folder.c (camel_vee_folder_class_init): Update.
(vee_move_messages_to): Rewrite to use the new move API.
* camel-filter-driver.c (do_copy): Updated to reflect
copy_message_to changes. Create a temporary uid array and use
that.
(do_move): Same.
(camel_filter_driver_filter_message): And again, here...
* providers/imap/camel-imap-folder.c (imap_copy_messages_to):
Update to the new API.
(imap_move_messages_to): Same.
(get_uid_set): New function to create a `set' string based on an
array of UIDs for use with imap_copy_messages_to.
* camel-folder.c (camel_folder_copy_messages_to): Replaces
camel_folder_copy_message_to
(camel_folder_move_message_to): Replaces
camel_folder_move_message_to.
svn path=/trunk/; revision=8960
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-03-27 Not Zed <NotZed@Ximian.com>
* camel-vee-store.c (vee_get_folder): Added folder_created event
here.
* camel-vee-folder.c (unmatched_finalise): Removed, moved into
main finalise code.
(message_changed): Just create a new change entry and promote it
to a folder_changed thing.
(vee_sync): Always rebuild folder on sync, even when not expunge.
(folder_changed): If not autoupdating, make sure we remove any
removed entries.
(vee_folder_build_folder):
(vee_folder_remove_folder): NOP if we're called on
folder_unmatched.
(vee_search_by_expression): Only search each folder once. Should
we also order the result in summary order?
2001-03-20 Not Zed <NotZed@Ximian.com>
* camel-store.c (init_trash): Fix calling for vee_folder_new().
* camel-folder-summary.c (camel_folder_summary_remove_index):
Optimise slightly, use ptr_array_remove_index rather than have to
search for the index by using summary_remove.
* camel-vee-folder.h: Removed local member from VeeFolder, since
it was never used.
* camel-vee-store.c (camel_vee_store_finalise): Setup finalise
function.
* camel-vee-folder.c (camel_vee_folder_set_expression): New
function to set the query of an existing vfolder.
(camel_vee_folder_construct): New function for
convenience/subclasses.
(camel_vee_folder_new): Removed exception parameter, no longer
needed (since we dont search yet).
(camel_vee_folder_new): Changed to use folder_construct, and no
longer raise the folder created signal.
(vee_folder_build_folder): Make it return error on exception, so
we can work without exceptions.
(vee_folder_remove_folder): Use remove index rather than
remove_uid, this is ok since we have the summary locked for our
own access.
(camel_vee_folder_add_folder): Only add the folder to the
unmatched private if it is not a private folder.
(camel_vee_folder_remove_folder): Only remove the folder from
unmatched if it is not private.
(vee_expunge): Just call sync with expunge set.
(vee_sync): If expunging, also refresh the search.
(vee_folder_build_folder): We do our own locking now, removed from
callers, also trigger changed events here too (within locks),
fixed callers appropriately.
(vee_folder_remove_folder): Do our own locking, and trigger
changed events.
(vee_folder_add_info): Renamed of vee_folder_add, we now take a
hash of the folder name, rather than use the folders address.
(hash_folder): Convert a folder name into an 8 character hash.
(vee_get_message, vee_search_by_expression, vee_set_message_flags,
vee_set_message_user_flag, vee_move_message_to): Changed the uid
to be an 8 byte hash + original uid, with no ':' anymore.
svn path=/trunk/; revision=8957
|
|
|
|
|
|
|
|
|
|
| |
2001-03-26 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-utils.c (header_decode_text): When writing the last
token (if not rfc2047 encoded), don't use g_string_append_len, use
append_latin1.
svn path=/trunk/; revision=8954
|
|
|
|
|
|
|
|
|
|
| |
2001-03-26 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-message.c (write_to_stream): Don't spew a warning if
the message-id wasn't set by the application, not a big deal since
we create one right here.
svn path=/trunk/; revision=8952
|
|
|
|
|
|
|
|
| |
* camel-sasl-plain.c (camel_sasl_plain_authtype): Rename this from
"PLAIN" to "Password": there's no reason the user needs to see the
SASL mechanism name.
svn path=/trunk/; revision=8950
|
|
|
|
|
|
|
|
|
|
| |
* providers/imap/camel-imap-command.c (camel_imap_command): keep a
reference on the store's current_folder.
* providers/imap/camel-imap-store.c (camel_imap_store_finalize):
(imap_disconnect): unref the current_folder before clearing it.
svn path=/trunk/; revision=8945
|
|
|
|
|
|
| |
* camel-url.c (camel_url_get_param): Add missing accessor.
svn path=/trunk/; revision=8943
|
|
|
|
|
|
|
| |
* camel-session.c (camel_session_get_provider): New. Return
the provider for a URL.
svn path=/trunk/; revision=8941
|
|
|
|
| |
svn path=/trunk/; revision=8934
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* camel-url.c (camel_url_new_with_base): New URL parser with full
RFC1808 relative URL support. Yum.
(camel_url_new): Wrapper around camel_url_new_with_base now.
Removed the CamelException since no one ever used it...
* tests/Makefile.am: add misc subdir
* tests/misc/url.c: relative URL test cases from RFC 1808
* camel-session.c (camel_session_get_service): Update
camel_url_new call.
svn path=/trunk/; revision=8933
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-03-25 Jeffrey Stedfast <fejj@ximian.com>
* camel-filter-driver.c (do_copy): Don't use copy_to if the source
folder doesn't support summary info's.
(do_move): Same.
(camel_filter_driver_filter_message): And again here. I think
this will fix the problem of "colour" tags not staying with the
message when it's copied to a folder during the filter process.
svn path=/trunk/; revision=8925
|
|
|
|
|
|
|
|
|
|
|
| |
2001-03-24 Jeffrey Stedfast <fejj@ximian.com>
* camel-sasl-digest-md5.c (digest_response): Do charset conversion
on the username param here if needed.
(parse_server_challenge): Protect against possibly empty-string
charset values.
svn path=/trunk/; revision=8920
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-03-23 Jon Trowbridge <trow@ximian.com>
* gui/widgets/e-minicard-widget.c (e_minicard_widget_set_card):
Added. Call me old-fashioned, but I just prefer to have a real
API rather than doing everything via gtk_object_get/set-type
calls.
(e_minicard_widget_set_arg): Changed to call
e_minicard_widget_set_card.
* backend/ebook/e-book-util.c: Small changes to get rid of
compiler warnings. (Casting out const, removed unused variables,
etc.) Removed some debugging messages.
* gui/component/addressbook-factory.c (main): Added call
to e_address_popup_factory_init.
* gui/component/e-address-popup.c: Added. A popup gadget that is
invoked (as a bonobo control) when an address is left-clicked in
the mailer. The addressbook is queries, and the address is either
displayed as a minicard (if it already exists) or in a "generic
format". A button is provided for editting/adding the contact.
Some of the semantics of this widget are a bit... non-standard,
because of bonobo issues. I can't really seem to replicate
popup-menu behavior because of how bonobo propogates events, etc.
so I've tried to produce something that I think is non-annoying.
YMMV.
2001-03-23 Jon Trowbridge <trow@ximian.com>
* mail-display.c (handle_embedded_address_object): #ifdef away
some code I don't quite want to delete yet.
(html_button_press_event): Remove some of Radek's placeholder
code, replace it with code to create my AddressPopup bonobo
control.
* mail-format.c: Remove some obsolete code that if #ifdef-ed out
a while ago.
* mail-ops.c (send_queue_send): Strip out the X-Evolution-Identity
header when sending.
2001-03-23 Jon Trowbridge <trow@ximian.com>
* camel-filter-driver.c (camel_filter_driver_filter_message):
Don't call camel_mime_message_set_identity. (The call is
commented out, left over from some earlier experimentation that I
want to be able to remember later...)
* camel-mime-message.c (camel_mime_message_set_identity): Added.
A function to set the X-Evolution-Identity header.
svn path=/trunk/; revision=8916
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* providers/imap/camel-imap-command.c (imap_read_response): Don't
look at untagged responses other than "* BYE"...
(camel_imap_response_free): ...do it here instead...
(camel_imap_response_free_without_processing): ...but not here.
* providers/imap/camel-imap-folder.c (camel_imap_folder_selected):
Remove the "EXISTS" line from the response so
camel_imap_response_free won't try to process it.
(camel_imap_folder_selected): If we get an EXISTS response mixed
in with the FETCH responses, record the new EXISTS value.
Use camel_imap_response_free_without_processing so that an EXISTS
response won't cause a loop.
(imap_rescan): Use camel_imap_response_free_without_processing.
(imap_update_summary): Use
camel_imap_response_free_without_processing. If an EXISTS response
shows up, call imap_update_summary again to get the new messages.
(imap_protocol_get_summary_specifier): Use BODY.PEEK[0], not
RFC822.HEADER for prev IMAP4rev1, since the FETCH parser won't
deal with RFC822.HEADER responses.
* providers/imap/camel-imap-store.c (get_folder_info): Fix an
uninitialized variable
svn path=/trunk/; revision=8905
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* camel-provider.h: (CamelProvider) add a "GList *authtypes", so
you can get the list of authtypes used by a provider without
needing to have an actual CamelService object handy. (Will be
needed by the new config druid.)
(CAMEL_PROVIDER_ALLOWS, CAMEL_PROVIDER_NEEDS): New macros to test
the URL part stuff, since the way it works is too complicated and
everyone always does it wrong.
* camel-service.c (camel_service_query_auth_types): Remove the
@connected arg again: if you don't want to connect, you can just
get the list of authtypes off the provider.
(camel_service_free_auth_types): Remove this. All existing
implementations do authtypes the same way, so just say the caller
should "g_list_free" the list. (Oh, look, removing this function
doesn't actually cause the mailer to not build. How 'bout that.)
(construct, get_path): Use the new URL part macros.
* camel-remote-store.c (remote_query_auth_types): Update
(remote_free_auth_types): Nuke
(camel_remote_store_authtype_list): New function for use by
subclasses.
* providers/imap/camel-imap-provider.c:
* providers/pop3/camel-pop3-provider.c:
* providers/smtp/camel-smtp-provider.c: Update CamelProvider
structures.
(camel_provider_module_init): Put all the SSL parts together so
there's only 1 #ifdef. Set up the provider authtypes field using
the SASL, CamelRemoteStore, and standard authtypes, as
appropriate. Copy that from the normal provider to the SSL
provider.
* providers/local/camel-local-provider.c:
* providers/sendmail/camel-sendmail-provider.c:
* camel-session.c: Update CamelProvider structures.
* providers/imap/camel-imap-store.c (query_auth_types):
* providers/pop3/camel-pop3-store.c (query_auth_types): Update
* providers/smtp/camel-smtp-store.c (query_auth_types): Update.
Remove the no_authtype, because that's what "ALLOW_AUTH" rather
than "NEED_AUTH" means.
(free_auth_types): Nuke.
svn path=/trunk/; revision=8872
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-03-21 Jeffrey Stedfast <fejj@ximian.com>
* camel-filter-driver.c (camel_filter_driver_filter_message):
Return -1 on fail.
(camel_filter_driver_filter_folder): Same.
(camel_filter_driver_filter_mbox): Same.
(camel_filter_driver_filter_folder): Return -1 if an exception was
set as well.
2001-03-19 Jeffrey Stedfast <fejj@ximian.com>
* camel-tcp-stream-openssl.c (camel_tcp_stream_openssl_finalize):
Free the expected host.
(camel_tcp_stream_openssl_new): Now takes a Service and an
expected_host. Set them.
svn path=/trunk/; revision=8871
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* providers/imap/camel-imap-store.c
(camel_imap_store_check_online): Function to check if the store is
online and set an exception if not. Currently controlled by an
environment variable, but eventually there will be both a global
(session-level) setting and a per-store setting.
(construct): Set up storage_path and base_url here rather than at
connect-time.
(imap_auth_loop): Split out from imap_connect.
(imap_setup_online): Split out from imap_connect. Do the
post-authentication connection setup, and cache the results to
disk.
(imap_setup_offline): Set up a CamelImapStore with information
saved from a previous imap_setup_online.
(imap_connect): If online, do connect_to_server(),
imap_auth_loop(), and imap_setup_online(). Otherwise, do
imap_setup_offline().
(get_folder, get_folder_info): Add offline support.
(create_folder, subscribe_folder, unsubscribe_folder): Disable
these when offline (for now).
* providers/imap/camel-imap-folder.c (camel_imap_folder_new):
Remove the sync'ing-with-server stuff... it's done by
camel_imap_folder_selected now, which only gets called if the
store is online.
(camel_imap_folder_selected): add the code removed from
camel_imap_folder_new. Besides simplifying the folder_new and
summary_new code, this also means now that we'll DTRT if a
folder's UIDVALIDITY changes while we're connected. Also, when
that happens, clear the message cache explicitly.
(imap_refresh_info, imap_sync): These are no-ops when offline.
(imap_expunge, imap_append_message, imap_copy_message_to,
imap_search_by_expression): These don't yet work offline.
(imap_get_message, camel_imap_folder_fetch_data): Return an error
when trying to fetch a non-cached body part when we're offline.
* providers/imap/camel-imap-summary.c (camel_imap_summary_new):
Rewrite to not check the validity here. (We'll do it from
camel_imap_folder_selected instead.)
* providers/imap/camel-imap-command.c (camel_imap_command): Call
camel_imap_folder_selected even when the selection is all we're
doing, to match the changes in camel-imap-folder.c.
* providers/imap/camel-imap-message-cache.c
(camel_imap_message_cache_clear): New function to clear out a
message cache.
svn path=/trunk/; revision=8851
|
|
|
|
|
|
|
|
| |
2001-03-19 Christopher James Lahey <clahey@ximian.com>
* Makefile.am (INCLUDES): Added $(EXTRA_GNOME_CFLAGS)
svn path=/trunk/; revision=8838
|
|
|
|
|
|
|
|
|
|
| |
2001-03-19 Jeffrey Stedfast <fejj@ximian.com>
* providers/pop3/camel-pop3-store.c (pop3_connect): Set the errbuf
to NULL after freeing it? I don't think this should fix bug #1801
but I guess it can't hurt.
svn path=/trunk/; revision=8818
|
|
|
|
|
|
|
|
|
| |
2001-03-18 Jeffrey Stedfast <fejj@ximian.com>
* camel-remote-store.c (remote_recv_line): Protect against a
possibly NULL exception.
svn path=/trunk/; revision=8811
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-03-18 Jeffrey Stedfast <fejj@ximian.com>
* camel-filter-driver.c (camel_filter_driver_filter_message):
Document and modify to return a boolean value denoting whether or
not errors occured during processing.
(camel_filter_driver_filter_mbox): Same as above and also modified
to check return codes of filter_message rather than relying only
on whether or not the exception was set (as it's possible to pass
in NULL for the exception).
(camel_filter_driver_filter_folder): Same as above.
* camel-mime-utils.c (header_param_list_format_append): Quote the
param value if it contains whitespace as well.
svn path=/trunk/; revision=8808
|
|
|
|
|
|
|
|
|
| |
2001-03-18 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-utils.c (header_param_list_format_append): Quote the
param value if it contains whitespace as well.
svn path=/trunk/; revision=8804
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-03-17 Jeffrey Stedfast <fejj@ximian.com>
* Makefile.am: Don't include system include dir.
* camel.c: Use quotes around the nss.h include so it doesn't try
to use the systen nss.h file.
* camel-tcp-stream-ssl.c: Same here.
svn path=/trunk/; revision=8786
|
|
|
|
|
|
|
|
|
|
| |
2001-03-17 Not Zed <NotZed@Ximian.com>
* providers/local/camel-maildir-summary.c (maildir_summary_sync):
Modified patch from Dan Berger <dberger@ix.netcom.com> to re-check
the maildir directory for new/updated messages at sync time.
svn path=/trunk/; revision=8781
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-03-17 Not Zed <NotZed@Ximian.com>
* camel-folder.c (camel_folder_ref_message_info): Implemented.
(ref_message_info): And default implementation.
* camel-folder.h: Added ref_message_info virtual method.
2001-03-16 Not Zed <NotZed@Ximian.com>
* camel-folder-thread.c
(camel_folder_thread_messages_new_summary): New function to create
a thread tree from a supplied summary array.
(camel_folder_thread_messages_destroy): Handle thread trees
generated by the above function properly.
svn path=/trunk/; revision=8774
|
|
|
|
|
|
|
|
|
|
| |
2001-03-16 Jeffrey Stedfast <fejj@ximian.com>
* camel-private.h: Same.
* camel-remote-store.h: Fixed #include to use <>'s instead of ""'s
svn path=/trunk/; revision=8767
|
|
|
|
| |
svn path=/trunk/; revision=8765
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-03-16 Jeffrey Stedfast <fejj@ximian.com>
* camel-tcp-stream-ssl.c (ssl_bad_cert): Print info about the
issuer of the certificate.
* providers/smtp/camel-smtp-transport.c (smtp_connect): Use
camel_tcp_stream_get_socket().
* camel-tcp-stream-openssl.c (stream_get_socket): Implemented.
* camel-tcp-stream-ssl.c (stream_get_socket): Implemented.
* camel-tcp-stream-raw.c (stream_get_socket): Implemented.
* camel-tcp-stream.c (camel_tcp_stream_get_socket): New function.
svn path=/trunk/; revision=8764
|
|
|
|
|
|
|
|
| |
2001-03-16 Kjartan Maraas <kmaraas@gnome.org>
* providers/pop3/camel-pop3-folder.c: Added #include <config.h>
svn path=/trunk/; revision=8762
|
|
|
|
|
|
|
| |
* camel-mime-utils.c (header_msgid_generate): Don't use
getdomainname: it's NIS crap, not DNS.
svn path=/trunk/; revision=8761
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-03-15 Jeffrey Stedfast <fejj@ximian.com>
* camel.c (camel_init): Don't use the hardcoded cert db directory,
use the one passed in.
* camel-tcp-stream-ssl.c (ssl_get_client_auth): Wrote the default
implementation. Not that we'll use this though, since this is the
default implementation provided by NSS anyway. This more or less
serves as a reference in case we want to change anything.
(ssl_auth_cert): Same.
(ssl_bad_cert): Changed the prompt string and free it when we're
done.
svn path=/trunk/; revision=8753
|
|
|
|
| |
svn path=/trunk/; revision=8744
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
caching of message parts, but NOT any actual disconnected support.
(But it should speed up IMAP use.)
* providers/imap/camel-imap-message-cache.c: New class for caching
message data to disk, and removing it when it's no longer
relevant. Will eventually also support merging message parts
together to save on files. Or maybe using a db instead of files?
* providers/imap/camel-imap-private.h: Add a cache_lock to
CamelImapFolderPrivate. This lock must be recursive, so make both
locks EMutexes rather than GMutex.
* providers/imap/camel-imap-folder.c (parse_fetch_response): "The
only FETCH response parser you need!" Replaces the various
almost-correct bits of code formerly scattered throughout this
file with a single fully-correct function that can handle any
FETCH response at any time, so we don't get confused by seeing a
flags update when we were only expecting a message body, etc.
(camel_imap_folder_fetch_data): FETCH a message body part either
from the cache or the server
(camel_imap_folder_changed): Remove expunged messages from the
message cache.
(camel_imap_folder_new): Change to take a directory instead of a
summary file name. Create a CamelImapMessageCache for the folder.
(imap_finalize): Unref the message cache.
(camel_imap_folder_selected, imap_rescan, get_content,
get_message, imap_get_message, imap_update_summary): Redone a
bunch to use parse_fetch_data, CamelImapMessageCache, etc.
* providers/imap/camel-imap-store.c (get_folder): Pass directory
name to camel_imap_folder_new, not summary filename. Use
e_path_to_physical to generate a path with /subfolders/ inserted
between directory components.
* providers/imap/camel-imap-wrapper.c (camel_imap_wrapper_new):
Call camel_imap_folder_fetch_data (with cache_only TRUE) and if
the data is cached, return an online datawrapper rather than an
offline one.
(write_to_stream): Use camel_imap_folder_fetch_data (with
cache_only FALSE) here too
* providers/imap/camel-imap-utils.c (imap_skip_list): Renamed from
skip_list and made non-static.
svn path=/trunk/; revision=8743
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-03-15 Jeffrey Stedfast <fejj@ximian.com>
* camel-tcp-stream-ssl.h: Uninclude prnetdb.h since it's not
needed here.
* providers/smtp/camel-smtp-transport.c: #include prnetdb.h here
instead of making camel-tcp-stream-ssl.h include it. Prevents some
header bloat.
* providers/smtp/Makefile.am: Include the NSPR_CFLAGS and
NSS_CFLAGS.
svn path=/trunk/; revision=8738
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-03-14 Jeffrey Stedfast <fejj@ximian.com>
* providers/smtp/camel-smtp-transport.c (smtp_connect): Update for
using CamelTcpStreams and also for using SSL.
* providers/smtp/libcamelsmtp.urls: defined "ssmtp"
* providers/smtp/camel-smtp-provider.c: Defined the Secure SMTP
provider.
(camel_provider_module_init): Register the Secure SMTP provider.
svn path=/trunk/; revision=8728
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-03-14 Jeffrey Stedfast <fejj@ximian.com>
* providers/smtp/libcamelsmtp.urls: defined "ssmtp"
* providers/smtp/camel-smtp-provider.c: Defined the Secure SMTP
provider.
(camel_provider_module_init): Register the Secure SMTP provider.
svn path=/trunk/; revision=8726
|