platform/upstream/evolution-data-server.git
23 years agoMake this not leak.
Dan Winship [Thu, 7 Sep 2000 21:00:56 +0000 (21:00 +0000)]
Make this not leak.

* camel-session.c (camel_session_get_storage_path): Make this not
leak.

23 years agoMake this take a path to a directory that Camel can use for its own
Dan Winship [Thu, 7 Sep 2000 19:59:53 +0000 (19:59 +0000)]
Make this take a path to a directory that Camel can use for its own

* camel-session.c (camel_session_new): Make this take a path to a
directory that Camel can use for its own nefarious purposes.
(camel_session_get_storage_path): New function to return a path
that a service can use for its own nefarious sub-purposes.

* camel-service.c (camel_service_get_path): New method (and
useful default implementation) to get a (relative) pathname
corresponding to the service.

23 years ago*** empty log message ***
Dan Winship [Thu, 7 Sep 2000 16:22:30 +0000 (16:22 +0000)]
*** empty log message ***

23 years agoMake KPOP work again.
Dan Winship [Thu, 7 Sep 2000 16:21:41 +0000 (16:21 +0000)]
Make KPOP work again.

* providers/pop3/camel-pop3-store.c (connect_to_server): Make KPOP
work again.

23 years agooops, spelling mistake
Jeffrey Stedfast [Thu, 7 Sep 2000 03:48:39 +0000 (03:48 +0000)]
oops, spelling mistake

