| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
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.
svn path=/trunk/; revision=13687
|
|
|
|
|
|
|
|
|
|
| |
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.
svn path=/trunk/; revision=13662
|
|
|
|
| |
svn path=/trunk/; revision=13643
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
svn path=/trunk/; revision=13641
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
svn path=/trunk/; revision=13639
|
|
|
|
|
|
|
|
|
|
| |
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.
svn path=/trunk/; revision=13607
|
|
|
|
|
|
|
|
|
| |
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.
svn path=/trunk/; revision=13602
|
|
|
|
|
|
|
|
|
|
|
| |
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.
svn path=/trunk/; revision=13600
|
|
|
|
|
|
|
|
|
|
|
| |
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.
svn path=/trunk/; revision=13575
|
|
|
|
|
|
|
|
|
|
| |
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.
svn path=/trunk/; revision=13573
|
|
|
|
| |
svn path=/trunk/; revision=13572
|
|
|
|
|
|
|
|
|
| |
2001-10-10 Jeffrey Stedfast <fejj@ximian.com>
* camel-charset-map.c (camel_charset_map_init): Added a hack for
Solaris systems.
svn path=/trunk/; revision=13569
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
svn path=/trunk/; revision=13561
|
|
|
|
| |
svn path=/trunk/; revision=13559
|
|
|
|
|
|
|
|
|
|
|
| |
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.
svn path=/trunk/; revision=13536
|
|
|
|
| |
svn path=/trunk/; revision=13534
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
svn path=/trunk/; revision=13532
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
svn path=/trunk/; revision=13509
|
|
|
|
|
|
|
| |
* providers/imap/camel-imap-store.c (get_folder_online): Unlock
the store before returning error. (noted by NotZed)
svn path=/trunk/; revision=13501
|
|
|
|
|
|
|
|
|
|
|
| |
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.
svn path=/trunk/; revision=13490
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
svn path=/trunk/; revision=13476
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
svn path=/trunk/; revision=13471
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
svn path=/trunk/; revision=13458
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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 #.
svn path=/trunk/; revision=13453
|
|
|
|
|
|
|
|
|
|
|
|
| |
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 :-/
svn path=/trunk/; revision=13448
|
|
|
|
|
|
|
|
|
| |
tedfast <fejj@ximian.com>
* camel-service.c (camel_service_connect): Unregister the
operation before unreffing it.
svn path=/trunk/; revision=13413
|
|
|
|
|
|
|
|
|
| |
2001-10-04 Jeffrey Stedfast <fejj@ximian.com>
* camel-service.c (camel_service_connect): Unregister the
operation before unreffing it.
svn path=/trunk/; revision=13412
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
svn path=/trunk/; revision=13398
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
svn path=/trunk/; revision=13397
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
svn path=/trunk/; revision=13392
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
svn path=/trunk/; revision=13388
|
|
|
|
|
|
|
| |
* providers/local/camel-local-provider.c (local_url_equal):
Strange are the ways of alloca. Fixes 11543.
svn path=/trunk/; revision=13375
|
|
|
|
| |
svn path=/trunk/; revision=13364
|
|
|
|
|
|
|
|
|
| |
2001-10-02 Jeffrey Stedfast <fejj@ximian.com>
* camel-tcp-stream-ssl.c (ssl_bad_cert): Import the certificate if
the user accepts it.
svn path=/trunk/; revision=13363
|
|
|
|
|
|
|
|
|
|
|
| |
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.
svn path=/trunk/; revision=13362
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
svn path=/trunk/; revision=13361
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
svn path=/trunk/; revision=13359
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
svn path=/trunk/; revision=13354
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
svn path=/trunk/; revision=13347
|
|
|
|
| |
svn path=/trunk/; revision=13310
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
svn path=/trunk/; revision=13288
|
|
|
|
|
|
|
|
|
| |
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.
svn path=/trunk/; revision=13281
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
svn path=/trunk/; revision=13276
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
svn path=/trunk/; revision=13264
|
|
|
|
|
|
|
|
|
| |
* 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).
svn path=/trunk/; revision=13257
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
svn path=/trunk/; revision=13251
|
|
|
|
|
|
|
|
|
|
|
| |
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.
svn path=/trunk/; revision=13240
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-28 Jeffrey Stedfast <fejj@ximian.com>
* providers/nntp/camel-nntp-provider.c
(camel_provider_module_init): Init the nntp url hash and url_equal
functions.
* providers/sendmail/camel-sendmail-provider.c
(camel_provider_module_init): Init the sendmail url hash and
url_equal functions.
* providers/smtp/camel-smtp-provider.c
(camel_provider_module_init): Init the smtp url hash and url_equal
functions.
* providers/pop3/camel-pop3-provider.c
(camel_provider_module_init): Init the pop3 url hash and url_equal
functions.
* providers/imap/camel-imap-provider.c
(camel_provider_module_init): Init the imap url hash and url_equal
functions.
* providers/local/camel-local-provider.c
(camel_provider_module_init): Init the local url hash and
url_equal functions.
* camel-session.c (camel_session_class_init): Init the vfolder url
hash and url_equal functions.
* camel-provider.h: Added url_hash and url_equal function pointers
to the structure.
* camel-vtrash-folder.c (vtrash_move_messages_to): Oops, a
CamelFolder is not a CamelFolderClass.
svn path=/trunk/; revision=13237
|
|
|
|
|
|
|
|
|
| |
2001-09-28 Jeffrey Stedfast <fejj@ximian.com>
* camel-vtrash-folder.c (vtrash_move_messages_to): Oops, a
CamelFolder is not a CamelFolderClass.
svn path=/trunk/; revision=13217
|
|
|
|
|
|
|
|
|
| |
* camel-tcp-stream-openssl.c (ssl_error_to_errno): Make this take
an SSL * instead of a CamelTcpStreamSSL *, since it can get called
from open_ssl_connection, when the CamelTcpStreamSSL isn't set up
right yet. Fixes a crash on connection failure.
svn path=/trunk/; revision=13213
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* providers/imap/camel-imap-folder.c
(camel_imap_folder_fetch_data): Grab the store's command_lock
before grabbing the folder's cache_lock to prevent deadlock if
another thread is processing an EXPUNGE response.
* providers/imap/camel-imap-folder.c
(imap_expunge_uids_resyncing): Fix a compiler warning that might
point out a real bug...
* providers/imap/camel-imap-folder.c (get_content): and one that
doesn't
svn path=/trunk/; revision=13209
|
|
|
|
| |
svn path=/trunk/; revision=13206
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-27 <NotZed@Ximian.com>
* camel-service.c (camel_service_connect): Dont re-register the
connect_op if we got it by calling 'operation_registered', which
returns an already-registered one.
(camel_service_disconnect): Likewise here.
This removes all the re-registered warnings.
svn path=/trunk/; revision=13205
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-27 <NotZed@Ximian.com>
* camel-object.c (camel_object_unref): Fill the finalised data
with nonsense, rather than 0's - more easily detect bad data.
(camel_object_new): Clear instance data when we retrieve it off
the list.
* camel-object.h (_CamelObject): Added an event lock pointer for
uh, locking event stuff. Also change the hooklist hashtable into
a list. Changed all the code to handle it. Result: thread-safe
events, event-hooks, and save memory too, and SHOULD FINALLY FIX
THAT UNREAD COUNT PROBLEM.
svn path=/trunk/; revision=13201
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-27 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-mime.c (camel_pgp_mime_part_decrypt): CRLF decode the
stream before parsing it into a MIME part. This fixes bug #10521.
* camel-store.c: Remove the old folder from the vTrash folder.
svn path=/trunk/; revision=13199
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* camel-service.c: Change "gboolean connected" to
"CamelServiceConnectionStatus status", which can be disconnected,
connecting, connected, or disconnecting.
(camel_service_init, camel_service_finalize): create/destroy the
connect_op_lock. Refer to service->status rather than
service->connected.
(camel_service_connect): When connecting, note the current
operation (and create a new one if there's none registered) and
mark the connection "connecting" until we succeed or fail.
(camel_service_disconnect): Likewise in reverse.
(camel_service_cancel_connect): New function to cancel a
connection attempt.
(cancel_connect): Default implementation: Call
camel_operation_cancel on the connect_op.
* camel-disco-store.c (disco_connect): Only call
CamelRemoteStore's connect func if we're online.
(disco_cancel_connect): Fall back to offline if a connection gets
cancelled.
(disco_get_folder_info): Kludge: call connect explicitly before
deciding whether to do the online or offline version, so if the
connect fails, we fall back correctly.
* camel-session.c (camel_session_get_service_connected):
s/svc->connected/svc->status/
* camel-remote-store.c (camel_remote_store_finalise):
Change service->connected check to service->status check.
(remote_connect): Don't set service->connected here:
camel_service_connect() itself does that.
* camel-operation.c (camel_operation_registered): Deal with the
possibility that there's no registered op.
svn path=/trunk/; revision=13191
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-26 <NotZed@Ximian.com>
* camel-filter-driver.c (camel_filter_driver_filter_message): If
we get a search error, just abort, dont try and fall back and copy
to inbox.
(camel_filter_driver_filter_message): Make sure we ALWAYS use
exceptions for important things - like moving messages to inbox!
(camel_filter_driver_filter_message): If we have the source
folder, use camel_folder_set_message_flags rather then poking the
info directly, which skips changed events. This means filtering
immediate doesn't lose changed events.
(do_flag): Same here.
(do_colour): Same thing but using set_tag.
(do_score): Same again.
(camel_filter_driver_filter_folder): Use ~0 as the 'set' arg to
set_flags, just saves typing.
(open_folder): We cache folders that we couldn't open as well as
those ones we could. Use magic token FOLDER_INVALID =
(void *)~0 as the marker.
(close_folder): Handle FOLDER_INVALID case properly.
svn path=/trunk/; revision=13169
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-26 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-message.c
(camel_mime_message_get_part_by_content_id): New function to
convenience Larry ;-)
(check_content_id): Oops, return !found instead of found. This
callback has to return whether or not to keep searching, not
whether or not it found what it's looking for. Do'h!
* camel-pgp-mime.c (camel_pgp_mime_is_rfc2015_signed): block out
some code if ENABLE_PEDANTIC_PGPMIME is not defined.
svn path=/trunk/; revision=13168
|
|
|
|
| |
svn path=/trunk/; revision=13166
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-26 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-message.c
(camel_mime_message_get_part_by_content_id): New function to
convenience Larry ;-)
* camel-pgp-mime.c (camel_pgp_mime_is_rfc2015_signed): block out
some code if ENABLE_PEDANTIC_PGPMIME is not defined.
svn path=/trunk/; revision=13165
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-26 <NotZed@Ximian.com>
* camel-vee-store.c: Emptied VeeStorePrivate, member wasn't used.
* camel-vee-folder.c (camel_vee_folder_set_expression): Lock
changed list separately.
(camel_vee_folder_remove_folder): "
(camel_vee_folder_set_folders): Use changed_lock for changed list.
(vee_refresh_info): Use changed_lock, also just grab the list,
reset it in the lock, and do the work unlocked.
(vee_sync): Use changed lock for changed list.
(folder_changed): ". All this kills a deadlock with sync/expunge.
* camel-private.h (CamelVeeFolderPrivate): Added a new lock for
the folders-changed list.
(CamelVeeStorePrivate): Removed, defined in camel-vee-store.c,
thanks to a pedantic.
svn path=/trunk/; revision=13163
|
|
|
|
|
|
|
|
| |
2001-09-26 Jeffrey Stedfast <fejj@ximian.com>
* Makefile.am: Fix Ettore's fix.
svn path=/trunk/; revision=13154
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-25 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-context.c (camel_pgp_context_new): No longer takes a
remember argument.
(pgp_sign): Only uncache the passphrase on failure.
(pgp_clearsign): Same.
(pgp_encrypt): Here too.
(pgp_decrypt): And here.
(pass_free): New function to zero the passphrase before freeing
it.
svn path=/trunk/; revision=13138
|
|
|
|
|
|
|
|
|
|
|
|
| |
Boulton <richard@tartarus.org>, as per #9258.]
* providers/nntp/Makefile.am: Remove some commented parts that
make Automake 1.5 choke.
* Makefile.am (camel-lock-helper): Add $(EXEEXT) for Automake 1.5
compatibility.
svn path=/trunk/; revision=13137
|
|
|
|
|
|
|
|
|
| |
2001-09-25 <NotZed@Ximian.com>
* camel-folder.c (get_unread_message_count): Only unref info if we
got it.
svn path=/trunk/; revision=13130
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-25 <NotZed@Ximian.com>
* camel-operation.c (camel_operation_unref): Fix for !threads
enabled not ccompiling.
(camel_operation_ref): Assert refcount > 0.
(struct _CamelOperation): Removed the lock. On further
investigation, I dont think this will always work, the
registration operations assume that a lookup in the
operation_active table will return a ref, that will remain valid
until we ref it, which needn't be the case. So now i'm using a
single global lock, since we'd need to do that for unref anyway,
and every operation is fast & memory-bound. Changed all the code
to handle this.
(camel_operation_progress_count): Since the code is identical,
just call progress() for now.
(camel_operation_register): No longer refcount, use unref to
check/clear the active table.
(camel_operation_unregister): Same here.
(camel_operation_unref): Check if operation is in active table, if
so, warn, remove.
svn path=/trunk/; revision=13125
|
|
|
|
|
|
|
|
|
|
|
|
| |
* camel-tcp-stream-openssl.c (my_SSL_read, my_SSL_write): call
SSL_read/write, looping on SSL_ERROR_WANT_READ/WRITE. I'm sure
there's a perfectly good reason that the API works this way. No,
really.
(stream_read, stream_write): use my_SSL_read and my_SSL_write.
Fixes at least ximian 8593, and probably 6024 and maybe 10366,
at least for OpenSSL. There may be a parallel NSS bug?
svn path=/trunk/; revision=13121
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-25 <NotZed@Ximian.com>
* camel-stream-buffer.c (stream_write_all): A "safe write"
function that always writes out all data asked of it, till
finished.
(stream_write): Rewritten. What was i on when i wrote that
originally, how did it ever work with tcp streams ...
svn path=/trunk/; revision=13115
|
|
|
|
|
|
|
|
|
|
| |
2001-09-24 <NotZed@Ximian.com>
* camel-folder.c (append_message): Set the exception to
FOLDER_INVALID rather than making out it worked. A fix for #7025.
(search_by_expression): Here too.
svn path=/trunk/; revision=13106
|
|
|
|
|
|
|
|
|
| |
2001-09-24 <NotZed@Ximian.com>
* providers/imap/camel-imap-folder.c (imap_update_summary): In the
'lose' case, free messages, not fetch_data twice!
svn path=/trunk/; revision=13101
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-24 <NotZed@Ximian.com>
* camel-filter-search.c (check_header): If the type is encoded,
get the fallback charset from the message content-type.
* camel-mime-part-utils.c (check_html_charset): Dont check for
charset==null before calling charset_to_iconv.
(simple_data_wrapper_construct_from_parser): "
* camel-mime-message.c (process_header): Try use content-type
charset param as the fallback charset.
* camel-charset-map.c (camel_charset_to_iconv): Handle name ==
NULL, return NULL.
* camel-folder-summary.c (camel_folder_summary_format_address):
(camel_folder_summary_format_string): Made private again, removed
#warning about it. Renamed to s/camel_folder//.
(summary_format_string): Take default charset param.
(camel_message_info_new_from_header, message_info_new): Decode
content-type field to get the charset parameter to use as the
default charset for decoding strings.
* camel-search-private.c (camel_search_header_match): Pass NULL as
the charset, the locale charset is always tried.
(camel_search_header_match): Supply a default_charset parameter to
be used with TYPE_ENCODED params.
* camel-mime-utils.c
(header_param): get rid of the g_strcasecmp crap.
(header_set_param): Same here.
(header_decode_param_list): And here.
(header_decode_text): Totally rewritten. 30% of its size. If the
word is not rfc2047 encoded, always try default_charset if
supplied, if that fails, try locale charset if it exists, if that
fails then assume latin1/7 bit ascii.
(append_8bit): Changed to return FALSE if we can't convert for
whatever reason, and dont append anything.
* camel-mime-part.h (struct _CamelMimePart): Move content_type and
headers out of the 'private' section.
* camel-mime-part.c (get_headers): Dont do any conversion on the
header.
(process_header): Get the content-type charset as the fallback
charset for decode_string.
(construct_from_parser): IF we have a content-type header, process
it before doing anything else, so we have access to a fallback
charset for invalid headers.
svn path=/trunk/; revision=13096
|
|
|
|
| |
svn path=/trunk/; revision=13090
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-23 Jeffrey Stedfast <fejj@ximian.com>
* camel-tcp-stream-openssl.c (ssl_verify): Don't even try to alert
the user if the session isn't interactive.
(errlib_error_to_errno): Make the default errno EINTR so that we
act just like CamelTcpStreamSSL.
* camel-pgp-context.c (pgp_sign): When the password is not
provided, set the exception to USER_CANCEL.
(pgp_clearsign): Same.
(pgp_encrypt): And here.
(pgp_decrypt): Here too.
svn path=/trunk/; revision=13088
|
|
|
|
|
|
|
|
|
| |
2001-09-21 <NotZed@Ximian.com>
* camel-store.c (create_folder): Set the exception if
create_folder isn't implemented.
svn path=/trunk/; revision=13056
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-21 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-store.c (create_folder): Go back to
not using camel_folder_info_build() here because this seems to
break folder creation (returning nodes from the root path when it
shouldn't be?).
svn path=/trunk/; revision=13054
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-21 <NotZed@Ximian.com>
* camel-vee-store.c (vee_get_folder_info): Force a refresh of
vfolders before storing their count. This essentially makes
'get_folderinfo' refresh all vfolders, so that get-mail works as
expected.
* camel-vee-folder.c (camel_vee_folder_finalise): Clear lists.
(folder_changed): If we're not autoupdating the folder, then
add this folder to the list of 'changed' folders for this vfolder.
(camel_vee_folder_set_expression): Reset the folders_changed list.
(camel_vee_folder_remove_folder): Remove the folder from the
folders_changed list.
(camel_vee_folder_set_folders): If we have a folder already, but
its changed, use this opportunity to update it.
(vee_sync): Remove any synced folders from the folders_changed
list.
(vee_refresh_info): Refresh folder, re-run queries on any changed
folders.
svn path=/trunk/; revision=13045
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* camel-folder-summary.c (camel_folder_summary_header_load): New
function to just load the summary. Not much use yet, until unread
counts are stored in the summary (which now looks like too much
work!).
* camel-mime-utils.c (header_decode_mailbox): Crappy fix for
stupid mailers. If we get 'name b. name <foo>' then treat it as
'"name b. name" <foo>'. See 8147.
(header_decode_mailbox): Another fix for really broken mailers
that have things that look like addresses followed by <address>
bits.
(rfc2047_encode_word): Escape ??= to avoid some bizarre warning
about trigraphs.
(scan_dir): If we dont have the folder open, then scan the 'new'
and 'cur' folders for new and unread messages to count instead.
svn path=/trunk/; revision=13040
|
|
|
|
|
|
|
|
|
|
|
|
| |
* providers/local/camel-local-folder.c
(camel_local_folder_construct): Setup unread count properly, and
also setup the url properly.
(scan_dir): Dont include empty host part in url for folder.
(scan_dir): Lookup folder counts for any folders we currenty have
open.
svn path=/trunk/; revision=13035
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-20 <NotZed@Ximian.com>
* providers/local/camel-maildir-store.c (camel_folder_info_new):
Build the path on the folderinfo.
* providers/local/camel-spool-store.c (get_folder_info): If we
have this folder open, then set unread from the folder itself.
(get_folder_info): Change the INBOX path to not include the
leading /.
* providers/local/camel-spool-folder.c
(camel_spool_folder_construct): Fix path.
(camel_spool_folder_construct): Properly setup the url field when
we say we've got a new folder created.
* providers/imap/camel-imap-store.c (unsubscribe_folder): Build
path on folderinfo.
* camel-store.c (camel_folder_info_build_path): Prepend / to path.
* camel-vee-folder.c (camel_vee_folder_construct): Use macro for
unmatched folder name.
(camel_vee_folder_new): "
* camel-vee-store.c (vee_get_folder_info): Use macro for unmatched
folder name.
(vee_delete_folder): "
(vee_rename_folder): "
(vee_get_folder): Prepend / onto path.
(vee_delete_folder): Setup path in folderinfo.
(vee_get_folder_info): Fix path in folderinfo.
* camel-vee-folder.h (CAMEL_UNMATCHED_NAME): New define for
unmatched (internal) name.
svn path=/trunk/; revision=13022
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-20 Jeffrey Stedfast <fejj@ximian.com>
* providers/local/camel-spool-folder.c
(camel_spool_folder_construct): And finally here.
* providers/local/camel-local-folder.c
(camel_local_folder_construct): And here.
* camel-vee-store.c (vee_get_folder): ANd here too.
(vee_get_folder_info): And here.
* providers/imap/camel-imap-store.c (create_folder): Use
camel_folder_info_build() and do better error checking.
(subscribe_folder): Set the path on the folder info.
* camel-store.c (camel_folder_info_build): Set the folder-info
path if it hasn't already been set by the caller.
(camel_folder_info_free): Free the path.
* camel-store.h: Added a path member to the FolderInfo type.
svn path=/trunk/; revision=13019
|
|
|
|
|
|
| |
* camel-charset-map.c (camel_charset_to_iconv): Nuke debug warning.
svn path=/trunk/; revision=13009
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-19 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-context.c: Updated exception strings to be more clear.
* camel-pgp-mime.c (pgp_mime_part_sign_restore_part): Stupid
mistake, fixes bug #9975.
svn path=/trunk/; revision=13001
|
|
|
|
|
|
|
|
|
|
| |
2001-09-19 Jeffrey Stedfast <fejj@ximian.com>
* camel-tcp-stream-ssl.c (ssl_bad_cert): Oops, don't fail if
`data' isn't a CamelService...cuz it's not supposed to be! It's a
CamelTcpStreamSSL object...doh!
svn path=/trunk/; revision=12992
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-19 <NotZed@Ximian.com>
* General cleanup of camel debug printfs.
* camel-lock.c (camel_lock_fcntl): Changed to return 'success' if
the error indicates file locking isn't supported on this
filesystem. Still return a warning just incase (if its the first
time). Might fix a lot of reported bugs.
* providers/local/camel-spool-store.c (get_folder_info): Dont
include the empty // host part in the uri. This 'breaks' the
service lookup.
svn path=/trunk/; revision=12973
|
|
|
|
| |
svn path=/trunk/; revision=12962
|
|
|
|
|
|
|
|
| |
2001-09-18 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-utils.c: Match mailing-list header List-Owner.
svn path=/trunk/; revision=12959
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-18 <NotZed@Ximian.com>
* providers/local/camel-maildir-folder.c
(camel_maildir_folder_new): If filter inbox is set on the store,
and we're opening inbox '', then enable filtering on new messages.
* providers/local/camel-local-folder.c
(camel_local_folder_construct): After loading the summary, check
it, and only abort if that fails. Also maintain the changes
count.
* providers/local/camel-local-summary.c
(camel_local_summary_load): Remove summary_check code from here.
(camel_local_summary_check): Sync index/summary here, if we were
successful.
* providers/local/camel-spool-folder.c
(camel_spool_folder_new): If we have filter-new-messages-on-inbox
set and we just opened inbox, turn on filtering on this folder.
(camel_spool_folder_construct): Keep track of changes for the
folder, so that filter-new-messages works right (?)
* providers/local/camel-spool-store.c (get_folder): Pass 'INBOX'
as the folder name, not the path.
* camel-folder-search.c (search_not): Modified patch from
<peterw@ximian.com> since the summary is messageinfo's, not
strings.
** Ok so the problem with the stuff below is that maildir/spool
'summary_load' throws away all events, including recents, joy eh?
* providers/local/camel-maildir-summary.c (maildir_summary_check):
Add new messages to the recent changeinfo.
* providers/local/camel-spool-summary.c: Mark 'new' message as
recent, for later processing if required (i.e. 'filter new
messages').
* camel-store.c (construct): new function, cascade up construct
method and check for 'filter' param, and set accordingly for any
one that might want it.
* providers/imap/camel-imap-store.c (construct): map the
param_filter_inbox flag to the store->flags as
CAMEL_STORE_FILTER_INBOX.
* camel-store.h (CAMEL_STORE_FILTER_INBOX): new flag to tell it to
filter inbox.
* providers/imap/camel-imap-folder.h: Removed do_filtering flag
from CamelImapFolder.
* providers/imap/camel-imap-folder.c (imap_update_summary): Remove
the 'recents' parameter, use the 'changes' parameter instead to
convey this info.
(camel_imap_folder_changed): Changed for update_summary api
change. Now always just emit the changed event if we have any
changes to report, filtering code removed, handled upstream.
(filter_proc):
(filter_free): Removed old filtering code.
(camel_imap_folder_new): Set the filter_recent flag on the folder
if we're the inbox and filtering of inbox is enabled.
* camel-folder.c (folder_changed): If we have 'recent' messages,
and are set to filter recents, then freeze the folder and launch a
thread to do the processing (or similar if threading not enabled).
(thaw): Make sure we emit the changed signal outside of owning the
lock and if things have changed. Also, no longer bother
downgrading folder_changed events to message_changed events.
* camel-folder.h (struct _CamelFolder): Added filter_recent flag
-> signifies all recent messages in folder should be filtered.
* camel-session.c: (camel_session_thread_msg_new,
camel_session_thread_msg_free, camel_session_thread_queue,
camel_session_thread_wait): code to handle async operations as
part of camel processing.
(camel_session_finalise): free thread_lock, destroy thread, active
hash, etc.
(camel_session_init): init thread, active hash, etc.
(camel_session_class_init): Init virtual functions.
(session_thread_msg_new, session_thread_msg_free,
session_thread_destroy, session_thread_received,
session_thread_queue, session_thread_wait): default implementation
of session threads stuff.
2001-09-17 <NotZed@Ximian.com>
* camel-folder.c (camel_folder_change_info_recent_uid): New
function to add a 'recent' uid to the change info.
(camel_folder_change_info_clear): Clear recent list.
(camel_folder_change_info_free): Free recent list.
(camel_folder_change_info_new): Setup recent list.
* camel-folder.h: Added a uid_recent item to the folder_changed
event data.
* providers/local/camel-maildir-store.c (scan_dir): Free new in
the right block.
* providers/local/camel-local-provider.c: Add local config entries
to filter on new messages in spool and maildir provider.
* camel-vee-folder.c (vee_folder_construct): Remove the assertion
which stops ? in names from being allowed.
svn path=/trunk/; revision=12956
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* camel-data-wrapper.c (camel_data_wrapper_is_offline): Virtualize
this.
* camel-medium.c (is_offline): A medium is offline if its content
object is offline.
* camel-multipart.c (is_offline): A multipart is offline if any of
its subparts are offline.
svn path=/trunk/; revision=12948
|
|
|
|
|
|
|
|
| |
2001-09-18 Jeffrey Stedfast <fejj@ximian.com>
* camel-charset-map.c: Added korean charset conversion.
svn path=/trunk/; revision=12946
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-17 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-store.c (delete_folder): Don't process
the ImapResponse data, we don't want to block forever on data we
don't care about...
(create_folder): Use get_folders_online() instead of
get_folder_info_online().
svn path=/trunk/; revision=12932
|
|
|
|
|
|
|
|
|
|
| |
2001-09-17 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-store.c (delete_folder): Don't process
the ImapResponse data, we don't want to block forever on data we
don't care about...
svn path=/trunk/; revision=12918
|
|
|
|
|
|
|
|
| |
2001-09-17 Jeffrey Stedfast <fejj@ximian.com>
* camel-folder.c: Reverted previous changes.
svn path=/trunk/; revision=12907
|
|
|
|
|
|
|
|
| |
2001-09-17 JP Rosevear <jpr@ximian.com>
* Makefile.am: Helpful install-exec-hook debugging output
svn path=/trunk/; revision=12901
|
|
|
|
|
|
|
|
|
|
| |
2001-09-16 Jeffrey Stedfast <fejj@ximian.com>
* camel-folder.c (camel_folder_get_uri): New function to get the
URI of a folder.
(get_uri): Default implementation.
svn path=/trunk/; revision=12860
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-14 <NotZed@Ximian.com>
* camel-vee-folder.c (camel_vee_folder_set_folders): New function,
set the complete list of folders on a vfolder, all at once.
(camel_vee_folder_set_expression): If we set the query to be the
same thing, dont do anything.
* camel-vee-store.c (camel_vee_store_init): Turn off vtrash for
this store.
* camel-store.c (camel_store_init): Enable vtrash by default via
flags.
(camel_store_get_trash): REturn NULL if the store doesn't support
vtrash.
(init_trash): Dont init if store doesn't support vtrash.
* camel-store.h: Add a new flags CAMEL_STORE_VTRASH -> store
supports vtrash.
2001-09-13 <NotZed@Ximian.com>
* camel-vee-store.c (vee_get_folder_info): Implement.
(build_info): Used to build a folder record from the folders
hashtable.
(vee_delete_folder): Implemented, remove folder from hashtable.
(vee_rename_folder): Implemented, remove old folder from
hashtable, add new one and rename its guts too.
* camel-store.c (camel_store_rename_folder): Do nothing if we're
not asked to actually change names. Also dont do the renamed
cache check till after we've called the subclass.
(camel_store_delete_folder): Call the subclass delete firs,t then
make sure the cache is right.
* camel-vee-folder.c (vee_folder_construct): Remove support for
name?query syntax to setup vfolder. Abort if such syntax is used.
(camel_vee_folder_new): Removed code that handles ? syntax, etc.
(vee_folder_build_folder): Handle unset expression, treat it as an
empty search.
(camel_vee_folder_set_expression): Oops, actually set the
expression.
* camel-vtrash-folder.c (camel_vtrash_folder_new): Dont use
name?query syntax to setup vfolder, but set the expression
directly. Also fixes a small memleak.
2001-09-12 <NotZed@Ximian.com>
* camel-store.c (camel_store_delete_folder): Fixed warnings with a cast.
(camel_store_rename_folder): "
svn path=/trunk/; revision=12854
|
|
|
|
|
|
|
|
|
| |
2001-09-14 Jeffrey Stedfast <fejj@ximian.com>
* camel-url.c (camel_url_set_param): Use g_datalist_set_data_full
so that the data will be free'd when we clear the list.
svn path=/trunk/; revision=12838
|
|
|
|
|
|
|
|
| |
* camel-file-utils.c (camel_file_util_encode_string,
camel_file_util_decode_string): Don't claim failure when
reading/writing the empty string.
svn path=/trunk/; revision=12829
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-14 JP Rosevear <jpr@ximian.com>
* Makefile.am: use install hook instead of install rule to
guarantee we run after installation
2001-09-14 JP Rosevear <jpr@ximian.com>
* configure.in: remove unneeded conditionals
svn path=/trunk/; revision=12825
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-13 Jeffrey Stedfast <fejj@ximian.com>
* camel-filter-driver.c (camel_filter_driver_filter_folder): Don't
reuse the exception if it has already been set.
(camel_filter_driver_filter_message): Same here. Also use the new
return value from camel_filter_search_match().
* camel-filter-search.c (camel_filter_search_match): Return an
integer (matched, no-match, or error).
svn path=/trunk/; revision=12819
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-13 Jeffrey Stedfast <fejj@ximian.com>
* providers/local/camel-mbox-folder.c (mbox_append_message): Do
error-checking based on function return values rather than
exceptions as it's possible for them to be NULL.
(mbox_get_message): Same.
svn path=/trunk/; revision=12814
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-13 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-folder.c (imap_append_offline): Pass
an exception to the cache.
(imap_append_online): Same.
(imap_append_resyncing): Here too.
(imap_copy_offline): And here.
(handle_copyuid): Pass NULL as the exception here...
(parse_fetch_response): And finally here.
* providers/imap/camel-imap-message-cache.c
(camel_imap_message_cache_insert):
(insert_setup):
(camel_imap_message_cache_insert_stream):
(camel_imap_message_cache_insert_wrapper):
(camel_imap_message_cache_copy): Take an exception argument and
set it on error.
svn path=/trunk/; revision=12813
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-13 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-part-utils.c
(simple_data_wrapper_construct_from_parser): Convert the charset
to the iconv-friendly name.
* camel-charset-map.c (camel_charset_to_iconv): Add code to
convert windows-[cp]#### charsets to their iconv-friendly format
of cp####.
svn path=/trunk/; revision=12804
|
|
|
|
|
|
|
|
|
| |
2001-09-13 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-context.c (crypto_exec_with_passwd): Return -1 on
failure.
svn path=/trunk/; revision=12799
|
|
|
|
|
|
|
|
|
| |
2001-09-12 Larry Ewing <lewing@ximian.com>
* camel-filter-driver.c (camel_filter_driver_filter_mbox): free
the source url in the nonfailure case.
svn path=/trunk/; revision=12782
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-12 <NotZed@Ximian.com>
* camel-folder-search.h: Change the 'not' virtual method from an
immediate e-sexp function to a non-immediate one, which is what it
should be.
* camel-folder-search.c (search_not): Implement a 'not' function
ourselves. If 'not' on a vector value, then not over all items
in the summary.
(builtings[]): Change the 'not' builtin to be a non-immediate
function.
svn path=/trunk/; revision=12781
|
|
|
|
|
|
|
|
|
| |
2001-09-12 Jeffrey Stedfast <fejj@ximian.com>
* camel-filter-driver.c (camel_filter_driver_filter_mbox): Unref
the message info.
svn path=/trunk/; revision=12776
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-10 <NotZed@Ximian.com>
* providers/local/camel-maildir-store.c (get_folder_info): Pass in
a hashtalbe used for finding visited nodes.
(inode_hash):
(inode_equal):
(inode_free): Helper functions for visited node checks, hashes on
inode + device number.
(scan_dir): Dont re-visited directories we've already visited, use
inodes + device number.
Also, if the folder doesn't contain cur/tmp/new, mark it as
noselect, but continue to recurse folders, if asked.
svn path=/trunk/; revision=12760
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-10 <NotZed@Ximian.com>
* camel-folder.c (move_messages_to): Progress reporting while
moving messages.
* camel-store.c (camel_store_delete_folder): Make sure we remove
the folder from our vtrash, if we have it in our opened set, and
also remove it from our hashtable.
(camel_store_rename_folder): Remove the old folder name from the
folder cahce, if it is there.
svn path=/trunk/; revision=12758
|
|
|
|
|
|
|
|
|
| |
2001-09-10 Jeffrey Stedfast <fejj@ximian.com>
* camel-charset-map.c (camel_charset_to_iconv): Get rid of the
g_warning, we no longer really need that.
svn path=/trunk/; revision=12739
|
|
|
|
|
|
|
|
|
| |
2001-09-10 <NotZed@Ximian.com>
* providers/imap/camel-imap-store.c (camel_imap_msg_new): Forgot
to return the newly allocated msg.
svn path=/trunk/; revision=12729
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-08 Not Zed <NotZed@Ximian.com>
* providers/local/camel-spool-summary.c (spool_summary_sync_full): Likewise.
* providers/local/camel-mbox-summary.c (mbox_summary_sync_full): Fix the wording.
* camel-tcp-stream-raw.c (stream_read): Save errno around fcntl
call in cancellable read case. Also, loop while we get EINTR.
This might fix some weird reconnect behaviour with pop.
(stream_write): "
svn path=/trunk/; revision=12700
|
|
|
|
|
|
|
|
|
|
| |
2001-09-07 Jeffrey Stedfast <fejj@ximian.com>
* camel-tcp-stream-ssl.c (ssl_bad_cert): #if 0 out the code that
was hopefully going to fix bug #5325 because the functions I used
seem to have been deprecated. *sigh*.
svn path=/trunk/; revision=12699
|
|
|
|
|
|
|
|
|
|
| |
2001-09-07 Jeffrey Stedfast <fejj@ximian.com>
* camel-remote-store.c (camel_remote_store_finalise): Disconnect
from the service here otherwise the locks will be destroyed and by
the time CamelService finalizes we'll crash or hang.
svn path=/trunk/; revision=12692
|
|
|
|
|
|
|
|
|
| |
2001-09-07 Jeffrey Stedfast <fejj@ximian.com>
* providers/smtp/camel-smtp-transport.c (smtp_data): Make sure to
unref the mime filters when we finish with them.
svn path=/trunk/; revision=12689
|
|
|
|
|
|
|
|
|
| |
* providers/local/camel-mbox-summary.c (mbox_summary_sync_full):
s/Synchronising/Synchronizing/.
(mbox_summary_sync_quick): Likewise.
(summary_rebuild): s/Summarising/Summarizing/.
svn path=/trunk/; revision=12683
|
|
|
|
| |
svn path=/trunk/; revision=12682
|
|
|
|
|
|
|
|
|
|
| |
2001-09-07 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-part-utils.c
(camel_mime_part_construct_content_from_parser): Reuse the
original boundary instead of generating our own.
svn path=/trunk/; revision=12681
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-06 <NotZed@Ximian.com>
* providers/imap/camel-imap-folder.c (filter_proc): Thread
function to perform filtering.
(filter_free): Free the filter object.
(camel_imap_folder_changed): If we have threads enabled, then
queue up a request to perform filtering. For bug #4422.
* providers/imap/camel-imap-store.c (camel_imap_msg_new): Create a
new 'imap msg'.
(camel_imap_msg_queue): Queue an 'imap msg'.
(async_received): Handle receiving of imap msg in async thread.
(async_destroy): Handle destroying of imap msg.
(camel_imap_store_finalize): Destroy thread when done.
(camel_imap_store_init): Setup thread.
* providers/imap/camel-imap-store.h: Added an ethread to the
store, for async processing.
svn path=/trunk/; revision=12666
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-09-06 Jeffrey Stedfast <fejj@ximian.com>
* camel-remote-store.c (remote_recv_line): Use
camel_stream_buffer_read_line() instead of duplicationing the
functionality. Also, the previous way was broken anyway. What if a
line was the same length as our buffer? Then we'd go and read a
second line and a third and so on until they weren't the same
length, leaving \r's in the middle of the buffer.
svn path=/trunk/; revision=12662
|
|
|
|
|
|
|
|
|
|
| |
* providers/pop3/camel-pop3-store.c (pop3_get_response): Fix this
to always set an exception if it returns POP3_FAIL, as documented.
* providers/pop3/camel-pop3-folder.c (pop3_get_message_stream):
Revert.
svn path=/trunk/; revision=12654
|
|
|
|
|
|
|
|
|
| |
2001-09-06 Jeffrey Stedfast <fejj@ximian.com>
* providers/pop3/camel-pop3-folder.c (pop3_get_message_stream):
Set an exception on POP3_FAIL as well.
svn path=/trunk/; revision=12653
|
|
|
|
|
|
|
|
| |
* providers/pop3/camel-pop3-provider.c: #ifdef out the "delete
after N days" option in pop3_conf_entries, since it won't be done
for 1.0.
svn path=/trunk/; revision=12651
|
|
|
|
|
|
|
|
|
|
| |
2001-09-04 Jeffrey Stedfast <fejj@ximian.com>
* camel-remote-store.c (remote_disconnect): Too late to sync the
folders here... if this is gonna happen at all it should be done
in the provider.
svn path=/trunk/; revision=12596
|
|
|
|
|
|
|
|
| |
2001-09-04 Jeffrey Stedfast <fejj@ximian.com>
* camel-service.c (camel_service_finalize): Do a clean disconnect.
svn path=/trunk/; revision=12593
|
|
|
|
|
|
|
|
|
|
| |
2001-08-30 Jeffrey Stedfast <fejj@ximian.com>
* providers/local/camel-spool-store.c (get_inbox): Return the
default folder (ie. INBOX) rather than saying we don't support an
inbox.
svn path=/trunk/; revision=12535
|
|
|
|
|
|
|
|
|
| |
2001-08-30 Jeffrey Stedfast <fejj@ximian.com>
* camel-tcp-stream-ssl.c: #include pk11func.h.
(ssl_bad_cert): Use CERT_GetDefaultCertDB.
svn path=/trunk/; revision=12530
|
|
|
|
| |
svn path=/trunk/; revision=12520
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-29 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-mime.c (pgp_mime_part_sign_prepare_part): Special-case
message/rfc822 mime parts - don't set an encoding on these,
instead traverse into their subparts and set the encodings for
those.
(pgp_mime_part_sign_restore_part): Reverse any operations done to
message/rfc822 parts in the above prepare_part() function and also
take a pointer to a GSList of encodings instead of just a GSList
so we can properly keep track of which encoding we are on.
svn path=/trunk/; revision=12519
|
|
|
|
|
|
|
|
|
|
| |
2001-08-29 Not Zed <NotZed@Ximian.com>
* providers/pop3/camel-pop3-folder.c (pop3_sync): Add progress
reporting to deleting messages. Dont change the calculation to a
bloody float. Bug #6189.
svn path=/trunk/; revision=12512
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-28 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-context.c (crypto_exec_with_passwd): Initialize buf
and diag_buf to NULL, hopefully this fixes the crash if the
select() times out.
(pgp_encrypt): Argh. What was I thinking? Don't use "-r recipient"
as an argument, instead use "-r" and "recipient" as 2 separate
arguments to pgp. This might fix the "gpg only encrypts to my
private key" bug?
svn path=/trunk/; revision=12510
|
|
|
|
|
|
|
|
|
|
| |
2001-08-28 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-context.c (crypto_exec_with_passwd): Initialize buf
and diag_buf to NULL, hopefully this fixes the crash if the
select() times out.
svn path=/trunk/; revision=12508
|
|
|
|
|
|
|
|
|
| |
2001-08-28 Peter Williams <peterw@ximian.com>
* providers/imap/camel-imap-store.c (create_folder): Whoops.
Double-free and FMR = bad.
svn path=/trunk/; revision=12505
|
|
|
|
|
|
|
|
|
|
| |
2001-08-28 Peter Williams <peterw@ximian.com>
* camel-remote-store.c (remote_send_string): Don't reveal the
user's IMAP password if their server supports LITERALPLUS. Also
add some more dashes to make it line up nicely :-)
svn path=/trunk/; revision=12503
|
|
|
|
|
|
|
|
|
| |
2001-08-28 Jeffrey Stedfast <fejj@ximian.com>
* camel-tcp-stream-ssl.c (ssl_bad_cert): If the user accepts the
certificate, add it to the database as a trusted CA.
svn path=/trunk/; revision=12502
|
|
|
|
|
|
|
|
|
|
| |
2001-08-28 Peter Williams <peterw@ximian.com>
* camel-object.c (camel_object_unref): Make the locking more
fine-grained on destruction; specifically, don't hold the
type lock while calling the finalize functions.
svn path=/trunk/; revision=12501
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-27 Jeffrey Stedfast <fejj@ximian.com>
* providers/local/camel-local-provider.c: Changed the
description/names of some of the local providers to try and
clarify the meanings.
* providers/pop3/camel-pop3-provider.c: Simplify the POP
description - we want short but sweet.
* providers/imap/camel-imap-provider.c: s/IMAPv4/IMAP
svn path=/trunk/; revision=12486
|
|
|
|
|
|
|
|
| |
2001-08-27 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-provider.c: s/IMAPv4/IMAP
svn path=/trunk/; revision=12485
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-27 Not Zed <NotZed@Ximian.com>
* camel-mime-part-utils.c (convert_buffer): re-read the iconv man
page, and treat the return value properly. It returns the number
of non-reversible conversions performed, not the number of output
characters, sigh.
(check_html_charset): Changed to just take a buffer of data, and
not the mime parser.
(simple_data_wrapper_construct_from_parser): Since we dont need
the charset till we have all the data, search for the charset
after we've read the data, if we have html data with no charset in
the header.
(simple_data_wrapper_construct_from_parser): Remove the
seekable_source stuff.
* Re-apply patches from before.
svn path=/trunk/; revision=12481
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-25 Not Zed <NotZed@Ximian.com>
["Summarising" and "Synchronising" are spelt with a "s" in
ENGLISH]
* providers/local/camel-mbox-summary.c (mbox_summary_sync_quick):
s/Synchronizing/Synchronising/.
* providers/local/camel-mbox-summary.c (summary_rebuild):
s/Summarizing/Summarising/
svn path=/trunk/; revision=12470
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-24 Jeffrey Stedfast <fejj@ximian.com>
* camel-disco-diary.c (camel_disco_diary_replay): Use fseek
instead of fseeko since we want to be portable and use ftell
rather than ftello for the same reason.
(camel_disco_diary_empty): Same here.
svn path=/trunk/; revision=12469
|
|
|
|
|
|
|
|
|
| |
2001-08-24 Peter Williams <peterw@ximian.com>
* Revert Not Zed's previous commits as they apparently can
cause serious data loss for POP3 users.
svn path=/trunk/; revision=12461
|
|
|
|
|
|
|
|
|
|
| |
* providers/local/camel-mbox-summary.c (mbox_summary_sync_quick):
s/Synchronising/Synchronizing/.
* providers/local/camel-mbox-summary.c (summary_rebuild):
s/Summarising/Summarizing/
svn path=/trunk/; revision=12444
|
|
|
|
|
|
|
|
|
|
| |
2001-08-24 Not Zed <NotZed@Ximian.com>
* camel-mime-part-utils.c (convert_buffer): Limit the maximum
output buffer size. iconv bugs? returns E2BIG forever on some
(valid) data?
svn path=/trunk/; revision=12432
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-24 Not Zed <NotZed@Ximian.com>
* providers/local/camel-spool-summary.c (summary_rebuild): Likewise.
* providers/local/camel-mbox-summary.c (summary_rebuild):
Summarising is spelt with an s.
2001-08-23 Not Zed <NotZed@Ximian.com>
* camel-mime-part.c (write_to_stream): If we have rawtext, then
dont do any charset conversion, only encoding/crlf conversion.
* camel-data-wrapper.h (struct _CamelDataWrapper): Added 'rawtext'
member, says the character encoding is raw, not utf8.
* providers/local/camel-spool-summary.c
(spool_summary_sync_quick): Synchronising is spelt with an s, not a z.
(spool_summary_sync_full): "
* providers/local/camel-mbox-summary.c (mbox_summary_sync_full):
No, synchronising is spelt with an s.
(mbox_summary_sync_quick): "
* camel-mime-part-utils.c
(camel_mime_part_construct_content_from_parser): Remove the
warnings which aren't going anywhere fast.
(convert_buffer): Function to convert a bytearray of textual
content from one charset to another. If the charset doesn't exist
or fails, then do no conversion.
(simple_data_wrapper_construct_from_parser): First, read in data,
then try and convert it using the specified charset if supplied.
If that fails, then dont do any conversion, and leave as raw.
Also, if we have any x-* charsets, then dont do any processing.
svn path=/trunk/; revision=12429
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-23 Peter Williams <peterw@ximian.com>
* providers/local/camel-mbox-summary.c (summary_rebuild): Add a
missing \n to the end of a printf.
* providers/local/camel-spool-summary.c (summary_rebuild): Same.
svn path=/trunk/; revision=12421
|
|
|
|
| |
svn path=/trunk/; revision=12386
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-22 Jeffrey Stedfast <fejj@ximian.com>
* providers/pop3/camel-pop3-folder.c (pop3_generate_uids):
Oops. Fixed a mis-use of GPtrArray. If we set_size, then using
g_ptr_array_add will assume `size' elements have already been
initialized and will start appending on to the end.
svn path=/trunk/; revision=12385
|
|
|
|
|
|
|
|
|
|
| |
2001-08-21 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-context.c (pgp_verify): Turn on --batch and reenable
gpg keyserver lookups.
(pgp_decrypt): Disable keyserver lookups if we are disconnected.
svn path=/trunk/; revision=12372
|
|
|
|
|
|
|
|
|
|
|
| |
* camel-folder-thread.c
(camel_folder_thread_messages_new_summary): Fix the duplicate
message check so it doesn't mess up threading when a reply appears
in the folder before the message it's a reply to. Fixes bug #3357.
(camel_folder_thread_messages_new): Likewise, although I don't
think this function is used any more.
svn path=/trunk/; revision=12341
|
|
|
|
|
|
|
|
| |
2001-08-20 JP Rosevear <jpr@ximian.com>
* Makefile.am: build a static camel for the addressbook conduit
svn path=/trunk/; revision=12287
|
|
|
|
|
|
|
|
|
|
|
| |
* providers/local/camel-mbox-summary.c (mbox_summary_sync_full):
s/Synchronising/Synchronizing/.
(mbox_summary_sync_quick): Likewise.
* providers/local/camel-spool-summary.c (spool_summary_sync_full):
Likewise.
(spool_summary_sync_quick): Likewise.
svn path=/trunk/; revision=12269
|
|
|
|
| |
svn path=/trunk/; revision=12261
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-20 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-store.c (create_folder): Get the
entire directory structure for the folder we just created, meaning
if we created a folder named "test.mailbox" where test didn't
previously exist, get the listing for "test" and "test.mailbox".
* providers/imap/camel-imap-utils.c (imap_parse_folder_name): New function.
svn path=/trunk/; revision=12258
|
|
|
|
|
|
|
|
| |
2001-08-19 Chris Toshok <toshok@ximian.com>
* camel-store.h: #include <sys/types.h> for mode_t on freebsd.
svn path=/trunk/; revision=12228
|
|
|
|
|
|
|
|
|
|
| |
2001-08-19 Jeffrey Stedfast <fejj@ximian.com>
* providers/pop3/camel-pop3-folder.c (pop3_generate_uids): Make
sure the generated UID is non-NULL before appending it to the
array of UIDs. How would this even happen? I have no clue...
svn path=/trunk/; revision=12225
|
|
|
|
| |
svn path=/trunk/; revision=12219
|
|
|
|
|
|
|
|
|
|
| |
2001-08-17 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-folder.c (imap_update_summary): Start
scanning new messages at maxuid + 1 rather than uidval + 1? Maybe
I'm missing the logic, but anyways...this might fix bug #5348.
svn path=/trunk/; revision=12170
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-16 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-store.c (imap_keepalive): If we are
online and message flags have changed in the current folder, sync
the flags else do a NOOP. This fixes bug #4666. Also lock around
the NOOP command.
* providers/imap/camel-imap-folder.c (imap_sync_online): Don't
ever send "STORE FLAGS.SILENT ()" since Cyrus imapd doesn't like
this (and maybe others too?) so what we'll do instead is to send
"STORE -FLAGS.SILENT (\Seen \Answered \Deleted \Marked)" to clear
all the flags (since this is in essence what we want to do
anyway).
svn path=/trunk/; revision=12136
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-16 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-folder.c (imap_sync_online): Don't
ever send "STORE FLAGS.SILENT ()" since Cyrus imapd doesn't like
this (and maybe others too?) so what we'll do instead is to send
"STORE -FLAGS.SILENT (\Seen \Answered \Deleted \Marked)" to clear
all the flags (since this is in essence what we want to do
anyway).
svn path=/trunk/; revision=12131
|
|
|
|
|
|
|
|
|
|
| |
2001-08-16 Peter Williams <peterw@ximian.com>
* providers/imap/camel-imap-store.c (imap_connect_online): Fix this
again. Sigh. Problem of namespace = "" may not yet be completely
solved.
svn path=/trunk/; revision=12095
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-15 Peter Williams <peterw@ximian.com>
* camel-tcp-stream-openssl.c (ssl_error_to_errno): New function. Try
to approximate the SSL error into errno.
(errlib_error_to_errno): New function, try to approximate OpenSSl's
error library's error (ERR_*) into errno.
(stream_read): Try to set errno using ssl_error_to_errno.
(stream_write): Same.
(open_ssl_connection): Same.
svn path=/trunk/; revision=12065
|
|
|
|
|
|
|
|
|
| |
2001-08-15 Peter Williams <peterw@ximian.com>
* providers/imap/camel-imap-store.c (imap_connect_online): Oh crap,
huge killer typo.
svn path=/trunk/; revision=12048
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-14 Peter Williams <peterw@ximian.com>
* providers/imap/camel-imap-store.c (imap_connect_online):
Canonicalize store->namespace to end in store->dir_sep, once both
values are known. The %F-related code makes this
assumption. Probably fixes a bug reported on the mailing list.
svn path=/trunk/; revision=12040
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-13 Jeffrey Stedfast <fejj@ximian.com>
* camel-store.c (camel_store_get_folder): After talking to NotZed,
it turns out I was wrong after all.
(store_sync): Create a copy of the folder-cache that owns a ref on
each of the folders so that if one of the folders get's finalized
inside store_sync(), we don't run into any locking issues. This is
mostly meant to solve a problem in IMAP (#6089).
svn path=/trunk/; revision=12032
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-13 Jeffrey Stedfast <fejj@ximian.com>
* camel-store.c (camel_store_get_folder): We need to be ref'ing
the folder if/when we add it to the hash. This may fix bug #6089?
(camel_store_get_folder): Nevermind, reverted the fix.
(camel_store_get_folder): No, I wasn't on crack before after
all...if we don't ref here, then we're open to a race condition
later.
svn path=/trunk/; revision=11973
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-13 Peter Williams <peterw@ximian.com>
* providers/imap/camel-imap-store.c (delete_folder): Fix a leak.
* providers/imap/camel-imap-utils.c (imap_namespace_concat): Bleah,
handle when namespace = NULL (can happen upon initial open of mailbox.)
* providers/imap/camel-imap-command.c (imap_command_strdup_vprintf):
Don't crash when %F'ing with an empty folder name and NULL namespace.
svn path=/trunk/; revision=11971
|
|
|
|
|
|
|
|
|
|
| |
2001-08-13 Jeffrey Stedfast <fejj@ximian.com>
* camel-store.c (camel_store_get_folder): We need to be ref'ing
the folder if/when we add it to the hash. This may fix bug #6089?
(camel_store_get_folder): Nevermind, reverted the fix.
svn path=/trunk/; revision=11969
|
|
|
|
|
|
|
|
|
| |
2001-08-13 Jeffrey Stedfast <fejj@ximian.com>
* camel-store.c (camel_store_get_folder): We need to be ref'ing
the folder if/when we add it to the hash. This may fix bug #6089?
svn path=/trunk/; revision=11968
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* providers/local/camel-spool-summary.c (summary_rebuild):
s/summarising/summarizing/.
(summary_rebuild): Likewise.
* providers/local/camel-mbox-summary.c (mbox_summary_sync_full):
s/summarise/summarize/.
(mbox_summary_sync_quick): Likewise.
(summary_rebuild): Likewise.
(mbox_summary_check): Likewise.
svn path=/trunk/; revision=11919
|
|
|
|
|
|
|
|
|
|
| |
2001-08-10 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-utils.c (imap_quote_string): Added an
assert - at this point a backtrace would be more useful than a
transaction log for debugging.
svn path=/trunk/; revision=11902
|
|
|
|
|
|
|
|
|
| |
2001-08-10 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-command.c (imap_command_start): Return
FALSE here, not NULL.
svn path=/trunk/; revision=11893
|
|
|
|
|
|
|
|
|
| |
tedfast <fejj@ximian.com>
* providers/imap/camel-imap-folder.c (imap_rescan): Don't
g_strdup() the uid into the trigger_event call.
svn path=/trunk/; revision=11892
|
|
|
|
|
|
|
|
|
| |
2001-08-10 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-folder.c (imap_rescan): Don't
g_strdup() the uid into the trigger_event call.
svn path=/trunk/; revision=11891
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-10 Jeffrey Stedfast <fejj@ximian.com>
* providers/pop3/camel-pop3-folder.c (pop3_get_message_stream):
Set the total bytes expected to 0 if the response is empty too.
(pop3_refresh_info): Return of there was an error generating pop3
uids.
svn path=/trunk/; revision=11886
|
|
|
|
|
|
|
|
|
| |
2001-08-10 Jeffrey Stedfast <fejj@ximian.com>
* providers/pop3/camel-pop3-folder.c (pop3_get_message_stream):
Set the total bytes expected to 0 if the response is empty too.
svn path=/trunk/; revision=11885
|
|
|
|
|
|
|
|
|
|
| |
2001-08-10 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-utils.c (header_raw_check_mailing_list): regfree the
pattern before continue'ing. This was showing up quite a bit under
purify.
svn path=/trunk/; revision=11867
|
|
|
|
|
|
|
|
|
|
| |
2001-08-09 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-utils.c (imap_parse_string_generic): A
quoted string cannot contain \n's so check for those as well.
(imap_atom_specials): Update this to fix bug #6553.
svn path=/trunk/; revision=11845
|
|
|
|
|
|
|
|
|
|
| |
2001-08-08 Jon Trowbridge <trow@ximian.com>
* camel-filter-search.c (get_source): Remove trailing stuff from
URLs before returning. (Done in an evil way, not in the good way
suggested by fejj. :)) (Bug #4876)
svn path=/trunk/; revision=11808
|
|
|
|
|
|
|
|
|
| |
2001-08-08 jacob berkman <jacob@ximian.com>
* camel-search-private.c (camel_search_header_match): check for
NULL name and addr (fixes a bug i was about to report)
svn path=/trunk/; revision=11786
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-08 Not Zed <NotZed@Ximian.com>
* camel-filter-search.c (check_header): Properly determine match
type to pass to header_match.
(address_matches_exactly): Removed, effectively added to
camel_search_header_match.
* camel-folder-search.c (check_header): Properly determine the
match type to pass to header_match.
* camel-search-private.c (camel_search_header_match): Add a new
parameter 'type' which is the type of header we're matching
against. ASIS means utf8 format, ADDRESS means an internet
address ('formatted'), ADDRESS_ENCODED means a raw address header,
ENCODED means rfc 2047 encoded text.
(header_match): Move original logic here, have search_header_match
call it as appropriate for the 'type' of match.
2001-08-07 Not Zed <NotZed@Ximian.com>
* camel-session.c (camel_session_class_init): Only init the vee
provider struct once (if we're subclassed this will get called
multiple times).
* camel-object.c (obj_finalize): Removed a bit of a debug that
crept in with jacob's poolv patch (?).
svn path=/trunk/; revision=11772
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-07 Jeffrey Stedfast <fejj@ximian.com>
* camel-filter-search.c (address_matches_exactly): New function to
do danw's address "is" comparison (as specified in bug #5886.
(check_header): Special-case address-type headers when we are
doing an exact match to use the address_matches_exactly function.
svn path=/trunk/; revision=11738
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-06 Jeffrey Stedfast <fejj@ximian.com>
* providers/pop3/camel-pop3-folder.c (pop3_get_message_stream):
Modify to take a headers_only argument which will then only fetch
message headers.
(pop3_generate_uids): Pass in TRUE for headers_only.
(pop3_get_message): Pass in FALSE for headers_only and move the
camel_operation() stuff out of get_message_stream and in to here
instead.
(pop3_generate_uids): We also need to be using i+ 1 as the id
since we are starting at 0.
svn path=/trunk/; revision=11722
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-06 Jeffrey Stedfast <fejj@ximian.com>
* providers/pop3/camel-pop3-folder.c (pop3_get_message_stream):
New internal function to get a message stream by message sequence
id (so that we can share code between pop3_get_message and
pop3_generate_uids).
(pop3_get_message): Use pop3_get_message_stream.
(pop3_generate_uids): New function to generate UIDs based on the
message - this fixes bug #1256.
(pop3_refresh_info): If the server doesn't support UIDL, call
pop3_generate_uids to get our list of UIDs.
* providers/imap/camel-imap-store.c (get_folder_info_online):
Don't strstr for noselect=yes, that's just plain broken.
svn path=/trunk/; revision=11721
|
|
|
|
|
|
|
|
|
| |
2001-08-06 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-store.c (get_folder_info_online):
Don't strstr for noselect=yes, that's just plain broken.
svn path=/trunk/; revision=11714
|
|
|
|
|
|
|
|
| |
* providers/imap/camel-imap-folder.c (imap_rescan): Fix off-by-one
error in cleaning up deleted messages at the end of the folder.
Fixes bug #5585 and maybe others.
svn path=/trunk/; revision=11712
|
|
|
|
|
|
|
|
| |
* providers/imap/camel-imap-store.c (get_folder_info_online): Do a
refresh_info on the selected folder before looking at its unread
count. Should fix bug #4944.
svn path=/trunk/; revision=11710
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-06 Peter Williams <peterw@ximian.com>
Completely hide the namespace from everything external to the IMAP
code, which Dan W says is the way it should be.
* providers/imap/camel-imap-command.c
(imap_command_strdup_vprintf): Add a new %F argument, which is like
%S but will add the namespace (for folder names).
(camel_imap_command): Use %F here.
* providers/imap/camel-imap-utils.c (imap_parse_list_response):
Changed to strip out the namespec when returning *folder. In order
to do this we need to be passed the CamelImapStore.
(imap_concat): Move to here from camel-imap-store.c, un-static
(imap_namespace_concat): New function, adds the namespace to the
folder name, unless it's INBOX.
* providers/imap/camel-imap-utils.h: Prototypes.
* providers/imap/camel-imap-store.c (imap_connect_online): Extra
arg to imap_parse_list_response.
(imap_connect_offline): Here too.
(get_folder_status): Use %F.
(get_folder_online): Here too.
(delete_folder): Here too.
(create_folder): Here too, and arg to imap_parse_list_response.
(parse_list_response_as_folder_info): Arg to i_p_l_r.
(get_subscribed_folders_by_hand): Use %F.
(get_folders_online): Here too.
(get_folder_info_online): Instead of checking for NULL @name, check
for name = NULL or "", and set to "" instead of namespace. Pass ""
instead of namespace to camel_folder_info_build.
(subscribe_folder): Use %F.
(unsubscribe_folder): Here too.
* providers/imap/camel-imap-folder.c (imap_get_full_name): This
now just returns folder->full_name.
(do_append): Use %F
(do_copy): Here too.
svn path=/trunk/; revision=11705
|
|
|
|
|
|
|
|
| |
2001-08-06 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-context.c (pgp_verify): Always do --no-auto-key-retrieve.
svn path=/trunk/; revision=11703
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-03 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-context.c (pgp_verify): Minor changes to the iconv
code so that it does the check in the return value of iconv() just
like the code in camel-mime-utils.c in case this fixes Bo Rosen's
gpg bugs (but I doubt this will change anything?).
svn path=/trunk/; revision=11622
|
|
|
|
|
|
|
|
|
|
| |
2001-08-03 Jeffrey Stedfast <fejj@ximian.com>
* providers/smtp/camel-smtp-transport.c (smtp_connect): First
check to make sure that service->url->authmech is non-NULL before
passing it into strcmp to avoid a segfault.
svn path=/trunk/; revision=11618
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-03 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-context.c (pgp_decrypt): Sigh, if gpg returns '1' it
means that the key is bad but it did succeede in decrypting the
block so to make users happy (even though I find this a
questionable action) we are going to ignore the error and show it
to the user anyway. This fixes bug #6136.
svn path=/trunk/; revision=11617
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-03 Not Zed <NotZed@Ximian.com>
* providers/smtp/camel-smtp-transport.c (smtp_connect): special
case popb4smtp auth before we try and connect, and do the magic
here first.
2001-08-02 Not Zed <NotZed@Ximian.com>
* providers/smtp/camel-smtp-transport.c (smtp_connect): Check for
POPB4SMTP separate to the esmtp auth list.
(smtp_auth): If creating the sasl object means it is
already authenticated, then exit early. Sort of 'clean hack' to
help popb4smtp work.
(smtp_auth): Unref the sasl object, clean up a memleak i think.
* providers/smtp/camel-smtp-provider.c
(camel_provider_module_init): Added POPB4SMTP auth type.
* camel-sasl.c (camel_sasl_authtype): Added POPB4SMTP type.
* camel-sasl-popb4smtp.c: New file for pop before smtp
'authentication'.
* Makefile.am (libcamel_la_SOURCES, HEADERS): Add
camel-sasl-popb4smtp.[ch].
svn path=/trunk/; revision=11615
|
|
|
|
|
|
|
|
|
|
| |
2001-08-01 Not Zed <NotZed@Ximian.com>
* providers/local/camel-mbox-folder.c (mbox_lock): If we fail to
get the lock, make sure we close our locking fd, and reset it.
Fixes the crash part of 5095.
svn path=/trunk/; revision=11538
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-08-01 Not Zed <NotZed@Ximian.com>
* providers/imap/camel-imap-folder.c (camel_imap_folder_changed):
Slightly re-arranged filter/change notification logic. If we;re
filtering, freeze the folder till we're finished to smooth the ui
for new mail.
2001-07-31 Not Zed <NotZed@Ximian.com>
* camel-folder.c (camel_folder_init): Chagned mutexes to
e_mutexes, folder lock recursive. This fixes the imap filtering
bug, or at least some cases of it.
(camel_folder_finalize): Free mutexes.
* camel-private.h (CamelFolderPrivate): Changed mutexes to
e_mutexes.
2001-07-25 Not Zed <NotZed@Ximian.com>
* camel-folder.c (camel_folder_change_info_*): Change the
return if fail's into asserts.
(camel_folder_change_info_free): Don't let it accept a NULL
argument. This isn't g_lib so we dont have to.
svn path=/trunk/; revision=11537
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-27 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-utils.c (header_decode_param): Fix the fix that fixes
broken mailer behavior. We want to make sure that the user's
locale charset is non-NULL before we pass it off to
iconv_open(). If it *is* NULL, we want to use iso-8859-1.
svn path=/trunk/; revision=11448
|
|
|
|
|
|
|
|
|
| |
2001-07-26 Jeffrey Stedfast <fejj@ximian.com>
* camel-url.c (camel_url_free): Allow the url to be NULL just like
the libc free convention.
svn path=/trunk/; revision=11437
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* providers/imap/camel-imap-command.c (camel_imap_command_start):
Send an IMAP command, but don't wait for responses.
(camel_imap_command_response): Read a single line of response from
the server.
(camel_imap_command, etc): Reimplement in terms of the new code.
* providers/imap/camel-imap-folder.c (imap_rescan): Use
camel_imap_command_start and camel_imap_command_response, and
call camel_operation_progress after each line read from the
server.
(imap_update_summary): Likewise, although with more fudging on the
precentages... Also, fix this so that if none of the new messages
are cached, it only does a single FETCH, and if some of them are
cached, it does two FETCHes (one to get the UIDs, FLAGS, and
SIZEs, and another to get the bodies of all of the messages that
aren't cached now that it knows the relevant UIDs). This should
speed up startup a bunch (especially if you have high bandwidth
but also high latency to the IMAP server).
svn path=/trunk/; revision=11430
|
|
|
|
|
|
|
| |
* camel-mime-utils.c (mail_mlist_magic): Add another Sender
pattern.
svn path=/trunk/; revision=11399
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-24 Not Zed <NotZed@Ximian.com>
* providers/imap/camel-imap-folder.c (camel_imap_folder_changed):
Change the break into a continue, we should process as many as we
can find.
* camel-folder.c (camel_folder_move_messages_to): If we have no
uid's to copy, exit here before going any further. Some code
internally [imap] assumes there are uids to copy otherwise it can
segfault.
(camel_folder_copy_messages_to): Same.
svn path=/trunk/; revision=11392
|
|
|
|
| |
svn path=/trunk/; revision=11363
|
|
|
|
|
|
|
|
|
|
| |
2001-07-24 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-utils.c (header_decode_param): Handle broken mailers
that send unencoded 8bit header params. And there was much
rejoicing. Rah.
svn path=/trunk/; revision=11362
|
|
|
|
|
|
|
|
|
| |
2001-07-24 Jeffrey Stedfast <fejj@ximian.com>
* camel-url.h (CAMEL_URL_HIDE_ALL): New #define, and there was
much rejoicing. Rah.
svn path=/trunk/; revision=11351
|
|
|
|
|
|
|
|
|
| |
2001-07-24 Not Zed <NotZed@Ximian.com>
* camel-operation.c (camel_operation_register, unregister): Added
some warnings for bad cases.
svn path=/trunk/; revision=11333
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-24 Not Zed <NotZed@Ximian.com>
* camel-operation.c (camel_operation_register, unregister): Added
some warnings for bad cases.
2001-07-23 Not Zed <NotZed@Ximian.com>
* camel-operation.c (camel_operation_register): Only insert a hash
entry if we haven't already.
(camel_operation_unregister): Only remove the has entry if the id
is a real thread.
svn path=/trunk/; revision=11329
|
|
|
|
|
|
|
|
|
|
| |
2001-07-23 Jeffrey Stedfast <fejj@ximian.com>
* camel-filter-driver.c (do_move): Slight fix for when source ==
destination (we don't want to do this action because on-demand
filtering would then delete the messages it supposedly "moved").
svn path=/trunk/; revision=11304
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-23 Not Zed <NotZed@Ximian.com>
* providers/smtp/camel-smtp-transport.c (smtp_auth, smtp_helo,
send_to): Added some operation progress reporting. Actual data
transfer is 'tricky' because of the layers used.
(smtp_auth): Instead of checking exception_is_set, use
challenge==NULL to test if sasl_challenge_base64 failed.
* providers/local/camel-mbox-summary.c (mbox_summary_sync): Remove
peters changes below and put in a better fix. These functions
already return -1 on error, just use that, and not worry about
building our own exception redundantly.
* camel-service.c (camel_get_host_byname): Turn the progress into
a transient event.
svn path=/trunk/; revision=11301
|
|
|
|
|
|
|
|
|
|
| |
2001-07-20 Peter Williams <peterw@ximian.com>
* providers/local/camel-mbox-summary.c (mbox_summary_sync): More
usage fixes for CamelException. Check our own exception for
summary_update and xfer it out if an error occurred.
svn path=/trunk/; revision=11273
|
|
|
|
|
|
|
|
| |
2001-07-20 JP Rosevear <jpr@ximian.com>
* Pull up test fixes to get them building again
svn path=/trunk/; revision=11270
|
|
|
|
|
|
|
|
|
| |
2001-07-20 Not Zed <NotZed@Ximian.com>
* camel-charset-map.c (camel_charset_get_iconv_friendly_name):
renamed to camel_charset_to_iconv() to make it just a little more
svn path=/trunk/; revision=11254
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-19 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-filter-charset.c
(camel_mime_filter_charset_new_convert): Convert to the
iconv-friendly charset names.
* providers/imap/camel-imap-store.c (create_folder): Fixed a
compiler warning about returning without a value in a non-void
function. Blah.
* camel-mime-part.c (process_header): Pass the locale charset as
the default_charset to header_decode_string().
* camel-folder-summary.c (camel_folder_summary_format_string):
Pass the locale charset as the default_charset to
header_decode_string().
(content_info_new): Same.
* camel-mime-message.c (process_header): Pass the locale charset
as the default_charset to header_decode_string().
* camel-mime-utils.c (append_8bit): New helper function who's
purpose is similar to append_latin1() but for 8bit text that we
are assuming is not latin1.
(header_decode_text): Now takes a default_charset parameter and
calls append_8bit when appropriate.
(header_decode_string): Also takes a default_charset parameter
now.
(header_decode_mailbox): Pass NULL as the default_charset to
header_decode_string().
svn path=/trunk/; revision=11250
|
|
|
|
|
|
|
|
|
|
| |
2001-07-19 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-store.c (create_folder): Fixed a
compiler warning about returning without a value in a non-void
function. Blah.
svn path=/trunk/; revision=11247
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-19 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-context.c (pgp_verify): Modified to treat the return
value from camel_charset_locale_name() as a const char*.
* camel-sasl-digest-md5.c (digest_response): Modified to treat the
return value from camel_charset_locale_name() as a const char*.
* camel-charset-map.c (camel_charset_locale_name): Modify to
return const char* by returning the static locale_charset which is
created inside of camel_charset_map_init().
(camel_charset_map_init): Find the locale charset here and set the
static variable.
svn path=/trunk/; revision=11245
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-19 Peter Williams <peterw@ximian.com>
Policy change: NULL url's are no longer allowed in CamelFolderInfos. They used
to signify that the folder was, in IMAP jargon, NoSelect; now the same effect
is achieved by adding a "noselect=yes" parameter to the end of the URL. As far
as I know, IMAP is the only affected provider.
* providers/imap/camel-imap-store.c (delete_folder): New function. Implement
folder deletion.
(camel_imap_store_class_init): Set the delete_folder class function here.
(get_folder_status): New function. Utility wrapper around the STATUS command.
(create_folder): If the parent folder is NoSelect but is empty, delete it
and recreate it as a a subfolder-containing folder. If it is NoSelect but
contains messages, set an exception.
(parse_list_response_as_folder_info): Always set the FolderInfo's URL, but
add a NoSelect parameter if it isn't selectable.
(get_folder_info_online): Change logic of removing the namespace to reflect
URL change. Same for logic of checking unread counts.
(get_folder_info_online): Use get_folder_status to simplify this.
* camel-store.c (camel_folder_info_build): When creating
dummy parents, copy the child's URL and set the NoSelect
parameter.
In mail:
2001-07-19 Peter Williams <peterw@ximian.com>
Track the NoSelect changes in Camel.
* mail-callbacks.c (create_folders): We don't need to check if
the URL is NULL or not anymore.
* component-factory.c (create_noselect_control): New
function. Create a dummy control for folders that can't contain
messages (ie \NoSelect)
(create_view): If the URI says the folder is noselect, make a
dummy control. FIXME: still should merge in the global UI
elements.
(xfer_folder): Don't allow the operation if the destination is
NoSelect.
(destination_folder_handle_motion): Ditto.
(destination_folder_handle_drop): Ditto.
svn path=/trunk/; revision=11237
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-19 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-part-utils.c
(simple_data_wrapper_construct_from_parser): No need for
`acharset' anymore.
(check_html_charset): Return a const char* and also use
camel_charset_get_iconv_friendly_name() internally.
svn path=/trunk/; revision=11236
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2001-07-19 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-utils.c (rfc2047_decode_word): Remove my iso8859-1 ->
iso-8859-1 hack and use camel_charset_get_iconv_friendly_name()
instead.
(rfc2184_decode): Use camel_charset_get_iconv_friendly_name()
* camel.c (camel_init): Call camel_charset_map_init().
* camel-charset-map.c (camel_charset_map_init): New function to
initialize the charset-equivalent lookup table. To be called by
camel_init().
(camel_charset_get_iconv_friendly_name): New function to try and
convert a charset into something that iconv is more likely to
accept.
svn path=/trunk/; revision=11235
|
|
|
|
|
|
|
|
|
| |
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
|