Jeffrey Stedfast [Fri, 26 Oct 2001 20:03:02 +0000 (20:03 +0000)]
Lets try putting a camel_stream_reset() here. Logic being that the stream
2001-10-26 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-message-cache.c
(camel_imap_message_cache_get): Lets try putting a
camel_stream_reset() here. Logic being that the stream may have
been read from since it was cached and thus our caller may try
reading from it and get no data from it since it is already at the
EOS. This may fix bug #12943.
5 [Fri, 26 Oct 2001 00:37:52 +0000 (00:37 +0000)]
Remove the stupid warning that should never have been there in the first
2001-10-25 <NotZed@Ximian.com>
* camel-search-private.c (utf8_get): Remove the stupid warning
that should never have been there in the first place.
* camel-sasl-digest-md5.c (digest_response): s/iconv/e_iconv/
* camel-pgp-context.c (pgp_verify): "
* camel-mime-utils.c (rfc2047_decode_word, rfc2047_decode_word,
append_8bit, rfc2047_encode_word, rfc2184_decode,
header_decode_param): "
* camel-mime-part-utils.c (convert_buffer, convert_buffer): "
* camel-mime-filter-charset.c (reset, complete, filter): "
Dan Winship [Thu, 25 Oct 2001 00:27:39 +0000 (00:27 +0000)]
Don't let fi->name be NULL.
* providers/imap/camel-imap-store.c (unsubscribe_folder): Don't
let fi->name be NULL.
Jeffrey Stedfast [Wed, 24 Oct 2001 22:15:47 +0000 (22:15 +0000)]
updated the SIMULATE_FLAKY_NETWORK code
Jeffrey Stedfast [Wed, 24 Oct 2001 21:09:35 +0000 (21:09 +0000)]
Same as in the TcpStreamRaw code. (stream_write): And again here...
2001-10-24 Jeffrey Stedfast <fejj@ximian.com>
* camel-stream-fs.c (stream_read): Same as in the TcpStreamRaw code.
(stream_write): And again here...
* camel-tcp-stream-raw.c (stream_read): Handle the EAGAIN error
case as well.
(stream_write): Same here, this might fix the SMTP truncation
thing? I hope?
Dan Winship [Tue, 23 Oct 2001 16:18:47 +0000 (16:18 +0000)]
Remove an extra * in one of the regexps that glibc apparently doesn't mind
* camel-mime-utils.c (mail_list_magic): Remove an extra * in one
of the regexps that glibc apparently doesn't mind but bsd does.
3 [Tue, 23 Oct 2001 06:20:06 +0000 (06:20 +0000)]
made d(x) x recompile again.
2001-10-23 <NotZed@Ximian.com>
* providers/local/camel-mbox-summary.c: made d(x) x recompile again.
2 [Mon, 22 Oct 2001 22:40:58 +0000 (22:40 +0000)]
No, use Storing, as the other code does :p (spool_summary_check): Check
2001-10-22 <NotZed@Ximian.com>
* providers/local/camel-spool-summary.c (summary_rebuild): No, use
Storing, as the other code does :p
(spool_summary_check): Check for consistency.
Jon Trowbridge [Mon, 22 Oct 2001 22:34:46 +0000 (22:34 +0000)]
s/summarising/summarizing/. (spool_summary_check): s/summarise/summarize/.
2001-10-22 Jon Trowbridge <trow@ximian.com>
* providers/local/camel-spool-summary.c (summary_rebuild):
s/summarising/summarizing/.
(spool_summary_check): s/summarise/summarize/.
Jeffrey Stedfast [Mon, 22 Oct 2001 21:50:21 +0000 (21:50 +0000)]
If we are kludging around a inline-pgp signed part, do some charset
2001-10-22 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-mime.c (camel_pgp_mime_part_verify): If we are
kludging around a inline-pgp signed part, do some charset
conversion to protect any 8bit text.
Michael Zucci [Mon, 22 Oct 2001 21:08:05 +0000 (21:08 +0000)]
Use search_type_mlist for mailing list searches.
* camel-filter-search.c, camel-folder-search.c (check_header): Use
search_type_mlist for mailing list searches.
* camel.c (camel_init): call camel-mime-utils-init func.
* camel-mime-utils.c: Changed mail mail_list_magic to include a
domain part, also pre-compile all the patterns. They are all
backward compatible except List-Id: which now uses the
mail-address-like <list-name.host.name> part rather than the
plain-text part (which might've been blank anyway).
(camel_mime_utils_init): Initialisation function to setup any
static data required by camel-mime-utils at run-time. We now
setup the base64/charset class tables here, so it doesn't need to
be done statically.
(camel_mime_special_table, camel_mime_base64_rank): No longer
statically initialise these.
(main): Removed + the tests at the end of the file.
(header_raw_check_mailing_list): Dont compile regex's here,
already compiled in utils_init. Use the regex patterns to remove
leading <'s from addresses. Also, if there is a domain part
matched, add that after a '@' is added.
camel-search-private.c:
(camel_search_header_match): Added SEARCH_TYPE_MLIST for mlist
search types. It ignores the domain part if either (but not both)
of the values dont have it.
Michael Zucci [Mon, 22 Oct 2001 19:12:06 +0000 (19:12 +0000)]
(camel_search_header_match): Oops, missing i=0.
Dan Winship [Mon, 22 Oct 2001 18:46:46 +0000 (18:46 +0000)]
Pass a CORBA_Environment to bonobo_config_get_string so it doesn't g_warn
* e-passwords.c (e_passwords_get_password): Pass a
CORBA_Environment to bonobo_config_get_string so it doesn't g_warn
on error. (Since the "error" is most likely just that the password
isn't cached.)
(e_passwords_remember_password, e_passwords_get_password,
e_passwords_add_password): Change "if (foo) { entire function; }"
to "if (!foo) return;"
* e-html-utils.c (special_chars): Don't allow single quote or
backtick in email addresses, or pipes following URLs.
2 [Mon, 22 Oct 2001 18:29:01 +0000 (18:29 +0000)]
Match check against all addresses in a multiple address match. Should fix
2001-10-22 <NotZed@Ximian.com>
* camel-search-private.c (camel_search_header_match): Match check
against all addresses in a multiple address match. Should fix
#13051.
Dan Winship [Mon, 22 Oct 2001 17:44:50 +0000 (17:44 +0000)]
Add a hack: if the multipart/signed part has a "x-inline-pgp-hack"
* camel-pgp-mime.c (camel_pgp_mime_part_verify): Add a hack: if
the multipart/signed part has a "x-inline-pgp-hack" parameter in
its Content-Type, don't pass the MIME headers as part of the data
to be verified.
Rodrigo Moya [Mon, 22 Oct 2001 17:10:14 +0000 (17:10 +0000)]
added $GNOME_INCLUDEDIR to INCLUDES, needed for latest libgnome, which
2001-10-22 Rodrigo Moya <rodrigo@ximian.com>
* Makefile.am: added $GNOME_INCLUDEDIR to INCLUDES, needed for latest
libgnome, which install headers in $(prefix)/gnome-1.0
Jeffrey Stedfast [Mon, 22 Oct 2001 02:08:10 +0000 (02:08 +0000)]
Only do the rawtext checks if the part is a text part, otherwise don't
2001-10-21 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-part-utils.c
(simple_data_wrapper_construct_from_parser): Only do the rawtext
checks if the part is a text part, otherwise don't bother wasting
cpu cycles.
Jeffrey Stedfast [Mon, 22 Oct 2001 00:45:25 +0000 (00:45 +0000)]
Updated comments to make the code a bit more clear.
2001-10-21 Jeffrey Stedfast <fejj@ximian.com>
* camel-store.c (camel_folder_info_build): Updated comments to
make the code a bit more clear.
1 [Sun, 21 Oct 2001 20:27:43 +0000 (20:27 +0000)]
Dont do the macro stuff - basically so you can actually debug calls.
2001-10-21 <NotZed@Ximian.com>
* camel-store.c (CS_CLASS): Dont do the macro stuff - basically so
you can actually debug calls.
(camel_store_uri_cmp): New function to compare store objects.
* camel-vee-folder.c (vee_folder_add_info): oops, dont free the
vuid, since its alloca'd now.
(folder_changed_change): Kill a compile warning.
1 [Sun, 21 Oct 2001 18:18:51 +0000 (18:18 +0000)]
oops, dont free the vuid, since its alloca'd now.
2001-10-21 <NotZed@Ximian.com>
* camel-vee-folder.c (vee_folder_add_info): oops, dont free the
vuid, since its alloca'd now.
0 [Sat, 20 Oct 2001 01:01:06 +0000 (01:01 +0000)]
If no exception supplied, use a local one. (move_message_to): Set the seen
2001-10-20 <NotZed@Ximian.com>
* camel-folder.c (move_messages_to): If no exception supplied, use
a local one.
(move_message_to): Set the seen flag also when we delete it.
Jeffrey Stedfast [Fri, 19 Oct 2001 23:32:05 +0000 (23:32 +0000)]
If the destination folder is the vfolder source folder, then
2001-10-19 Jeffrey Stedfast <fejj@ximian.com>
* camel-vtrash-folder.c (vtrash_move_messages_to): If the
destination folder is the vfolder source folder, then
set_message_flags on it.
9 [Fri, 19 Oct 2001 22:25:54 +0000 (22:25 +0000)]
When registering provider, translate all strings.
2001-10-19 <NotZed@Ximian.com>
* camel-session.c (register_provider): When registering provider,
translate all strings.
Michael Zucci [Fri, 19 Oct 2001 21:26:18 +0000 (21:26 +0000)]
camel-vee-folder.c (folder_changed_change): Change logic, we always add
camel-vee-folder.c
(folder_changed_change): Change logic, we always add changed stuff
if it now matches, but dont remove it unless its auto-remove, only
propagate changes for it.
(vee_set_message_flags): Call parent method after doing our work.
(vee_set_message_user_flag): Same here.
Michael Zucci [Fri, 19 Oct 2001 20:32:22 +0000 (20:32 +0000)]
Fixes a deadlock. camel-vee-folder.c: (folder_changed_change): Ok, so dont
Fixes a deadlock.
camel-vee-folder.c:
(folder_changed_change): Ok, so dont hold the subfolder lock for
the whole duration of the changed event, although we probably
should, requires a recursive mutex.
Michael Zucci [Fri, 19 Oct 2001 07:03:50 +0000 (07:03 +0000)]
Typo, srlen aint right.
Michael Zucci [Fri, 19 Oct 2001 06:39:54 +0000 (06:39 +0000)]
camel-vee-folder.c: (folder_changed_change_uid): Use alloca for vuid, and
camel-vee-folder.c:
(folder_changed_change_uid): Use alloca for vuid, and not
sprintf(".lengths")
(vee_search_by_expression): Dont use sprintf for vuid.
(vee_search_by_uids): "
(vee_folder_add_info): "
(folder_changed_remove_uid): "
(folder_changed_change): "
(folder_changed_change_uid): Also check folder_unmatched for
changed uid's so we properly update/propagate unmatched changes.
9 [Fri, 19 Oct 2001 05:33:21 +0000 (05:33 +0000)]
Lock the right lock for unmatched subfolder list stuff. If the sub folder
2001-10-19 <NotZed@Ximian.com>
* camel-vee-folder.c (camel_vee_folder_remove_folder): Lock the
right lock for unmatched subfolder list stuff. If the sub folder
is deleted & part of unmatched, or the last ref to the sub folder
is gone from unmatched, blow it away completely from unmatched,
but only do it once.
(vee_folder_remove_folder): Added arg to kill unmatched
unconditionally. Also handle deleted folders, always remove
stuff.
(folder_changed_change): Lock subfolder lock for entirety of
operation, and also check to see if the subfolder is still there
before doing any fancy work (incase it got removed while we were
waiting to execute).
* camel-store.c (camel_store_unsubscribe_folder): If we are
unsubscribing from a folder we have loaded, set the folder
deleted, as with the delete_folder case.
Jeffrey Stedfast [Fri, 19 Oct 2001 02:34:13 +0000 (02:34 +0000)]
If a charset isn't specified or claims to be utf-8, check the validity of
2001-10-18 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-part-utils.c
(simple_data_wrapper_construct_from_parser): If a charset isn't
specified or claims to be utf-8, check the validity of the text
and if it's invalid, set the rawtext bit to TRUE. If the charset
is x-unknown or some other x- charset, always set the rawtext bit
to TRUE.
8 [Fri, 19 Oct 2001 01:54:42 +0000 (01:54 +0000)]
Added CAMEL_CFLAGS so we get the right iconv stuff, patch from Yanko
2001-10-18 <NotZed@Ximian.com>
* providers/(imap|local|pop3|sendmail|smtp)/Makefile.am: Added
CAMEL_CFLAGS so we get the right iconv stuff, patch from Yanko
Kaneti <yaneti@declera.com>
Jeffrey Stedfast [Fri, 19 Oct 2001 00:30:36 +0000 (00:30 +0000)]
Make sure the cancel_fd isn't -1.
2001-10-18 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-context.c (crypto_exec_with_passwd): Make sure the
cancel_fd isn't -1.
Jeffrey Stedfast [Thu, 18 Oct 2001 23:15:34 +0000 (23:15 +0000)]
Flush the stream here, not sure it really matters but it might (hopefully)
2001-10-18 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-message-cache.c (insert_finish): Flush
the stream here, not sure it really matters but it might
(hopefully) fix bug #12943.
Jeffrey Stedfast [Thu, 18 Oct 2001 22:48:26 +0000 (22:48 +0000)]
Make user-cancellable.
2001-10-18 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-context.c (crypto_exec_with_passwd): Make
user-cancellable.
Jeffrey Stedfast [Thu, 18 Oct 2001 22:26:06 +0000 (22:26 +0000)]
String cleanup for bug #6640.
2001-10-18 Jeffrey Stedfast <fejj@ximian.com>
* providers/local/camel-local-provider.c: String cleanup for bug
#6640.
Jeffrey Stedfast [Thu, 18 Oct 2001 20:38:45 +0000 (20:38 +0000)]
Fix my Cyrus imapd workaround...instead of checking to see if info->flags
2001-10-18 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-folder.c (imap_sync_online): Fix my
Cyrus imapd workaround...instead of checking to see if info->flags
== FLAGGED, just check to see if it contains any IMAP flags.
7 [Wed, 17 Oct 2001 22:59:15 +0000 (22:59 +0000)]
Use '.' as the inbox name for filter new messages test.
2001-10-17 <NotZed@Ximian.com>
* providers/local/camel-maildir-folder.c
(camel_maildir_folder_new): Use '.' as the inbox name for filter
new messages test.
7 [Wed, 17 Oct 2001 22:44:27 +0000 (22:44 +0000)]
New function to clone a folderinfo tree.
2001-10-17 <NotZed@Ximian.com>
* camel-store.c (camel_folder_info_clone): New function to clone a
folderinfo tree.
Jeffrey Stedfast [Wed, 17 Oct 2001 22:23:29 +0000 (22:23 +0000)]
Same as maildir and mbox append-message.
2001-10-17 Jeffrey Stedfast <fejj@ximian.com>
* providers/local/camel-mh-folder.c (mh_append_message): Same as
maildir and mbox append-message.
* providers/local/camel-maildir-folder.c (maildir_append_message):
Same as mbox append.
* camel-exception.c (camel_exception_set): Make sure the new
description isn't the same as the old description pointer before
freeing the old one.
(camel_exception_setv): Don't free the old description until we
set the new one this way we can reuse the old description in the
new description.
* providers/local/camel-mbox-folder.c (mbox_append_message): If
errno == EINTR, then we got a user-cancel so set the exception
appropriately so that we don't make the user shit his pants.
Jeffrey Stedfast [Wed, 17 Oct 2001 22:16:46 +0000 (22:16 +0000)]
Make sure the new description isn't the same as the old description
2001-10-17 Jeffrey Stedfast <fejj@ximian.com>
* camel-exception.c (camel_exception_set): Make sure the new
description isn't the same as the old description pointer before
freeing the old one.
(camel_exception_setv): Don't free the old description until we
set the new one this way we can reuse the old description in the
new description.
* providers/local/camel-mbox-folder.c (mbox_append_message): If
errno == EINTR, then we got a user-cancel so set the exception
appropriately so that we don't make the user shit his pants.
Jeffrey Stedfast [Wed, 17 Oct 2001 21:33:41 +0000 (21:33 +0000)]
Add an optimization for when destination folder is the same as the source
2001-10-17 Jeffrey Stedfast <fejj@ximian.com>
* camel-filter-driver.c (do_copy): Add an optimization for when
destination folder is the same as the source folder.
7 [Wed, 17 Oct 2001 20:38:15 +0000 (20:38 +0000)]
Patch from Danw, Use unread count of -1 to mark unflagged messages. Make
2001-10-17 <NotZed@Ximian.com>
* providers/imap/camel-imap-store.c (get_folder_info_online):
(parse_list_response_as_folder_info): Patch from Danw, Use unread
count of -1 to mark unflagged messages. Make sure any folder we
dont lookup explicitly is marked as -1. Should fix #9947 and
friends.
* providers/local/camel-mbox-summary.c (mbox_summary_sync): Only
touch the summary if the timestamp or size changed.
Jeffrey Stedfast [Wed, 17 Oct 2001 20:23:42 +0000 (20:23 +0000)]
Set the DELETED flag on directly on the info if the source folder doesn't
2001-10-17 Jeffrey Stedfast <fejj@ximian.com>
* camel-filter-driver.c (camel_filter_driver_filter_message): Set
the DELETED flag on directly on the info if the source folder
doesn't have summary capability.
Not Zed [Wed, 17 Oct 2001 04:09:17 +0000 (04:09 +0000)]
As below.
2001-10-17 Not Zed <NotZed@Ximian.com>
* camel-tcp-stream-raw.c (stream_write): As below.
* camel-stream-fs.c (stream_write): If not checking cancellation,
make sure we write out everything asked of us.
Jeffrey Stedfast [Wed, 17 Oct 2001 00:12:33 +0000 (00:12 +0000)]
Rearange the order of the gpg options slightly otherwise it might try to
2001-10-16 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-context.c (pgp_verify): Rearange the order of the gpg
options slightly otherwise it might try to use "--no-tty" as the
filename to verify :-)
Jeffrey Stedfast [Tue, 16 Oct 2001 21:47:34 +0000 (21:47 +0000)]
If CAMEL_DEBUG is defined, print some useful ref/unref info.
2001-10-16 Jeffrey Stedfast <fejj@ximian.com>
* camel-object.[c,h]: If CAMEL_DEBUG is defined, print some useful
ref/unref info.
* providers/imap/camel-imap-store.c (delete_folder): Fixed an
assignment warning.
* camel-uid-cache.c (camel_uid_cache_new): Make sure that the
parent directory exists before trying to open the filename, if it
doesn't, create it.
6 [Tue, 16 Oct 2001 20:35:49 +0000 (20:35 +0000)]
If no content, dont try and decode further and spit meaningless warnings.
2001-10-16 <NotZed@Ximian.com>
* camel-mime-utils.c (header_address_decode): If no content, dont
try and decode further and spit meaningless warnings.
Jeffrey Stedfast [Tue, 16 Oct 2001 19:03:16 +0000 (19:03 +0000)]
Only perform the operation on the folder if the folder has summary
2001-10-16 Jeffrey Stedfast <fejj@ximian.com>
* camel-filter-driver.c (do_flag): Only perform the operation on
the folder if the folder has summary capability, else just poke
the info directly. Fixes the "Filters don't work" bug.
(do_score): Same.
(do_colour): And here too.
Jeffrey Stedfast [Mon, 15 Oct 2001 22:10:19 +0000 (22:10 +0000)]
Save the errno before calling fcntl so fcntl doesn't overwrite errno in
2001-10-15 Jeffrey Stedfast <fejj@ximian.com>
* camel-stream-fs.c (stream_read): Save the errno before calling
fcntl so fcntl doesn't overwrite errno in case of a previous
error.
(stream_write): Same.
Jeffrey Stedfast [Sat, 13 Oct 2001 18:21:31 +0000 (18:21 +0000)]
Replace the Bcc headers in a single location and don't flush the data
2001-10-13 Jeffrey Stedfast <fejj@ximian.com>
* providers/smtp/camel-smtp-transport.c (smtp_data): Replace the
Bcc headers in a single location and don't flush the data unless
the write was successful.
Jeffrey Stedfast [Fri, 12 Oct 2001 23:09:34 +0000 (23:09 +0000)]
oops, it should remove the bcc header, not the cc header
Jeffrey Stedfast [Fri, 12 Oct 2001 22:45:10 +0000 (22:45 +0000)]
Remove the stripheader filter from the build.
2001-10-12 Jeffrey Stedfast <fejj@ximian.com>
* Makefile.am: Remove the stripheader filter from the build.
* camel-mime-filter-stripheader.[c,h]: Removed.
* providers/smtp/camel-smtp-transport.c (smtp_data): Check the
return value of camel_stream_flush to make sure it flushed the
data successfully before continuing. Don't use the stripheader
filter, it was completely broken - instead remove the header and
set it again after we send.
2 [Fri, 12 Oct 2001 22:27:56 +0000 (22:27 +0000)]
Unhook from all events before removing folder.
2001-10-12 <NotZed@Ximian.com>
* camel-vee-folder.c (camel_vee_folder_remove_folder): Unhook from
all events before removing folder.
(camel_vee_folder_add_folder): Hook onto delete event.
(camel_vee_folder_finalise): Unhook from deleted event for suibfolder.
(subfolder_deleted): When the folder is deleted, remove it from
the vfolder automagically.
Chris Toshok [Fri, 12 Oct 2001 22:19:34 +0000 (22:19 +0000)]
new parameter to e_passwords_init, and add prototype for
2001-10-12 Chris Toshok <toshok@ximian.com>
* e-passwords.h: new parameter to e_passwords_init, and add
prototype for e_passwords_clear_component_passwords.
* e-passwords.c (e_passwords_init): copy off the component name.
(e_passwords_shutdown): free/NULL the component name.
(e_passwords_clear_component_passwords): new function. remove the
subtree rooted at /Passwords/<ComponentName>.
(e_passwords_remember_password): use component_name when building
up the path.
(e_passwords_get_password): same.
(e_passwords_add_password): remove/free the currently stored
session password for this key if there is one, before adding the
new one.
Chris Toshok [Fri, 12 Oct 2001 02:01:38 +0000 (02:01 +0000)]
change prototype for e_passwords_get_password.
2001-10-11 Chris Toshok <toshok@ximian.com>
* e-passwords.h: change prototype for e_passwords_get_password.
* e-passwords.c (e_passwords_get_password): remove 'const' from
return type - the return type is now allocated and must be freed
by the caller.
1 [Thu, 11 Oct 2001 23:39:08 +0000 (23:39 +0000)]
convert the uids list to a subset appropriate for each subfolder before
2001-10-11 <NotZed@Ximian.com>
* camel-vee-folder.c (vee_search_by_uids): convert the uids list
to a subset appropriate for each subfolder before trying to search
on it.
1 [Thu, 11 Oct 2001 22:08:20 +0000 (22:08 +0000)]
Removed charset/locale charset lookup and iconv_open/close functions,
2001-10-11 <NotZed@Ximian.com>
* camel-charset-map.[ch]: Removed charset/locale charset lookup
and iconv_open/close functions, moved to gal. Fixed all callers.
Jeffrey Stedfast [Thu, 11 Oct 2001 21:57:20 +0000 (21:57 +0000)]
Same.
2001-10-11 Jeffrey Stedfast <fejj@ximian.com>
* camel-tcp-stream-ssl.c (ssl_cert_is_saved): Same.
* camel-tcp-stream-openssl.c (ssl_cert_is_saved): Instead of
opening the file, stat it and make sure that it belongs to us.
Chris Toshok [Thu, 11 Oct 2001 20:13:23 +0000 (20:13 +0000)]
open the bonobo config db for our passwords. (e_passwords_shutdown): sync
2001-10-11 Chris Toshok <toshok@ximian.com>
* e-passwords.c (e_passwords_init): open the bonobo config db for
our passwords.
(e_passwords_shutdown): sync and unref the bonobo db, and clear
out the per session hash.
(e_passwords_forget_passwords): remove the bonobo config db
/Passwords path, and free up the session hash (but don't destroy
it).
(e_passwords_remember_password): remove the key/value from the
session hash, after inserting it into the bonobo db.
(e_passwords_get_password): look up a session password for the
uri, and if it's not there, consult the bonobo db.
(e_passwords_ask_password): quiet gcc's warnings, and only consult
the toggle button state if we actaully created it.
Jeffrey Stedfast [Wed, 10 Oct 2001 22:13:05 +0000 (22:13 +0000)]
Same hack as below.
2001-10-10 Jeffrey Stedfast <fejj@ximian.com>
* camel-tcp-stream-openssl.c (ssl_verify): Same hack as below.
* camel-tcp-stream-ssl.c (ssl_bad_cert): Hack around the fact that
adding a cert to nss's certdb seems to not work.
0 [Wed, 10 Oct 2001 21:50:42 +0000 (21:50 +0000)]
Only re-build the folder if we're expunging. Also only clear out the
2001-10-10 <NotZed@Ximian.com>
* camel-vee-folder.c (vee_sync): Only re-build the folder if we're
expunging. Also only clear out the changed folders list if we're
expungung and everything worked.
Michael Zucci [Wed, 10 Oct 2001 21:50:30 +0000 (21:50 +0000)]
slight wording changes, mainly LGPL=>GPL
Jeffrey Stedfast [Wed, 10 Oct 2001 21:36:22 +0000 (21:36 +0000)]
Added a hack for Solaris systems.
2001-10-10 Jeffrey Stedfast <fejj@ximian.com>
* camel-charset-map.c (camel_charset_map_init): Added a hack for
Solaris systems.
0 [Wed, 10 Oct 2001 19:48:27 +0000 (19:48 +0000)]
oops, we want get_unread_message_count, not get_message_count!
2001-10-10 <NotZed@Ximian.com>
* providers/local/camel-maildir-store.c (scan_dir): oops, we want
get_unread_message_count, not get_message_count!
2001-10-09 <NotZed@Ximian.com>
* camel-service.c (camel_service_disconnect): Duplicate connect
code that unregisters a cancel op if we created one.
Jeffrey Stedfast [Wed, 10 Oct 2001 19:03:29 +0000 (19:03 +0000)]
updated
9 [Tue, 9 Oct 2001 23:36:31 +0000 (23:36 +0000)]
Another go at getting the logic right again. Make transients only update
2001-10-09 <NotZed@Ximian.com>
* camel-operation.c (camel_operation_progress): Another go at
getting the logic right again. Make transients only update after
5 seconds (CAMEL_OPERATION_TRANSIENT_DELAY)
(camel_operation_end): Likewise.
Michael Zucci [Tue, 9 Oct 2001 23:13:21 +0000 (23:13 +0000)]
Forgot a little bit of debug.
9 [Tue, 9 Oct 2001 22:26:01 +0000 (22:26 +0000)]
Implement.
2001-10-09 <NotZed@Ximian.com>
* providers/local/camel-spool-folder.c (spool_search_by_uids):
Implement.
* providers/imap/camel-imap-search.c (imap_body_contains): If
searching a sub-set of the total message count, then use a UID
range to search only specific messages.
* camel-vee-folder.c (vee_folder_change_match): Removed.
(folder_changed_add_uid): Helper func for changed code.
(folder_changed_remove_uid): "
(folder_changed_change_uid): "
(folder_changed): Rewritten. Supports proper auto-updating of
changes, but not removals till a sync occurs.
(vee_search_by_uids): Implement.
(folder_changed): Changed to call an async threaded function to do
the actual folder updating.
* camel-folder-summary.c (camel_flag_list_copy): New func to copy
a whole list of flags.
(camel_tag_list_copy): New func to copy a whole list of flags.
* providers/imap/camel-imap-folder.c (imap_search_by_uids):
Implement.
* providers/local/camel-local-folder.c (local_search_by_uids):
Implement.
* camel-folder.c (camel_folder_search_by_uids): New function,
search a subset of uid's.
(search_by_uids): Default impl, return error.
Dan Winship [Tue, 9 Oct 2001 03:07:39 +0000 (03:07 +0000)]
replace the ever-growing list of gbooleans with a single guint32 for
* camel-folder.h (struct _CamelFolder): replace the ever-growing
list of gbooleans with a single guint32 for flags.
* camel-folder.c: Update folder flag setting/checking.
* providers/pop3/camel-pop3-folder.c (camel_pop3_folder_init):
* providers/nntp/camel-nntp-folder.c (camel_nntp_folder_new):
* providers/local/camel-spool-folder.c (spool_init,
camel_spool_folder_new):
* providers/local/camel-maildir-folder.c (camel_maildir_folder_new):
* providers/local/camel-local-folder.c (local_init):
* providers/imap/camel-imap-folder.c (camel_imap_folder_init,
camel_imap_folder_new):
* camel-vtrash-folder.c (camel_vtrash_folder_init):
* camel-vee-folder.c (camel_vee_folder_init):
* camel-digest-folder.c (camel_digest_folder_init): update folder
flag setting.
Dan Winship [Mon, 8 Oct 2001 16:29:32 +0000 (16:29 +0000)]
Unlock the store before returning error. (noted by NotZed)
* providers/imap/camel-imap-store.c (get_folder_online): Unlock
the store before returning error. (noted by NotZed)
Jeffrey Stedfast [Sat, 6 Oct 2001 23:44:46 +0000 (23:44 +0000)]
Fix a slight error in logic. Just because the last word was an encoded
2001-10-06 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-utils.c (header_decode_text): Fix a slight error in
logic. Just because the last word was an encoded word doesn't mean
we ignore the lwsp padding, we only ignore it if the last word and
*this* word are encoded.
Jeffrey Stedfast [Sat, 6 Oct 2001 07:19:41 +0000 (07:19 +0000)]
Implemented uuencoding and decoding. (complete): Implemented uuencoding
2001-10-06 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-filter-basic.c (filter): Implemented uuencoding and
decoding.
(complete): Implemented uuencoding and decoding.
* camel-mime-utils.c (uuencode_close): New function to flush the
uu encoder.
(uuencode_step): New function to uuencode a block of data.
5 [Fri, 5 Oct 2001 21:49:17 +0000 (21:49 +0000)]
Use a folder_subscribed event rather than a folder_created one.
2001-10-05 <NotZed@Ximian.com>
* providers/imap/camel-imap-store.c (subscribe_folder): Use a
folder_subscribed event rather than a folder_created one.
(unsubscribe_folder): Similarly for unsubscribed/deleted.
(create_folder): Emit a folder_created event on the folders we
added. Not sure hsould probably check which ones are new and
which ones are just existing ones?
(delete_folder): Emit a folder_deletd event when we've deleted the
folder. Part of fix for #11831.
* camel-store.c (camel_store_class_init): Added
folder_subscribed/unsubscribed events.
Jeffrey Stedfast [Fri, 5 Oct 2001 19:38:24 +0000 (19:38 +0000)]
Turn off warnings. (get_name): Same.
2001-10-05 Jeffrey Stedfast <fejj@ximian.com>
* camel-service.c (camel_service_finalize): Turn off warnings.
(get_name): Same.
* camel-sasl.c (sasl_challenge): Turn off warnings.
* camel-tcp-stream.c (tcp_connect): Turn off warnings.
(tcp_getsockopt): Same.
(tcp_setsockopt): Here too.
(tcp_get_socket): And here.
* camel-folder.c (folder_sync): Turn off warnings.
(expunge): Same.
(append_message): Here too.
(get_message): And here.
(search_by_expression): And again here.
(folder_changed): Here too.
* camel-store.c (get_folder): Set an exception and turn off
debugging g_warnings.
(create_folder): Same.
(delete_folder): Here too.
(rename_folder): And here.
(get_trash): And here.
(get_folder_info): Same.
(free_folder_info): And again here.
(camel_folder_info_build): Here too.
(folder_subscribed): Same.
(subscribe_folder): Here too.
(unsubscribe_folder): And here.
5 [Fri, 5 Oct 2001 18:52:21 +0000 (18:52 +0000)]
Try harder to get broken names out of addresses. Unencoded ,'s in names
2001-10-05 <NotZed@Ximian.com>
* camel-mime-utils.c (header_decode_mailbox): Try harder to get
broken names out of addresses. Unencoded ,'s in names will still
break it, but well what can you do eh?
(header_decode_mailbox): Always add .'s into address we've scanned
past a '.', even if we can't decode the next part. Fix for some
annoying bug #.
4 [Fri, 5 Oct 2001 18:08:22 +0000 (18:08 +0000)]
Change the order of execution slightly. We delete the folder first, then
2001-10-04 <NotZed@Ximian.com>
* camel-store.c (camel_store_delete_folder): Change the order of
execution slightly. We delete the folder first, then call the
classes delete folder, then cleanup the hashtable afterwards.
This is so deletes of vfolders work, since vee-store uses the
folder hashtable to store all of is vfolders :-/
Jeffrey Stedfast [Thu, 4 Oct 2001 18:12:36 +0000 (18:12 +0000)]
tedfast <fejj@ximian.com>
tedfast <fejj@ximian.com>
* camel-service.c (camel_service_connect): Unregister the
operation before unreffing it.
Jeffrey Stedfast [Thu, 4 Oct 2001 18:12:22 +0000 (18:12 +0000)]
Unregister the operation before unreffing it.
2001-10-04 Jeffrey Stedfast <fejj@ximian.com>
* camel-service.c (camel_service_connect): Unregister the
operation before unreffing it.
Dan Winship [Thu, 4 Oct 2001 17:45:42 +0000 (17:45 +0000)]
Make this dup the strings it's passed. (*) Add lots of docs.
* e-passwords.c (e_passwords_add_password): Make this dup the
strings it's passed.
(*) Add lots of docs.
3 [Wed, 3 Oct 2001 23:57:41 +0000 (23:57 +0000)]
Remove now unused 'recents' array/freeing func.
2001-10-03 <NotZed@Ximian.com>
* providers/imap/camel-imap-folder.c (camel_imap_folder_changed):
Remove now unused 'recents' array/freeing func.
* camel-object.c (camel_object_trigger_event): Oops, always run
the prep function, even if we have no hooks listening. Causes
incoming imap recents to get ignored bythe camel-folder filter
inbox code.
3 [Wed, 3 Oct 2001 23:05:06 +0000 (23:05 +0000)]
Dont explicitly save metadata, its saved in summary_sync.
2001-10-03 <NotZed@Ximian.com>
* providers/local/camel-local-folder.c (local_sync): Dont
explicitly save metadata, its saved in summary_sync.
* providers/local/camel-mh-summary.c: Call superclass.
(mh_summary_check): Dont save ibex.
* providers/local/camel-maildir-summary.c: Call superclass method.
(maildir_summary_check): Dont save ibex explictly.
* providers/local/camel-mbox-summary.c: Call super-class sync when
done, saves summary/ibex, etc.
(mbox_summary_check): Dont save ibex.
(mbox_summary_sync): Call summary_check rather than trying to
update from our known position.
* providers/local/camel-local-summary.c
(camel_local_summary_check): Dont save the summary or index here.
(local_summary_sync): Save the summary/index here.
3 [Wed, 3 Oct 2001 22:17:10 +0000 (22:17 +0000)]
Added MATCH_NEWLINE flag, -> REG_NEWLINE.
2001-10-03 <NotZed@Ximian.com>
* camel-search-private.c (camel_search_build_match_regex): Added
MATCH_NEWLINE flag, -> REG_NEWLINE.
* camel-lock-helper.c: Include <string.h> to kill some warnings.
* camel-filter-search.c (get_full_header): Put \n's between each
line we generate.
(header_full_regex): Dont drop the first argument to the command
-> empty matches!
(header_full_regex): Set match_newline for building regex.
(body_regex): And here too. These all fix #9877.
Jeffrey Stedfast [Wed, 3 Oct 2001 21:25:04 +0000 (21:25 +0000)]
Call camel_folder_delete() on the folder if it's "alive".
2001-10-03 Jeffrey Stedfast <fejj@ximian.com>
* camel-store.c (camel_store_delete_folder): Call
camel_folder_delete() on the folder if it's "alive".
* camel-folder.c (camel_folder_delete): Mark the folder as
deleted, perform any folder specific cleanup and emit the deleted
event.
(camel_folder_sync): Only sync the folder if it hasn't been
deleted.
(camel_folder_expunge): Same.
Dan Winship [Wed, 3 Oct 2001 15:50:58 +0000 (15:50 +0000)]
Strange are the ways of alloca. Fixes 11543.
* providers/local/camel-local-provider.c (local_url_equal):
Strange are the ways of alloca. Fixes 11543.
Jeffrey Stedfast [Wed, 3 Oct 2001 02:56:40 +0000 (02:56 +0000)]
remove unused variable
Jeffrey Stedfast [Wed, 3 Oct 2001 02:55:50 +0000 (02:55 +0000)]
Import the certificate if the user accepts it.
2001-10-02 Jeffrey Stedfast <fejj@ximian.com>
* camel-tcp-stream-ssl.c (ssl_bad_cert): Import the certificate if
the user accepts it.
2 [Wed, 3 Oct 2001 01:56:44 +0000 (01:56 +0000)]
for hashing/comparing local url's, we ignore trailing /'s in paths (maybe
2001-10-02 <NotZed@Ximian.com>
* providers/local/camel-local-provider.c (local_url_hash,
local_url_equal): for hashing/comparing local url's, we ignore
trailing /'s in paths (maybe shuld handle multiple /'s too).
(camel_provider_module_init): Use local_url_hash/equal for all functions.
2 [Wed, 3 Oct 2001 00:12:49 +0000 (00:12 +0000)]
Change to camel_charset_iconv_open/close.
2001-10-02 <NotZed@Ximian.com>
* camel-sasl-digest-md5.c (digest_response): Change to
camel_charset_iconv_open/close.
* camel-pgp-context.c (pgp_verify): Change to
camel_charset_iconv_open/close.
* camel-mime-part-utils.c (convert_buffer): Change to
camel_charset_iconv_open().
* camel-mime-filter-charset.c
(camel_mime_filter_charset_new_convert, finalise): Change to
camel_charset_iconv_open, etc.
* camel-mime-utils.c: Use the camel_charset_iconv_open/close()
functions to open/close it.
* camel-charset-map.c (camel_charset_iconv_open): New function,
wrap iconv_open, so we can cache ic's.
(camel_charset_iconv_close): Likewise for close.
(camel_charset_map_init,shutdown): Init/free iconv cache.
Jeffrey Stedfast [Tue, 2 Oct 2001 23:32:14 +0000 (23:32 +0000)]
Revert my x-unknown special-case hack - this may mask other problems.
2001-10-02 Jeffrey Stedfast <fejj@ximian.com>
* camel-charset-map.c (camel_charset_to_iconv): Revert my
x-unknown special-case hack - this may mask other problems.
* camel-mime-utils.c (rfc2047_decode_word): If the iconv
conversion fails, for whatever reason, retry using the user's
locale charset.
2 [Tue, 2 Oct 2001 22:03:13 +0000 (22:03 +0000)]
Go back to using the store url's path, not the toplevel_dir thing.
2001-10-02 <NotZed@Ximian.com>
* providers/local/camel-maildir-store.c (get_folder_info): Go back
to using the store url's path, not the toplevel_dir thing.
* camel-operation.c (camel_operation_progress): Fix the progress
logic, so we dont update too often.
2 [Tue, 2 Oct 2001 20:33:11 +0000 (20:33 +0000)]
Change the lock to a recursive e-mutex. (camel_object_hook_event):
2001-10-02 <NotZed@Ximian.com>
* camel-object.c (camel_object_get_hooks): Change the lock to a
recursive e-mutex.
(camel_object_hook_event): Maintain list length of hook list.
(camel_object_unhook_event): "
(camel_object_unhook_event): If we are in an event, just mark the
pair as removed, without removing it.
(camel_object_trigger_event): Before running events, copy the
list, and also ignore 'removed' events. After running events, if
we're all out of events, then free up any pending-removed events.
(camel_object_free_hooks): Add some new assertions on the state of
the hook structure.
Removed the #error if threads not defined. It _should_ actually
work without threads.
(camel_object_free_hooks): Free mutex when done.
Dan Winship [Tue, 2 Oct 2001 19:13:36 +0000 (19:13 +0000)]
Shoo! Shoo!
Jeffrey Stedfast [Mon, 1 Oct 2001 22:33:24 +0000 (22:33 +0000)]
Remove any cached messages that belonged to the deleted folder.
2001-10-01 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-store.c (delete_folder): Remove any
cached messages that belonged to the deleted folder.
(subscribe_folder): Don't ever let the info->name be NULL and
don't use the stupid concat kludge to generate the URL, just use a
CamelURL to do it. This way we don't risk breaking stuff by having
a url like imap://fejj@imap//folder
Jeffrey Stedfast [Mon, 1 Oct 2001 20:31:03 +0000 (20:31 +0000)]
If the charset is x-unknown, return the locale_charset.
2001-10-01 Jeffrey Stedfast <fejj@ximian.com>
* camel-charset-map.c (camel_charset_to_iconv): If the charset is
x-unknown, return the locale_charset.
Dan Winship [Mon, 1 Oct 2001 19:43:14 +0000 (19:43 +0000)]
Fix up the provider flags to specify things more completely so we don't
* camel-provider.h: Fix up the provider flags to specify things
more completely so we don't have to hardcode provider names in the
mailer.
* providers/local/camel-local-provider.c: MH, mbox, and Maildir
are LOCAL. MH and mbox are no longer STORAGE by the new
definition.
* camel-session.c (vee_provider): The vfolder store is a STORAGE.
Dan Winship [Mon, 1 Oct 2001 18:09:53 +0000 (18:09 +0000)]
Don't munge the URL; CamelSession's caching relies on it not changing.
* providers/local/camel-local-store.c (construct): Don't munge the
URL; CamelSession's caching relies on it not changing. Instead,
add a toplevel_dir field to CamelLocalStore, and set that to the
path, but always ending with /.
(camel_local_store_finalize): Free toplevel_dir
(camel_local_store_get_toplevel_dir): Return toplevel_dir rather
than url->path.
* providers/local/*: Lots of s/url->path/toplevel_dir/
* providers/local/camel-spool-store.c (construct): Likewise, don't
try to strip a trailing / from url->path here, but I didn't make
the corresponding toplevel_dir change, because there's no good
reason someone should expect "/var/spool/mail/danw/" to work since
that's not a directory.
Dan Winship [Mon, 1 Oct 2001 16:27:02 +0000 (16:27 +0000)]
New, copied/renamed from mailer and gnome-libs.
* e-passwords.c (e_passwords_ask_password): New, copied/renamed
from mailer and gnome-libs.
Dan Winship [Mon, 1 Oct 2001 13:52:24 +0000 (13:52 +0000)]
if STAT returns 0, don't bother sending UIDL. Speeds things up slightly
* providers/pop3/camel-pop3-folder.c (pop3_refresh_info): if STAT
returns 0, don't bother sending UIDL. Speeds things up slightly
and also works around a bug in a particular random POP server.
(ximian bug 11369).
Chris Toshok [Sun, 30 Sep 2001 05:16:25 +0000 (05:16 +0000)]
copy/rename the mail specific password stuff here.
2001-09-30 Chris Toshok <toshok@ximian.com>
* e-passwords.c: copy/rename the mail specific password stuff
here.
* e-passwords.h: same.
Jeffrey Stedfast [Sat, 29 Sep 2001 23:47:04 +0000 (23:47 +0000)]
Add --no-secmem-warning and --no-greeting to the gpg command-line options.
2001-09-29 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-context.c (pgp_sign): Add --no-secmem-warning and
--no-greeting to the gpg command-line options.
(pgp_clearsign): Same.
(pgp_verify): Here too.
(pgp_encrypt): And here.
(pgp_decrypt): And finally here.
Jeffrey Stedfast [Fri, 28 Sep 2001 23:31:42 +0000 (23:31 +0000)]
Same here.
2001-09-28 Jeffrey Stedfast <fejj@ximian.com>
* camel-filter-search.c (get_source): Same here.
* camel-mime-message.c (camel_mime_message_set_source): Don't use
the e_url_shroud hack, use CamelURL functions instead.