| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
2002-10-25 Jeffrey Stedfast <fejj@ximian.com>
* camel-gpg-context.c (gpg_ctx_parse_status): Don't prematurely
set gpg->complete to TRUE. Let gpg_ctx_op_step () set it to TRUE
when gpg closes the status-fd instead.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-10-24 Not Zed <NotZed@Ximian.com>
** For bug #31647 and bug #31456.
* camel-store-summary.c (store_info_string): for STORE_INFO_NAME,
skip the leading /.
* providers/imap/camel-imap-store.c
(parse_list_response_as_folder_info): Remove jeff's last patch,
and use the store summary to create the name and path of the
folderinfo so it manages namespace issues.
(get_folder_info_online): Just pass @top directly to
build_folder_info always, since namespace is mapped to 1 tree
level.
(imap_build_folder_info): Remove jeff's last patch, dont strip
leading /'s, they shouldn't exist.
(imap_connect_online): Remove adding the INBOX here, we add it
later.
(get_subscribed_folders): Make sure INBOX is always in the list.
some imap servers dont seem to let you subscribe to it(?), so
always have it act as subscribed.
* camel-store.c (camel_folder_info_build): back out the last 2
patches from Jeff (for #31456) to get the original behaviour.
(camel_folder_info_build): When creating a fake
parent, dont strip the namespace from the full_name. malloc keys
in hash since we dont have them anymore.
(free_name): Helper to free names.
* providers/imap/camel-imap-store-summary.c
(camel_imap_store_summary_namespace_new): Canonicalise the
namespace (strip trailing dir_sep), and change the path to remove
any /'s.
(camel_imap_store_summary_namespace_find_path):
(camel_imap_store_summary_namespace_find_full): new, find
namespace by path/full name.
(camel_imap_store_summary_full_from_path): Changed to a simple
wrapper around path_to_full, after checking namespace.
(camel_imap_store_summary_add_from_full): map the namespace if
present.
(camel_imap_store_summary_path_to_full): If namespace exists,
unmap it.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-10-18 Jeffrey Stedfast <fejj@ximian.com>
* camel-filter-driver.c (camel_filter_driver_filter_folder):
Canonicalise the source_uri to not have a path. Fixes bug #32268.
2002-10-17 Jeffrey Stedfast <fejj@ximian.com>
Possible fix for bug #32270
* providers/pop3/camel-pop3-store.c (try_sasl): If we get an I/O
error, we should not be setting the CANT_AUTH exception but should
instead be setting the SYSTEM exception. Also check for EINTR
which signifies a USER_CANCEL exception.
(pop3_try_authenticate): If the auth mechanism isn't supported,
don't set the CANT_AUTH exception since then we will loop and try
again with the same data which will just cause an infinite loop.
(pop3_connect): Simplified a bit.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
2002-10-03 Not Zed <NotZed@Ximian.com>
* camel-folder.c
(filter_filter): Do the filtering ourselves. This is so a problem
like a missing uid (which can happen legitemitely) doesn't
prematurely abort filtering. Stop on all other errors. See
#31667.
|
|
|
|
|
|
|
| |
2002-10-17 Jeffrey Stedfast <fejj@ximian.com>
* camel-tcp-stream-ssl.c (camel_certdb_nss_cert_set): If
~/.camel_certs doesn't exist, create it.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-10-15 Not Zed <NotZed@Ximian.com>
* camel-tcp-stream-ssl.c (cert_fingerprint): helper, build
fingerprint.
(camel_certdb_nss_cert_get): Helper for nss certs. Lookup cert.
As well as fingerprint, the whole raw cert is checked for
validity.
(camel_certdb_nss_cert_add): Add an nss cert to a certdb, also
saves the cert by fingerprint in ~/.camel_certs/.
(ssl_bad_cert): Changed to use above functions to simplify logic.
(ssl_bad_cert): Also added non-compiled code which mimics what
mozilla does, but it doesn't work right :-/
(camel_certdb_nss_cert_set): Save the raw cert associated with a
cert.
* camel-certdb.c (certdb_cert_free): Free the raw cert data if
set.
2002-10-14 Not Zed <NotZed@Ximian.com>
* camel-file-utils.c (camel_file_util_encode_string): Encode a
length of 0 as 1, not 0, to match the decode code.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-10-16 Jeffrey Stedfast <fejj@ximian.com>
* camel-gpg-context.c (camel_gpg_context_new): No longer takes a
path argument.
(camel_gpg_context_fianlise): No need to free ctx->path.
(gpg_ctx_new): No longer takes a path argument either.
(gpg_ctx_free): No need to free ctx->path, it's no longer used.
(gpg_ctx_op_start): Don't stat the path anymore and change the
first arg to execvp to "gpg" so that we use the shell's
environment to find gpg.
(gpg_sign): Updated.
(gpg_verify): Updated.
(gpg_encrypt): Updated.
(gpg_decrypt): Updated.
(gpg_ctx_get_argv): Removed some debug printfs.
|
|
|
|
|
|
|
| |
2002-10-15 Jeffrey Stedfast <fejj@ximian.com>
* camel-gpg-context.c (gpg_id_to_hash): If the hash id is NULL,
return CAMEL_CIPHER_HASH_DEFAULT. Fixes bug #32229.
|
|
|
|
|
|
|
|
|
|
|
| |
2002-10-08 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-command.c (imap_read_response): If the
response from the IMAP server is "No", don't set the
SERVICE_UNAVAILABLE exception, this makes error reporting in the
UI for deleting IMAP folders that cannot be deleted inaccurate
(ie, it reports "Cannot delete in offline mode" which is not the
problem).
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-10-07 Jeffrey Stedfast <fejj@ximian.com>
Fixes bug #31752
* providers/smtp/camel-smtp-transport.c (connect_to_server): Don't
forget to send another EHLO command to the server once we toggle
into STARTTLS mode.
(smtp_helo): Reset any flags set using the EHLO response and also
any authtypes.
|
|
|
|
|
|
|
|
| |
2002-10-06 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-utils.c: Fix all mailing list regex patterns to allow
any number of spaces *or* tabs as pre-padding for the header
values.
|
|
|
|
|
|
|
|
|
| |
2002-10-03 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-part.c (write_to_stream): Use the content-object's
rawtext flag to decide if it needs to be filtered through the
charset filter instead of using the mime part's rawtext flag since
this will never be set. Partial fix for bug #31655.
|
|
|
|
|
|
|
|
|
| |
2002-10-03 Not Zed <NotZed@Ximian.com>
* camel-folder.c (folder_changed): Dont get the filter driver
inside the change_lock. Its not necessary, and can cause deadlock
with the way the mailer gets the filter driver via g_mainloop.
Should fix #31572.
|
|
|
|
|
|
|
| |
2002-10-02 Jeffrey Stedfast <fejj@ximian.com>
* camel-charset-map.c (camel_charset_iso_to_windows): Map us-ascii
to windows-1252 also.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-10-02 Not Zed <NotZed@Ximian.com>
* providers/imap/camel-imap-folder.c (get_matching): Set *set to
NULL if we dont get any matches.
(imap_sync_online): If we get no matches, skip any work, also
reorder some code to make it easier to skip. See #31031.
* providers/imap/camel-imap-store.c
(imap_check_folder_still_extant): Default to "TRUE", if the list
command failed, it probably means a server problem, assume the
worst. This makes imap_refresh_info not clear the exception and
crash. Fixes crash of #31000.
2002-10-01 Not Zed <NotZed@Ximian.com>
* providers/imap/camel-imap-folder.c (imap_refresh_info): Make
sure we pass the exception to imap_folder_selected(), otherwise
failures can be lost. See bug #31000.
2002-10-01 Not Zed <NotZed@Ximian.com>
* camel-folder.c (thaw): Add an assertion that the frozen count>0.
(freeze): Same for >= 0.
* camel-vee-folder.c (camel_vee_folder_remove_folder): Use the
unmatched freeze_count when thawing folders removed from
unmatched, rather than the folder's freeze_count. Might be
related to #27391.
|
|
|
|
|
|
|
|
|
|
| |
2002-10-01 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-folder.c (decode_internaldate): Use
strtol when decoding the timezone (since it can be negative) and
don't forget to increment inptr to the start of the time (ie,
don't leave inptr pointing to the year when decoding the
hour:min:sec).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-09-30 Jeffrey Stedfast <fejj@ximian.com>
Fixes bug #31456.
* providers/imap/camel-imap-store.c (imap_connect_online): Don't
LSUB "" "*", instead get both an LSUB containing the subfolders of
the namespace and an LSUB of INBOX (assuming namespace was
non-empty). This fix really has nothing to do with bug #31456 but
is what should have been done in the first place.
(parse_list_response_as_folder_info): Simplify a tad and strip
extra leading /'s from fi->path.
(imap_build_folder_info): Strip extra leading /'s from fi->path.
* camel-store.c (camel_folder_info_build): Don't strip the
namespace from the fi->full_name when hashing or creating fake
parent folder-infos. Fixes a bug I found while trying to reproduce
bug #31456.
(camel_folder_info_build_path): Strip off extra leading dir_sep
chars from the path.
|
|
|
|
|
|
|
|
|
| |
2002-09-30 Jeffrey Stedfast <fejj@ximian.com>
* camel-store.c (camel_folder_info_build): Don't strip the
namespace from the fi->full_name when hasing or creating fake
parent folders. Fixes a bug I found while trying to reproduce bug
#31456.
|
|
|
|
|
|
|
|
|
|
|
| |
2002-09-30 Not Zed <NotZed@Ximian.com>
* providers/imap/camel-imap-folder.c (imap_get_message): Remove
debug content_info_dump, could cause a crash, and not really
needed anymore.
* camel-folder-summary.c (camel_content_info_dump): Check ci->type
!= NULL before dereferencing it. Should fix crash #31331.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-09-27 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-folder.c (decode_internaldate): New
function to decode the INTERNALDATE response from an IMAP server
so we don't have to use my broken-date-parser routines.
2002-09-27 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-store.c (connect_to_server):
NULL-check the streams before unreffing them in the case of a
failure during ssl negotiations.
* camel-tcp-stream-ssl.c (camel_tcp_stream_ssl_enable_ssl): Check
SSL_ResetHandshake() for errors. Also force a handshake after
we've reset the handshake state on the socket.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-09-27 Not Zed <NotZed@Ximian.com>
* providers/imap/camel-imap-folder.c (imap_update_summary): Use
the summary's last uid as the one to fetch from, ignoring the
cache. Use strotul instead of atoi as well.
* providers/imap/camel-imap-store.c (get_folder_counts): If we
have the folder open, and the unread count has changed, refresh
it. Should fix #30399 enough. Also in non-check-all mode, if we
have the folder open, use it anyway.
|
|
|
|
|
|
|
|
|
|
| |
2002-09-26 Not Zed <NotZed@Ximian.com>
* tests/folder/test2.c (main): Treat spool as a local folder, so
the ref checks work right.
* providers/local/camel-spool-store.c
(get_folder): Use creat() instead of open() to create file.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-09-26 Not Zed <NotZed@Ximian.com>
* providers/local/camel-spool-store.c (get_folder): Implement
FOLDER_CREATE flag.
(scan_dir): Dont free name on exception, its alloca'd.
(scan_dir): If we start scanning from a file, just add that
directly.
(scan_dir): Allow empty files to also show up in folder list, as
well as files starting with "From ".
* providers/local/camel-spool-folder.c (camel_spool_folder_new):
Check folder != NULL before writing to it.
* providers/local/camel-local-store.c (create_folder): Handle a
parent of NULL for creating top-level dirs. Part of #31186.
|
|
|
|
|
|
|
|
|
|
| |
2002-09-26 Not Zed <NotZed@Ximian.com>
* providers/imap/camel-imap-store.c
(parse_list_response_as_folder_info): Store the folder flags in
the store summary.
(get_one_folder_offline): Set the noselect url parameter if this
is a noselect folder, from the stored summary flags. #30877.
|
|
|
|
|
|
|
|
|
| |
2002-09-23 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-filter-charset.c (complete): Handle EILSEQ by eating
bytes in the input buffer until conversion is successful. The old
behaviour aborted when it got EILSEQ and just dumped the raw data.
(filter): Same. Fixes bug #30873.
|
|
|
|
| |
for it. input charset files should be in the form "charset-%s.%d.in" where %s is the charset name that the file is in and %d is just some number as in a sequence id. Mostly just so we can have multiple test files per charset
|
|
|
|
|
|
|
| |
2002-09-24 Not Zed <NotZed@Ximian.com>
* camel-mime-utils.c (mail_list_magic[]): Changed the Mailing-List
rule to get the complete domain (* in wrong spot). #31087.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-09-24 Not Zed <NotZed@Ximian.com>
* camel-text-index.c (text_index_compress_nosync): If we have no
data written to a key, dont add it, or its partition header.
2002-09-23 Not Zed <NotZed@Ximian.com>
* camel-block-file.c (sync_nolock): Mark root block dirty if we're
going to sync it.
(camel_key_file_finalise): de-count the active list if we close
it.
* camel-text-index.c (text_index_delete): Implement.
(text_index_compress_nosync): Use index_delete when we're finished
with the old one, so it is properly deactivated.
* camel-index.c (camel_index_delete): Remove api call. Mark index
deleted in new state variable.
(camel_index_*): Wrap all calls in check for deleted state.
|
|
|
|
|
|
|
| |
2002-09-23 Jeffrey Stedfast <fejj@ximian.com>
* camel-folder.c (transfer_message_to): If the original message is
deleted, reset the deleted flag when we're done. Fixes bug #30876.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-09-23 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-folder.c (add_message_from_data):
Decode the INTERNALDATE if we've got one.
(imap_update_summary): Instead of requesting a list of specific
headers, request HEADER.FIELDS.NOT (RECEIVED) to reduce bandwidth
usage even more.
(parse_fetch_response): Change slightly to allow HEADER.FIELDS or
HEADER.FIELDS.NOT so that we can make changes in
imap_update_summary and not need to keep changing this function to
match. Also parse an INTERNALDATE response.
|
|
|
|
|
|
|
|
|
|
|
| |
* camel-mime-parser.c (folder_scan_drop_step): fix non-ANSI switch
statement.
* camel-service.c (service_getv): Likewise.
* providers/imap/camel-imap-store.c (imap_getv): Likewise.
* providers/pop3/camel-pop3-folder.c (cmd_builduid): Likewise.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-09-20 Not Zed <NotZed@Ximian.com>
* tests/misc/split.c: New regression test for word
splitting/search input parsing code.
* tests/folder/test9.c (main): Fix for filter_driver api change.
* camel-search-private.c (camel_search_words_split): Handle "'s
and \'s to escape characters. For fat, lazy, slobs who dont like
anything changing.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-09-19 Not Zed <NotZed@Ximian.com>
* camel-filter-search.c (camel_filter_search_match): Take new
session arg. Update callers.
(symbols[]): changed get-source to header-source
(header_source): Chagned from get_source. Now a boolean, returns
true if source matches one of the arguments. Uses the provider
url comparison directly for accurate checking. Makes 'filter on
source' work.
* camel-filter-driver.c (camel_filter_driver_new): Take new arg,
session.
(camel_filter_driver_finalise): Free session.
|
|
|
|
|
|
|
|
|
|
|
| |
2002-09-19 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-folder.c (parse_fetch_response): Don't
increment the response pointer when deciding what type of header
response we got, this screws up the string that we strdup into the
part_spec string later. Also, instead of using the entire blob of
HEADER.FIELDS that we get in the response, shorten it to just
HEADER.FIELDS to use as the part_spec key.
|
| |
|
|
|
|
|
|
|
| |
2002-09-18 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-folder.c (CAMEL_MESSAGE_INFO_HEADERS):
Include MIME-VERSION and CONTENT-TYPE.
|
|
|
|
|
|
|
|
| |
2002-09-18 Not Zed <NotZed@Ximian.com>
* providers/imap/camel-imap-command.c
(camel_imap_command_response): If we get an ALERT, pass it to the
user. An rfc2060 MUST, and bug #22496.
|
|
|
|
|
|
|
|
|
|
| |
2002-09-17 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-folder.c (parse_fetch_response):
Handle when the response is from a HEADER.FIELDS (if so, we don't
want to cache the result).
(imap_update_summary): Request specific headers when building the
CamelMessageInfo's rather than fetching the full headers.
|
|
|
|
|
|
|
|
|
| |
2002-09-13 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-part.c (process_header): If header_msgid_decode fails
for the content-id field, just grab whatever is between the <>'s
(yes, this means that the content-id is invalid - but what can ya
do?). Addresses bug #21027.
|
|
|
|
|
|
|
|
|
| |
2002-09-13 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-part.c (process_header): If header_msgid_decode fails
for the content-id field, just grab whatever is between the <>'s
(yes, this means that the content-id is invalid - but what can ya
do?). Addresses bug #21027.
|
|
|
|
|
|
|
| |
2002-09-11 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-utils.c (header_encode_string): Revert a patch that I
had not meant to commit that was aimed at fixing bug #29234.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-09-10 Jeffrey Stedfast <fejj@ximian.com>
* camel-store-summary.c (camel_store_summary_load): Same as
below. Also save errno before closing the file so our caller can
figure out why we failed.
(camel_store_summary_save): Same here, but also flush the output
stream to disk.
* camel-folder-summary.c (camel_folder_summary_load): s/fclose(in)
== -1/fclose(in) != 0/ since fclose doesn't necessarily return -1
on fail, all we really know is that it returns 0 on success and
non-zero on fail.
* camel-certdb.c (camel_certdb_save): fsync() the stream after we
fflush it.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-09-10 Jeffrey Stedfast <fejj@ximian.com>
* camel-folder-summary.c (perform_content_info_save): Do proper
error checking and return -1 on fail.
(camel_folder_summary_save): Check the return of
perform_content_info_save and a few other output calls within the
message_info_save loop. If any of them fail, save errno, close the
file, and return -1. If we finish the loop without fail, fflush
the stream and then fsync (fflush only flushes user-space buffers,
you still need to fsync afterward to flush the data to disk). If
either fail, treat it as an exception by saving errno, closing the
stream, and returning -1. I suspect that this also fixes bug
#30150 because the old code would fclose if fflush or fclose
failed in the check after the loop (man fclose(3) states that any
further calls using the stream (even another call to fclose) will
have undefined behaviour no matter what the first fclose call
returned).
* providers/local/camel-local-summary.c
(camel_local_summary_init): Don't malloc a private struct of 0
size.
|
|
|
|
|
|
|
|
|
| |
2002-09-10 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-folder.c
(camel_imap_folder_fetch_data): Clear the exception even if we
failed to get the message (part) from the imap-message-cache if we
are online and able to try fetching it from the IMAP server.
|
|
|
|
|
|
|
|
| |
2002-09-10 Not Zed <NotZed@Ximian.com>
* camel-data-cache.c (data_cache_expire): Remove the hash table
entry using the right path. Related to #29731.
(camel_data_cache_remove): "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-09-09 Jeffrey Stedfast <fejj@ximian.com>
Fixes bug #4224
* providers/imap/camel-imap-folder.c
(camel_imap_folder_fetch_data): Pass ex into
camel_imap_message_cache_get().
* providers/imap/camel-imap-message-cache.c
(camel_imap_message_cache_get): Now takes an exception and sets it
on fail.
(camel_imap_message_cache_copy): Updated to properly handle
cache_get error conditions.
|
|
|
|
|
|
|
|
|
| |
* camel-mime-utils.c (header_decode_date): Use e_mktime_utc.
* camel-mime-message.c (camel_mime_message_set_date): Use
e_localtime_with_offset.
* broken-date-parser.c (decode_broken_date): Use e_mktime_utc.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-09-04 Not Zed <NotZed@Ximian.com>
* tests/folder/test4.c (main): clear nonfatal stuff.
* tests/folder/test6.c (main): check inbox and 'another folder'
because some servers do different things w/ inbox.
* providers/imap/camel-imap-message-cache.c
(camel_imap_message_cache_get): Dont try to open the directory
instead of an empty "" uid.
* providers/imap/camel-imap-folder.c (imap_get_message): we dont
want to g_return_if_fail, we need to set an exception and always
handle the case.
(get_message_simple): Set an exception if we get a construct
failure.
(imap_refresh_info): if we're refreshing inbox, force a reselect.
this is required for at least cryus. CHECK doesnt work either :(
* tests/lib/folders.c (test_folder_basic): for non-local stores,
the folder will have an extra ref for selection, take this into
account when checking ref leaks.
(test_folder_message_ops): Dont try to delete folder with messages
in it, it works generally with imap. also, change params so we
can test different mailbox types.
(test_folder_message_ops): disconnect remote services before
finishing off. doesn't need to stricly but makes ref count
checking more accurate.
(test_folder_message_ops): removed explicit remote sync, imap does
it itself now ...
* providers/imap/camel-imap-store.c:
(camel_imap_store_finalize): call service_disconnect, so it isn't
called later in the finalise chain, to properly cleanup on exit.
|