23 years agoImplemented (someone added these to camel-mime-message.h but never
Jeffrey Stedfast [Thu, 7 Sep 2000 03:47:45 +0000 (03:47 +0000)]
Implemented (someone added these to camel-mime-message.h but never

2000-09-06  Jeffrey Stedfast  <fejj@helixcode.com>

* camel-mime-message.c (camel_mime_message_get_received_date):
Implemented (someone added these to camel-mime-message.h but never
implemented them!!) - though it may not be right.
(camel_mime_message_get_sent_date): Same.

23 years agoIf a MIME part has no Content-Disposition, but does have a "name" on the
Dan Winship [Tue, 5 Sep 2000 23:00:22 +0000 (23:00 +0000)]
If a MIME part has no Content-Disposition, but does have a "name" on the

* camel-mime-part.c (camel_mime_part_get_filename): If a MIME part
has no Content-Disposition, but does have a "name" on the
Content-Type, return that as the filename.
(process_header): strstrip the Content-Description

23 years agocare about response code. (get_HEAD_headers): same.
Chris Toshok [Tue, 5 Sep 2000 22:32:49 +0000 (22:32 +0000)]
care about response code. (get_HEAD_headers): same.

2000-09-05  Chris Toshok  <toshok@helixcode.com>

* providers/nntp/camel-nntp-utils.c (get_OVER_headers): care about
response code.
(get_HEAD_headers): same.
(camel_nntp_get_headers): same.

* providers/nntp/camel-nntp-store.h: get rid of
CAMEL_NNTP_OK/ERR/FAIL.

* providers/nntp/camel-nntp-store.c
(camel_nntp_store_get_extensions): take CamelException arg and
pass along to camel_nntp_command.
(camel_nntp_store_get_overview_fmt): same.
(nntp_store_connect): convert to using constants in
camel-nntp-resp-codes.h
(nntp_store_get_folder): make use of camel_nntp_folder_new.
(camel_nntp_command_send_recv): new function to deal with auth
challenge.
(camel_nntp_command): split out most of this function into
camel_nntp_command_send_recv.  also, return the actual response
code instead of CAMEL_NNTP_OK/ERR/FAIL.

* providers/nntp/camel-nntp-resp-codes.h: new file.

* providers/nntp/camel-nntp-folder.h: prototype for
camel_nntp_folder_new.

* providers/nntp/camel-nntp-folder.c (camel_nntp_folder_new): new
convenience function.
(nntp_folder_get_message): care more about the actual response
code.

* providers/nntp/Makefile.am (libcamelnntp_la_SOURCES): add
camel-nntp-auth.c.
(libcamelnntpinclude_HEADERS): add camel-nntp-auth.h.

* providers/nntp/camel-nntp-auth.h: new file.

* providers/nntp/camel-nntp-auth.c: new file.

23 years agoUpdate for CamelObject and some other changes
Dan Winship [Tue, 5 Sep 2000 21:18:00 +0000 (21:18 +0000)]
Update for CamelObject and some other changes

23 years agoCache provider, for caching a remote store locally. This is not done yet.
Dan Winship [Tue, 5 Sep 2000 20:33:05 +0000 (20:33 +0000)]
Cache provider, for caching a remote store locally. This is not done yet.

23 years agoCleanup of lots of exception handling ; bugfixes
Peter Williams [Tue, 5 Sep 2000 20:08:09 +0000 (20:08 +0000)]
Cleanup of lots of exception handling ; bugfixes

23 years agoA bit more e_utf8 wrappers here and there
Lauris Kaplinski [Sat, 2 Sep 2000 02:51:28 +0000 (02:51 +0000)]
A bit more e_utf8 wrappers here and there

23 years agoRemoved some unused functions.
Christopher James Lahey [Fri, 1 Sep 2000 21:58:28 +0000 (21:58 +0000)]
Removed some unused functions.

2000-09-01  Christopher James Lahey  <clahey@helixcode.com>

* providers/imap/camel-imap-utils.c: Removed some unused
functions.

23 years agoremove get_folder_name. (nntp_store_get_folder_name): remove.
Chris Toshok [Fri, 1 Sep 2000 05:18:39 +0000 (05:18 +0000)]
remove get_folder_name. (nntp_store_get_folder_name): remove.

2000-08-31  Chris Toshok  <toshok@helixcode.com>

* providers/nntp/camel-nntp-store.c (camel_nntp_store_class_init):
remove get_folder_name.
(nntp_store_get_folder_name): remove.

23 years agoEmail should now display correctly in GtkHTML
Lauris Kaplinski [Fri, 1 Sep 2000 02:40:44 +0000 (02:40 +0000)]
Email should now display correctly in GtkHTML

23 years agouse camel_remote_store_recv_line.
Chris Toshok [Fri, 1 Sep 2000 01:58:56 +0000 (01:58 +0000)]
use camel_remote_store_recv_line.

2000-08-31  Chris Toshok  <toshok@helixcode.com>

* providers/nntp/camel-nntp-utils.c (get_OVER_headers): use
camel_remote_store_recv_line.

* providers/nntp/camel-nntp-folder.c (nntp_folder_get_message):
use camel_remote_store_recv_line to build message.  also, free our
buffer so we don't leak like mad.

* providers/nntp/camel-nntp-store.c:
(camel_nntp_store_get_additional_data) remove.
(camel_nntp_store_get_extensions): use
camel_remote_store_recv_line.
(camel_nntp_store_get_overview_fmt): same.  also, don't rely on
_get_additional_data anymore since it's easier to parse without.
(camel_nntp_command): use camel_remote_store_send_string and
camel_remote_store_recv_line.

* providers/nntp/camel-nntp-store.h: CamelRemoteStore is the
parent class now.  remove istream/ostream since CamelRemoteStore
takes care of that for us.  also remove the prototype for
camel_nntp_store_get_additional_data.

* providers/nntp/camel-nntp-newsrc.c (camel_nntp_newsrc_write):
make sure to clear dirty bit.
(camel_nntp_newsrc_read_for_server): don't worry about continually
trying to open the file - if it fails we just return an
unpopulated .newsrc file.

23 years agomake this a bit more robust. try to create an empty .newsrc file for the
Chris Toshok [Fri, 1 Sep 2000 00:57:20 +0000 (00:57 +0000)]
make this a bit more robust. try to create an empty .newsrc file for the

2000-08-31  Chris Toshok  <toshok@helixcode.com>

* providers/nntp/camel-nntp-newsrc.c
(camel_nntp_newsrc_read_for_server): make this a bit more robust.
try to create an empty .newsrc file for the server if we can't
open it for reading.  also, don't allocate everything until we've
opened the file.

* providers/nntp/camel-nntp-utils.c (get_OVER_headers): make use
of our overview field indices.
(camel_nntp_get_headers): only call get_OVER_headers if the
extension is present.  warn if it's not - since get_HEAD_headers
needs work before it works.

* providers/nntp/camel-nntp-store.c
(camel_nntp_store_get_extensions): new function - query the server
for it's extensions.
(camel_nntp_store_get_overview_fmt): new function - query the
server for the overview format and build our table of the indices
we care about.  support the "full" suffix on fields.
(nntp_store_connect): call camel_nntp_store_get_extensions and
camel_nntp_store_get_overview_fmt.

* providers/nntp/camel-nntp-store.h: add codes for extensions
found on news.mozilla.org.  only one that we care about is OVER.
also, add CamelNNTPOverField and an enum of the overview fields
that we care about.

23 years agoReimplemented. It should now work correctly for most possible VFolder
Jeffrey Stedfast [Thu, 31 Aug 2000 21:08:14 +0000 (21:08 +0000)]
Reimplemented. It should now work correctly for most possible VFolder

2000-08-31  Jeffrey Stedfast  <fejj@helixcode.com>

* providers/imap/camel-imap-utils.c (imap_translate_sexp):
Reimplemented. It should now work correctly for most possible
VFolder rules.

23 years agoDon't save any exceptions caused by camel_imap_folder_changed
Jeffrey Stedfast [Thu, 31 Aug 2000 04:19:23 +0000 (04:19 +0000)]
Don't save any exceptions caused by camel_imap_folder_changed

2000-08-31  Jeffrey Stedfast  <fejj@helixcode.com>

* providers/imap/camel-imap-store.c (camel_imap_command_extended):
Don't save any exceptions caused by camel_imap_folder_changed
(camel_imap_fetch_command): Same.

* providers/imap/camel-imap-folder.c (camel_imap_folder_changed):
Using a new way of calculating the first recent message that seems
more accurate. Also added code to make sure we don't accidently
add a duplicate summary.

23 years ago (write_to_stream): Rearrange the logic so it always does charset
Michael Zucci [Thu, 31 Aug 2000 03:08:51 +0000 (03:08 +0000)]
    (write_to_stream): Rearrange the logic so it always does charset
        conversion, and not just if we have a qp/base64 block.

23 years ago (write_to_stream): Fix some warnings/use the right constructor,
Michael Zucci [Thu, 31 Aug 2000 02:27:35 +0000 (02:27 +0000)]
(write_to_stream): Fix some warnings/use the right constructor,
oops.

23 years agoUse the proper type checking function to check for text types.
Not Zed [Thu, 31 Aug 2000 02:24:49 +0000 (02:24 +0000)]
Use the proper type checking function to check for text types.

2000-08-31  Not Zed  <NotZed@HelixCode.com>

        * camel-mime-part.c (write_to_stream): Use the proper type
        checking function to check for text types.
        (write_to_stream): If we have a charset on a text type that
        isn't us-ascii or utf-8, then we need to reencode it, so add a
        filter to do that too.

23 years ago (append_latin1): Do an additional mask for account for c's
Michael Zucci [Thu, 31 Aug 2000 01:49:21 +0000 (01:49 +0000)]
(append_latin1): Do an additional mask for account for c's
undefined behaviour for sign extension whilst shifting right.

23 years agoNew function - even though its broken, we'll assume mailers send latin1
Not Zed [Thu, 31 Aug 2000 01:46:44 +0000 (01:46 +0000)]
New function - even though its broken, we'll assume mailers send latin1

2000-08-31  Not Zed  <NotZed@HelixCode.com>

        * camel-mime-utils.c (append_latin1): New function - even though
        its broken, we'll assume mailers send latin1 headers instead of
        us-ascii.  We just have to encode high chars into utf-8.
        (header_decode_text): Call append_latin1 for appending unencoded
        text segments.

23 years agoRewrote to ignore strings that look like server responses until it is sure
Jeffrey Stedfast [Wed, 30 Aug 2000 22:25:15 +0000 (22:25 +0000)]
Rewrote to ignore strings that look like server responses until it is sure

2000-08-30  Jeffrey Stedfast  <fejj@helixcode.com>

* providers/imap/camel-imap-store.c (camel_imap_fetch_command):
Rewrote to ignore strings that look like server responses until it
is sure that it has finished reading the literal string response.

23 years agoDon't wrap printed strings in quotes, makes things messy
Jeffrey Stedfast [Wed, 30 Aug 2000 21:01:59 +0000 (21:01 +0000)]
Don't wrap printed strings in quotes, makes things messy

2000-08-30  Jeffrey Stedfast  <fejj@helixcode.com>

* camel-remote-store.c (remote_send_string): Don't wrap printed
strings in quotes, makes things messy

* providers/imap/camel-imap-folder.c (imap_get_message): Updated
to use the camel_imap_fetch_command

* providers/imap/camel-imap-stream.c (stream_read): Updated to use
camel_imap_fetch_command

* providers/imap/camel-imap-store.c (camel_imap_command_extended):
No longer handles FETCH requests so no longer needs to be
concerned with checking to make sure that server responses are
valid (they have to be).
(camel_imap_fetch_command): New convenience function that handles
all FETCH requests

23 years agoMake CamelServices connect only when told to (old behavior). Make CamelRemoteStore...
Peter Williams [Wed, 30 Aug 2000 17:09:41 +0000 (17:09 +0000)]
Make CamelServices connect only when told to (old behavior). Make CamelRemoteStore do its stuff in service::connect, not ::post_connect.

23 years agoGeneral cleanup / moving stuff around to make things easier to follow.
Jeffrey Stedfast [Wed, 30 Aug 2000 16:24:36 +0000 (16:24 +0000)]
General cleanup / moving stuff around to make things easier to follow.

2000-08-30  Jeffrey Stedfast  <fejj@helixcode.com>

* providers/imap/camel-imap-store.c: General cleanup / moving
stuff around to make things easier to follow.

23 years agoPrevent exceptions from being overwritten
Jeffrey Stedfast [Wed, 30 Aug 2000 04:03:07 +0000 (04:03 +0000)]
Prevent exceptions from being overwritten

2000-08-30  Jeffrey Stedfast  <fejj@helixcode.com>

* camel-remote-store.c: Prevent exceptions from being overwritten

* providers/imap/camel-imap-folder.c (imap_expunge): Beautified
(imap_get_subfolder_names_internal): Removed old code as the
replacement code has now been tested and proven to work

23 years agoRemoved old code that will never be needed again
Jeffrey Stedfast [Tue, 29 Aug 2000 23:15:02 +0000 (23:15 +0000)]
Removed old code that will never be needed again

2000-08-29  Jeffrey Stedfast  <fejj@helixcode.com>

* providers/imap/camel-imap-utils.c: Removed old code that will
never be needed again

* providers/imap/camel-imap-store.c: Removed old code for
try_connect - will never need this code
(slurp_response): Update to make sure we aren't falsely detecting
EXPUNGE flags

23 years agoCamelRemoteStore: a new generic store for stores that connect to servers. Prepare...
Peter Williams [Tue, 29 Aug 2000 21:28:46 +0000 (21:28 +0000)]
CamelRemoteStore: a new generic store for stores that connect to servers. Prepare for the ability to cancel operations (much better exception handling). Clean up IMAP like nobody's business

23 years agoUpdated to check for EXPUNGE notifications
Jeffrey Stedfast [Tue, 29 Aug 2000 17:04:54 +0000 (17:04 +0000)]
Updated to check for EXPUNGE notifications

2000-08-29  Jeffrey Stedfast  <fejj@helixcode.com>

* providers/imap/camel-imap-store.c (camel_imap_command_extended):
Updated to check for EXPUNGE notifications

* providers/imap/camel-imap-folder.c (camel_imap_folder_changed):
Updated to account for messages which have been expunged (now
takes a new arg, a GPtrArray of message id's that have been
expunged)
(imap_expunge): Updated (we may want to just use the code in
folder_changed now instead of doing our own summary
expunging...but that can be fixed later)
(imap_append_message): Updated.
(imap_copy_message_to): Updated.
(imap_move_message_to): Updated.

23 years agoFixed the hack around quoted string responses - should now handle them
Jeffrey Stedfast [Mon, 28 Aug 2000 23:47:21 +0000 (23:47 +0000)]
Fixed the hack around quoted string responses - should now handle them

2000-08-28  Jeffrey Stedfast  <fejj@helixcode.com>

* providers/imap/camel-imap-folder.c (imap_get_message): Fixed the
hack around quoted string responses - should now handle them
according to the specifications in the RFC

* providers/imap/camel-imap-stream.c (stream_read): Updated to
match the code currently used in camel-imap-folder.c

23 years agoFree()ing memory allocated through alloca() is Not A Good Thing.
Ettore Perazzoli [Mon, 28 Aug 2000 15:11:44 +0000 (15:11 +0000)]
Free()ing memory allocated through alloca() is Not A Good Thing.

23 years agoUse `g_free()' instead of `free()' in the `header_decode_text()'
Ettore Perazzoli [Sun, 27 Aug 2000 00:59:45 +0000 (00:59 +0000)]
Use `g_free()' instead of `free()' in the `header_decode_text()'
helper function.

23 years agoAdd support for specifying on which port to connect to a server; fix a potential...
Peter Williams [Fri, 25 Aug 2000 21:09:53 +0000 (21:09 +0000)]
Add support for specifying on which port to connect to a server; fix a potential infinite loop in unicode.

23 years agoIf the url path is "/" and the folder path is "/", just LIST "" "*" (this
Jeffrey Stedfast [Fri, 25 Aug 2000 17:29:43 +0000 (17:29 +0000)]
If the url path is "/" and the folder path is "/", just LIST "" "*" (this

2000-08-25  Jeffrey Stedfast  <fejj@helixcode.com>

* providers/imap/camel-imap-folder.c
(imap_get_subfolder_names_internal): If the url path is "/" and
the folder path is "/", just LIST "" "*" (this should fix some
cyrus imapd problems). Also, INBOX is case insensitive so use
g_strcasecmp

23 years agoIf the url path is "/" and the folder path is "/", just LIST "" "*" (this
Jeffrey Stedfast [Fri, 25 Aug 2000 17:17:08 +0000 (17:17 +0000)]
If the url path is "/" and the folder path is "/", just LIST "" "*" (this

2000-08-25  Jeffrey Stedfast  <fejj@helixcode.com>

* providers/imap/camel-imap-folder.c
(imap_get_subfolder_names_internal): If the url path is "/" and
the folder path is "/", just LIST "" "*" (this should fix some
cyrus imapd problems)

23 years agoMore UTF-8 handling
Lauris Kaplinski [Fri, 25 Aug 2000 04:31:07 +0000 (04:31 +0000)]
More UTF-8 handling

23 years agoRemove this duplicate file to fix build
JP Rosevear [Fri, 25 Aug 2000 01:43:27 +0000 (01:43 +0000)]
Remove this duplicate file to fix build

2000-08-24  JP Rosevear  <jpr@helixcode.com>

* src/libical/icalvcal.h: Remove this duplicate file to fix build

23 years agoAnd here too.
Not Zed [Thu, 24 Aug 2000 01:21:32 +0000 (01:21 +0000)]
And here too.

2000-08-17  Not Zed  <NotZed@HelixCode.com>

        * providers/mh/camel-mh-folder.c (mh_finalize): And here too.

        * providers/mbox/camel-mbox-folder.c (mbox_finalize): Close index
        on exit.

23 years agoput commas between addresses.
Dan Winship [Wed, 23 Aug 2000 19:58:51 +0000 (19:58 +0000)]
put commas between addresses.

* camel-mime-utils.c (header_address_list_format_append): put
commas between addresses.

23 years agouse BODY.PEEK, not BODY, so we don't set the message \Seen.
Dan Winship [Tue, 22 Aug 2000 23:43:31 +0000 (23:43 +0000)]
use BODY.PEEK, not BODY, so we don't set the message \Seen.

* providers/imap/camel-imap-folder.c
(imap_protocol_get_summary_specifier): use BODY.PEEK, not BODY, so
we don't set the message \Seen.

23 years agoFixed a small warning.
Christopher James Lahey [Tue, 22 Aug 2000 23:38:51 +0000 (23:38 +0000)]
Fixed a small warning.

2000-08-22  Christopher James Lahey  <clahey@helixcode.com>

* providers/pop3/camel-pop3-store.c: Fixed a small warning.

23 years agoChangeLog updates.
Peter Williams [Tue, 22 Aug 2000 20:22:05 +0000 (20:22 +0000)]
ChangeLog updates.

23 years agoAutomatically connect services when given a valid URL (should hopefully disconnect...
Peter Williams [Tue, 22 Aug 2000 20:09:10 +0000 (20:09 +0000)]
Automatically connect services when given a valid URL (should hopefully disconnect, too); remove the old movemail folder correctly.

23 years agoMake sure newsrc is not null (nntp_folder_get_subfolder_names): ditto
JP Rosevear [Mon, 21 Aug 2000 20:47:09 +0000 (20:47 +0000)]
Make sure newsrc is not null (nntp_folder_get_subfolder_names): ditto

2000-08-21  JP Rosevear  <jpr@helixcode.com>

* providers/nntp/camel-nntp-folder.c
(nntp_folder_get_subfolder_names):
Make sure newsrc is not null
(nntp_folder_get_subfolder_names): ditto

* providers/nntp/camel-nntp-newsrc.c
(camel_nntp_newsrc_get_subscribed_group_names): Programming check
for newsrc == NULL
(camel_nntp_newsrc_get_all_group_names): ditto
(camel_nntp_newsrc_write_to_file): ditto
(camel_nntp_newsrc_write): ditto

23 years agoMake sure respbuffer is not null before manipulating it. If it is null,
JP Rosevear [Mon, 21 Aug 2000 19:56:14 +0000 (19:56 +0000)]
Make sure respbuffer is not null before manipulating it. If it is null,

2000-08-21  JP Rosevear  <jpr@helixcode.com>

* providers/nntp/camel-nntp-store.c (camel_nntp_command):
Make sure respbuffer is not null before manipulating it.
If it is null, return CAMEL_NNTP_FAIL and a decent error
message.

23 years agoFix output for when the name is empty
Peter Williams [Fri, 18 Aug 2000 17:28:36 +0000 (17:28 +0000)]
Fix output for when the name is empty

24 years agoWhole buncha leak fixes thanks to Purify
Matthew Loper [Thu, 17 Aug 2000 14:19:00 +0000 (14:19 +0000)]
Whole buncha leak fixes thanks to Purify

24 years agoMore leak fixes
Peter Williams [Wed, 16 Aug 2000 19:24:30 +0000 (19:24 +0000)]
More leak fixes

24 years agoChangeLog for previous camel-object commit.
Peter Williams [Wed, 16 Aug 2000 18:35:03 +0000 (18:35 +0000)]
ChangeLog for previous camel-object commit.

24 years agoPlug mem leaks.
Peter Williams [Wed, 16 Aug 2000 18:33:19 +0000 (18:33 +0000)]
Plug mem leaks.

24 years agoAdd support for copying messages
Peter Williams [Tue, 15 Aug 2000 19:10:44 +0000 (19:10 +0000)]
Add support for copying messages

24 years agoInfrastructure for date-based queries
Peter Williams [Mon, 14 Aug 2000 19:07:06 +0000 (19:07 +0000)]
Infrastructure for date-based queries

24 years agoAdd camel-nntp-utils.h
Dan Winship [Sun, 13 Aug 2000 21:40:24 +0000 (21:40 +0000)]
Add camel-nntp-utils.h

* providers/nntp/Makefile.am (libcamelnntpinclude_HEADERS): Add
camel-nntp-utils.h

24 years agodo a strcasecmp rather than just a strcmp when checking if a folder is
Dan Winship [Sun, 13 Aug 2000 16:09:25 +0000 (16:09 +0000)]
do a strcasecmp rather than just a strcmp when checking if a folder is

* providers/imap/camel-imap-folder.c
(imap_get_subfolder_names_internal): do a strcasecmp rather than
just a strcmp when checking if a folder is "INBOX", since it is
a case-insensitive name.

24 years ago (imap_get_subfolder_names_internal): Add "INBOX" to the list as
Dan Winship [Sun, 13 Aug 2000 03:25:47 +0000 (03:25 +0000)]
(imap_get_subfolder_names_internal): Add "INBOX" to the list as
g_malloc'ed memory, not a static string.

24 years agoDon't assume the FETCH results will come back in the order they were
Dan Winship [Sun, 13 Aug 2000 03:06:34 +0000 (03:06 +0000)]
Don't assume the FETCH results will come back in the order they were

* providers/imap/camel-imap-folder.c (imap_get_summary_internal):
Don't assume the FETCH results will come back in the order they
were requested.

24 years agoNow takes a char * parameter rather than a stream
Jeffrey Stedfast [Sat, 12 Aug 2000 22:56:55 +0000 (22:56 +0000)]
Now takes a char * parameter rather than a stream

2000-08-12  Jeffrey Stedfast  <fejj@helixcode.com>

* providers/imap/camel-imap-store.c
(camel_imap_command_continuation): Now takes a char * parameter
rather than a stream
(camel_imap_command_continuation_with_stream): Same function as
above but takes a stream parameter instead

* providers/imap/camel-imap-folder.c (imap_append_message): Use
camel_imap_command_continuation_with_stream

24 years agoNew function to do one round of attempted authentication. (pop3_connect):
Dan Winship [Sat, 12 Aug 2000 22:10:22 +0000 (22:10 +0000)]
New function to do one round of attempted authentication. (pop3_connect):

* providers/pop3/camel-pop3-store.c (pop3_try_authenticate): New
function to do one round of attempted authentication.
(pop3_connect): Move a bunch of code out into
pop3_try_authenticate and fix some bugs in the edge cases.

24 years agoNo longer calls try_connect() to get authtypes
Jeffrey Stedfast [Sat, 12 Aug 2000 21:58:01 +0000 (21:58 +0000)]
No longer calls try_connect() to get authtypes

2000-08-12  Jeffrey Stedfast  <fejj@helixcode.com>

* providers/imap/camel-imap-store.c (query_auth_types): No longer
calls try_connect() to get authtypes

24 years agoChanged param order a bit and fixed some logic
Jeffrey Stedfast [Sat, 12 Aug 2000 03:42:42 +0000 (03:42 +0000)]
Changed param order a bit and fixed some logic

2000-08-11  Jeffrey Stedfast  <fejj@helixcode.com>

* providers/imap/camel-imap-store.c
(camel_imap_command_continuation): Changed param order a bit and
fixed some logic

* providers/imap/camel-imap-folder.c (imap_append_message): Use
the new multi-transactional convenience functions

24 years agoNew convenience function for multi-transactional commands (opening
Jeffrey Stedfast [Sat, 12 Aug 2000 01:36:31 +0000 (01:36 +0000)]
New convenience function for multi-transactional commands (opening

2000-08-11  Jeffrey Stedfast  <fejj@helixcode.com>

* providers/imap/camel-imap-store.c
(camel_imap_command_preliminary): New convenience function for
multi-transactional commands (opening request)
(camel_imap_command_continuation): New convenience function for
multi-transactional commands (followup data)

24 years agoFixed a warning.
Christopher James Lahey [Sat, 12 Aug 2000 01:25:17 +0000 (01:25 +0000)]
Fixed a warning.

2000-08-11  Christopher James Lahey  <clahey@helixcode.com>

* providers/mh/camel-mh-folder.c: Fixed a warning.

24 years agoremove get_name and get_full_name assignments, since the camel-folder.c
Chris Toshok [Fri, 11 Aug 2000 21:32:55 +0000 (21:32 +0000)]
remove get_name and get_full_name assignments, since the camel-folder.c

2000-08-11  Chris Toshok  <toshok@helixcode.com>

* providers/nntp/camel-nntp-folder.c
(camel_nntp_folder_class_init): remove get_name and get_full_name
assignments, since the camel-folder.c implementation does what we
need.

24 years agouse g_get_home_dir, since evolution_dir isn't available in the providers.
Chris Toshok [Fri, 11 Aug 2000 21:14:33 +0000 (21:14 +0000)]
use g_get_home_dir, since evolution_dir isn't available in the providers.

2000-08-11  Chris Toshok  <toshok@helixcode.com>

* providers/nntp/camel-nntp-store.c
(camel_nntp_store_get_toplevel_dir): use g_get_home_dir, since
evolution_dir isn't available in the providers.

24 years agoFix the camel-folder's thaw handler. Implement event forwarding into the main thread.
Peter Williams [Fri, 11 Aug 2000 17:35:13 +0000 (17:35 +0000)]
Fix the camel-folder's thaw handler. Implement event forwarding into the main thread.

24 years agoImplement. (mh_get_message_user_tag): Implement.
Not Zed [Fri, 11 Aug 2000 07:43:50 +0000 (07:43 +0000)]
Implement. (mh_get_message_user_tag): Implement.

2000-08-11  Not Zed  <NotZed@HelixCode.com>

* providers/mh/camel-mh-folder.c (mh_set_message_user_tag):
Implement.
(mh_get_message_user_tag): Implement.

* providers/mbox/camel-mbox-folder.c (mbox_get_message_user_tag):
(mbox_set_message_user_tag): Implement.

* camel-folder.c
(camel_folder_set_message_user_tag): Routine to set message tags.
(camel_folder_get_message_user_tag): And accessor.

24 years agoYay so lets fix an already fixed fix, again. (copy_message_to): and here
Not Zed [Fri, 11 Aug 2000 04:24:13 +0000 (04:24 +0000)]
Yay so lets fix an already fixed fix, again. (copy_message_to): and here

2000-08-11  Not Zed  <NotZed@HelixCode.com>

* camel-folder.c (move_message_to): Yay so lets fix an already fixed fix, again.
(copy_message_to): and here too ... update for api change to append().
And removed another warning.

24 years agoFixed some warnings.
Christopher James Lahey [Fri, 11 Aug 2000 02:57:11 +0000 (02:57 +0000)]
Fixed some warnings.

2000-08-10  Christopher James Lahey  <clahey@helixcode.com>

* camel-folder-search.c, camel-folder-summary.c, camel-medium.c,
camel-mime-filter-charset.c, camel-mime-filter.c,
camel-mime-filter.h, camel-mime-message.c, camel-mime-parser.c,
camel-mime-part-utils.c, camel-mime-part.c, camel-mime-utils.c,
camel-movemail.c, camel-multipart.c, camel-object.c,
camel-stream-mem.c, providers/mbox/camel-mbox-folder.c,
providers/mbox/camel-mbox-summary.c,
providers/mh/camel-mh-folder.c,
providers/smtp/camel-smtp-transport.c: Fixed some warnings.

24 years agot Zed <NotZed@HelixCode.com>
Michael Zucci [Fri, 11 Aug 2000 02:50:02 +0000 (02:50 +0000)]
t Zed <NotZed@HelixCode.com>

t Zed  <NotZed@HelixCode.com>

        * providers/vee/camel-vee-folder.c (vee_folder_build_folder): Free
        the search properly.
        (vee_folder_build): And here too.

24 years ago Removed unecessary change and fixed indenting.
Michael Zucci [Fri, 11 Aug 2000 01:53:08 +0000 (01:53 +0000)]
Removed unecessary change and fixed indenting.

24 years agoIf we go over the max number of messages, don't keep requesting new
Jeffrey Stedfast [Thu, 10 Aug 2000 21:23:29 +0000 (21:23 +0000)]
If we go over the max number of messages, don't keep requesting new

2000-08-10  Jeffrey Stedfast  <fejj@helixcode.com>

* providers/imap/camel-imap-folder.c (camel_imap_folder_changed):
If we go over the max number of messages, don't keep requesting
new message summaries, just break.

24 years agoMerge with camel-async.
Peter Williams [Thu, 10 Aug 2000 17:30:47 +0000 (17:30 +0000)]
Merge with camel-async.

24 years agoA better way to compress leading whitespace. The code is probably invalid
Not Zed [Thu, 10 Aug 2000 16:35:28 +0000 (16:35 +0000)]
A better way to compress leading whitespace. The code is probably invalid

2000-08-11  Not Zed  <NotZed@HelixCode.com>

* camel-mime-parser.c (folder_scan_header): A better way to
compress leading whitespace.  The code is probably invalid anyway,
I dont think it will work across buffer boundaries.

* providers/mbox/camel-mbox-folder.c (mbox_append_message): And
write out proper format From lines here too.

* providers/mbox/camel-mbox-summary.c
(camel_mbox_summary_build_from): New function to build a more
compatible mbox "From " line.
(camel_mbox_summary_sync): Write From lines in the proper format.

2000-08-10  Not Zed  <NotZed@HelixCode.com>

* providers/mh/camel-mh-store.c (get_folder): Remove warnin g.

* providers/mbox/camel-mbox-store.c (xrename): Kill some warnings
with constification.

* providers/imap/camel-imap-folder.c (imap_append_message): Fixed
for append api change.  Eek this routine seriously wastes memory.

* providers/mh/camel-mh-folder.c (mh_search_free): Impelemnt.
(mh_append_message): Fix for api change, and include user flags
and tags in new message.

* providers/vee/camel-vee-folder.c (vee_search_by_expression): Fix
for search api change.

* camel-folder.c (camel_folder_search_free): New function for
freeing search results.
(search_free): Changed my mind, implement a default that actually
does something.  Free as to the old interface.
(camel_folder_append_message): Changed to accept a
camelmessageinfo rather than flags, which just doesn't have enough
info in it.
(copy_message_to): Change for append_message api change.
(move_message_to): Likewise.

* providers/mbox/camel-mbox-folder.c (mbox_search_free):
Implement.
(mbox_append_message): Fix for api change, and also copy user
flags/tags across to new summary.

* camel-folder-search.c (search_user_tag): A search expression
that returns the current use flag by name.
(camel_folder_search_free_result): New function to free the result
of a search.

* camel-folder-summary.c: Bump summary version.
(message_info_new):
(message_info_load):
(message_info_save):
(camel_message_info_dup_to):
(camel_message_info_free): Added support for arbitrary tag/value
pairs (CamelTag's).
(camel_tag_get):
(camel_tag_set):
(camel_tag_list_size):
(camel_tag_list_free): Operations for working with CamelTags.

24 years agoFix the NNTP provider's Makefile.am so that it does not use installed
Ettore Perazzoli [Wed, 9 Aug 2000 05:21:12 +0000 (05:21 +0000)]
Fix the NNTP provider's Makefile.am so that it does not use installed
Camel headers before the source ones.  Also, get rid of an unused
variable.

24 years agoReorder search result in summary order if we searched with a summary.
Not Zed [Wed, 9 Aug 2000 00:40:03 +0000 (00:40 +0000)]
Reorder search result in summary order if we searched with a summary.

2000-08-09  Not Zed  <NotZed@HelixCode.com>

        * camel-folder-search.c (camel_folder_search_execute_expression):
        Reorder search result in summary order if we searched with a
        summary.

24 years agoNew code to keep an on-disk cache of what UIDs have been seen in a folder.
Dan Winship [Wed, 9 Aug 2000 00:07:56 +0000 (00:07 +0000)]
New code to keep an on-disk cache of what UIDs have been seen in a folder.

* camel-uid-cache.c: New code to keep an on-disk cache of what
UIDs have been seen in a folder.

* camel-provider.h: Add new flags CAMEL_PROVIDER_IS_SOURCE (mail
can arrive in it by non-Camel means) and CAMEL_PROVIDER_IS_STORAGE
(you can work with mail directly without needing to copy it local).

* providers/*/camel-*-provider.c: Add flags as needed: imap and
mbox are SOURCE and STORAGE. mh and nntp are just STORAGE, pop3 is
just SOURCE.

* camel-mime-message.c (process_header): Add another subject
g_strstrip that fejj's earlier commit missed.

24 years agoAdd another subject g_strstrip that fejj's earlier commit missed.
Dan Winship [Tue, 8 Aug 2000 16:28:43 +0000 (16:28 +0000)]
Add another subject g_strstrip that fejj's earlier commit missed.

* camel-mime-message.c (process_header): Add another subject
g_strstrip that fejj's earlier commit missed.

24 years agoOnly retry another uid if we had a name clash, otherwise fail.
Not Zed [Tue, 8 Aug 2000 03:42:47 +0000 (03:42 +0000)]
Only retry another uid if we had a name clash, otherwise fail.

2000-08-07  Not Zed  <NotZed@HelixCode.com>

        * providers/mh/camel-mh-folder.c (mh_append_message): Only retry
        another uid if we had a name clash, otherwise fail.

2000-08-04  Not Zed  <NotZed@HelixCode.com>

        * camel-url.c (camel_url_set_protocol):
        (camel_url_set_host):
        (camel_url_set_path):
        (camel_url_set_port): Url editing functions.

2000-08-02  Not Zed  <NotZed@HelixCode.com>

        * providers/mh/camel-mh-summary.c (camel_mh_summary_sync): Expunge
        from the end, so the index isn't messed up when you remove a
        message.

        * providers/mh/camel-mh-folder.c (mh_append_message): Fix a bug
        where it would never open an output file/uid.

        * providers/mbox/camel-mbox-store.c (rename_folder):
        Implementation for mbox as well.

        * camel-store.c (camel_store_rename_folder): New method to rename folders.
        (rename_folder): Default implementation.

        * providers/mh/camel-mh-store.c (delete_folder): Implement this.
        (rename_folder): Implement a rename operation.

24 years agoIf we are trying to get a subfolder listing of the root folder, always
Jeffrey Stedfast [Mon, 7 Aug 2000 20:32:27 +0000 (20:32 +0000)]
If we are trying to get a subfolder listing of the root folder, always

2000-08-07  Jeffrey Stedfast  <fejj@helixcode.com>

* providers/imap/camel-imap-folder.c
(imap_get_subfolder_names_internal): If we are trying to get a
subfolder listing of the root folder, always make sure INBOX is
there...

* providers/imap/camel-imap-utils.c (imap_parse_list_response):
Check for NIL as a directory separator.

24 years agoStrip all \n's from the expression
Jeffrey Stedfast [Mon, 7 Aug 2000 18:54:15 +0000 (18:54 +0000)]
Strip all \n's from the expression

2000-08-07  Jeffrey Stedfast  <fejj@helixcode.com>

* providers/imap/camel-imap-utils.c (imap_translate_sexp): Strip
all \n's from the expression

* string-utils.c (strip): New convenience function to strip
occurences of a single char from a string

24 years agoDo a g_strstrip on the subject so we can stop getting those annoying
Jeffrey Stedfast [Mon, 7 Aug 2000 18:18:17 +0000 (18:18 +0000)]
Do a g_strstrip on the subject so we can stop getting those annoying

2000-08-07  Jeffrey Stedfast  <fejj@helixcode.com>

* camel-mime-message.c (camel_mime_message_set_subject): Do a
g_strstrip on the subject so we can stop getting those annoying
leading spaces

24 years agoFix this to not require NULL-termination of the array.
Dan Winship [Mon, 7 Aug 2000 04:16:26 +0000 (04:16 +0000)]
Fix this to not require NULL-termination of the array.

* camel-folder.c (camel_folder_free_deep): Fix this to not require
NULL-termination of the array.

24 years agoIf we fail to get a dir_sep, then supply the default of "/". (get_folder):
Jeffrey Stedfast [Fri, 4 Aug 2000 22:41:05 +0000 (22:41 +0000)]
If we fail to get a dir_sep, then supply the default of "/". (get_folder):

2000-08-04  Jeffrey Stedfast  <fejj@helixcode.com>

* providers/imap/camel-imap-store.c (imap_connect): If we fail to
get a dir_sep, then supply the default of "/".
(get_folder): Undo changes by Peter

24 years agoCoredump fix when IMAP get_folder with NULL dir_sep
Peter Williams [Fri, 4 Aug 2000 21:29:43 +0000 (21:29 +0000)]
Coredump fix when IMAP get_folder with NULL dir_sep

24 years agoIndexes into the flags array are message_number minus 1, not just
Dan Winship [Fri, 4 Aug 2000 18:40:38 +0000 (18:40 +0000)]
Indexes into the flags array are message_number minus 1, not just

* providers/pop3/camel-pop3-folder.c (pop3_set_message_flags):
(pop3_sync): Indexes into the flags array are message_number minus
1, not just message_number.

24 years agoadd a debugging macro for doing protocol tracing.
Dan Winship [Fri, 4 Aug 2000 04:36:19 +0000 (04:36 +0000)]
add a debugging macro for doing protocol tracing.

        * providers/pop3/camel-pop3-store.c: add a debugging macro for
        doing protocol tracing.

24 years agoOnly call imap_get_summary_internal if the folder can hold messages
Jeffrey Stedfast [Thu, 3 Aug 2000 23:07:18 +0000 (23:07 +0000)]
Only call imap_get_summary_internal if the folder can hold messages

2000-08-03  Jeffrey Stedfast  <fejj@helixcode.com>

* providers/imap/camel-imap-folder.c (camel_imap_folder_new): Only
call imap_get_summary_internal if the folder can hold messages

* providers/nntp/camel-nntp-provider.c (camel_provider_module_init):
Initialize the service_cache for the news/nntp providers

24 years agoInitialize the service_cache for the news/nntp providers
Jeffrey Stedfast [Thu, 3 Aug 2000 20:40:19 +0000 (20:40 +0000)]
Initialize the service_cache for the news/nntp providers

2000-08-03  Jeffrey Stedfast  <fejj@helixcode.com>

* providers/nntp/camel-nntp-provider.c (camel_provider_module_init):
Initialize the service_cache for the news/nntp providers

24 years agosrcdir != builddir fix
Peter Williams [Thu, 3 Aug 2000 15:45:22 +0000 (15:45 +0000)]
srcdir != builddir fix

24 years agoKill this. It doesn't have any code to do anything the new mh provider
Dan Winship [Thu, 3 Aug 2000 00:47:50 +0000 (00:47 +0000)]
Kill this. It doesn't have any code to do anything the new mh provider

* providers/MH: Kill this. It doesn't have any code to do anything
the new mh provider doesn't do better.

* providers/Makefile.am: Remove reference to MH subdir, and
promote nntp to fully-supported status, since it does compile and
all.

24 years agoTrim trailing space from the subject. I've now seen replies from two
Dan Winship [Thu, 3 Aug 2000 00:35:45 +0000 (00:35 +0000)]
Trim trailing space from the subject. I've now seen replies from two

* camel-mime-message.c (camel_mime_message_set_subject): Trim
trailing space from the subject. I've now seen replies from two
different people that tricked the threading code by (a) not having
References/In-Reply-To, and (b) adding an extra space to the end
of the subject line so the subject-based threading fails too. Who
writes these broken mailers anyway?

24 years agoWhen forced to use the IP, place it in square brackets.
Jeffrey Stedfast [Wed, 2 Aug 2000 00:29:53 +0000 (00:29 +0000)]
When forced to use the IP, place it in square brackets.

2000-08-01  Jeffrey Stedfast  <fejj@helixcode.com>

* providers/smtp/camel-smtp-transport.c (smtp_helo): When forced
to use the IP, place it in square brackets.

24 years agoNew and improved sexp parser. An honest try at using e-sexp is wrapped in
Jeffrey Stedfast [Tue, 1 Aug 2000 23:05:34 +0000 (23:05 +0000)]
New and improved sexp parser. An honest try at using e-sexp is wrapped in

2000-08-01  Jeffrey Stedfast  <fejj@helixcode.com>

* providers/imap/camel-imap-utils.c (imap_translate_sexp): New and
improved sexp parser. An honest try at using e-sexp is wrapped in
a #ifdef at the bottom of the file but is currently not used

* providers/imap/camel-imap-folder.c (imap_search_by_expression):
We want to do a UID SEARCH so we get UIDs back instead of sequence
numbers

24 years agocvsignore file
Peter Williams [Tue, 1 Aug 2000 14:30:59 +0000 (14:30 +0000)]
cvsignore file

24 years agoInitial cut at mh provider. Well, it already does everything
Not Zed [Tue, 1 Aug 2000 12:46:05 +0000 (12:46 +0000)]
Initial cut at mh provider.  Well, it already does everything
mbox does.

2000-08-01  Not Zed  <NotZed@HelixCode.com>

        * providers/mh: New mh provider implementation.

        * providers/Makefile.am (SUBDIRS): Added mh provider.

24 years agoSome IMAP servers don't wrap the UID in ()'s so don't depend on that
Jeffrey Stedfast [Tue, 1 Aug 2000 00:31:28 +0000 (00:31 +0000)]
Some IMAP servers don't wrap the UID in ()'s so don't depend on that

2000-07-31  Jeffrey Stedfast  <fejj@helixcode.com>

* providers/imap/camel-imap-folder.c (imap_get_message_info_internal):
Some IMAP servers don't wrap the UID in ()'s so don't depend on that
(imap_get_summary_internal): Same

24 years agoOops, forgot to free node->function - not good.
Jeffrey Stedfast [Mon, 31 Jul 2000 22:15:31 +0000 (22:15 +0000)]
Oops, forgot to free node->function - not good.

2000-07-31  Jeffrey Stedfast  <fejj@helixcode.com>

* providers/imap/camel-imap-utils.c (free_sexp_node): Oops, forgot to
free node->function - not good.