Commit Graph

747 Commits

Author SHA1 Message Date
c19352fd53 Added rules to build camel-imap-stream
2000-06-07  Jeffrey Stedfast  <fejj@helixcode.com>

	* providers/imap/Makefile.am: Added rules to build
	camel-imap-stream

	* providers/imap/camel-imap-store.c (get_folder): Update.
	Moved imap_create here.

	* providers/imap/camel-imap-folder.c (delete_messages): Remove.
	(imap_create): Removed.
	(imap_delete): Removed.
	(imap_exists): Removed.

	* providers/imap/camel-imap-stream.h: Added typedef's for the stream

	* providers/imap/camel-imap-stream.c: Modified to build cleanly

svn path=/trunk/; revision=3468
2000-06-07 21:57:27 +00:00
9da3c9d231 Properly dereference warning/debug messages. (header_references_decode):
2000-06-07  Not Zed  <NotZed@HelixCode.com>

        * camel-mime-utils.c (header_msgid_decode_internal): Properly
        dereference warning/debug messages.
        (header_references_decode): Check we actually have msgid stuff
        before trying to decode it ...

svn path=/trunk/; revision=3467
2000-06-07 21:40:52 +00:00
02b3f2866a moved camel-imap-stream.* to providers/imap
added providers/imap/camel-imap-summary.c

svn path=/trunk/; revision=3456
2000-06-07 00:37:10 +00:00
4d5427769c Remove exists, create, delete. A CamelFolder now always references an
* camel-folder.c: Remove exists, create, delete. A CamelFolder
	now always references an existing folder. Remove delete_messages
	too since it wasn't being used. Add a "create" flag to
	get_subfolder saying whether or not to create the subfolder if it
	doesn't yet exist.

	* camel-store.c (camel_store_get_folder): Add a "create" flag to
	say whether or not to create the folder if it doesn't yet exist.
	(camel_store_delete_folder): New method, moved from CamelFolder.
	(cache_folder, uncache_folder): Fix up a bit.
	(get_folder_name): Explain what this is for.

	* providers/mbox/camel-mbox-folder.c:
	* providers/mbox/camel-mbox-store.c: Update. Remove support for
	hierarchical folders to simplify this for now, since we're not
	using it, and it's not completely clear how they should work in an
	ELocalStorage world. Needs to be revisited.

	* providers/pop3/camel-pop3-folder.c (delete_messages): Remove.
	* providers/pop3/camel-pop3-store.c (get_folder): Update.

	* providers/vee/camel-vee-folder.c (exists): Remove.
	* providers/vee/camel-vee-store.c (vee_get_folder): Update.

svn path=/trunk/; revision=3453
2000-06-07 00:06:29 +00:00
4b82b86ee5 Changed the read and write method prototypes to return an ssize_t type
2000-06-06  Jeffrey Stedfast  <fejj@helixcode.com>

	* camel-stream.[c,h]: Changed the read and write method prototypes
	to return an ssize_t type rather than an int and also changed
	the 'number of bytes' to read or write to a size_t type

	* camel-stream-fs.c: same as above

	* camel-stream-mem.c: again, same as above

	* camel-stream-buffer.c: same

	* camel-imap-stream.[c,h]: Added this new stream, cache's previously
	read data so each successive call will instead read from the cache

svn path=/trunk/; revision=3450
2000-06-06 22:55:06 +00:00
c1aac7c40c worked on getting providers/imap/* to build cleanly, fixed a number of stupid errors and things like that
am commit'ing code since there are some volunteers that would like to work on imap

svn path=/trunk/; revision=3440
2000-06-06 18:55:45 +00:00
feead5b17d fix typo/braino (set "Content-Disposition", not "Content-Description")
* camel-mime-part.c (camel_mime_part_set_disposition): fix
	typo/braino (set "Content-Disposition", not "Content-Description")
	(camel_mime_part_set_filename): const poison

svn path=/trunk/; revision=3424
2000-06-05 19:04:03 +00:00
3164235947 Ick, damn signs! Fix a bug with sign extended bytes.
2000-06-02  Not Zed  <NotZed@HelixCode.com>

        * camel-mime-utils.c (base64_encode_step): Ick, damn signs!  Fix a
        bug with sign extended bytes.

        * camel-mime-filter-smtp.c (filter): Changed layout/logic slightly
        (to match From filter)

svn path=/trunk/; revision=3408
2000-06-02 22:57:31 +00:00
87b3974c99 Jeffrey Stedfast <fejj@helixcode.com>
* camel-mime-filter-smtp.c (filter): Fixed the filter so that it wouldn't
	insert garbage under certain conditions.

svn path=/trunk/; revision=3405
2000-06-02 20:47:56 +00:00
fd1304e14f Don't ref the services in the cache.
2000-06-02  Christopher James Lahey  <clahey@helixcode.com>

	* camel-session.c: Don't ref the services in the cache.

svn path=/trunk/; revision=3396
2000-06-02 19:15:22 +00:00
01bb498fbb moved some debug print statements to better locations
svn path=/trunk/; revision=3395
2000-06-02 19:07:21 +00:00
4cf5bbfa5a If we get a funny result, just throw it out. Basically a fix for the one
2000-06-02  Not Zed  <NotZed@HelixCode.com>

        * camel-mime-utils.c (header_decode_date): If we get a funny
        result, just throw it out.  Basically a fix for the one true
        broken TradeClient.

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

        * camel-folder-summary.c (message_info_free): Free
        references/messsage id.
        (message_info_save): Save them.
        (message_info_load): Load them.
        (message_info_new): And get them from the new message.
        (CAMEL_FOLDER_SUMMARY_VERSION): Bumped for new changes.

        * camel-folder-summary.h: Added references and messageid to
        summary.

svn path=/trunk/; revision=3391
2000-06-02 18:09:18 +00:00
8d6afbe910 Ref and unref objects in the service cache properly.
2000-06-02  Christopher James Lahey  <clahey@helixcode.com>

	* camel-session.c: Ref and unref objects in the service cache
	properly.

	* camel-store.c: Ref the folder when returning it using
	lookup_folder.  Used the folder's full name for the key for the
	folder cache since that's used to uncache it.

svn path=/trunk/; revision=3388
2000-06-02 16:12:26 +00:00
7a5b5c31e4 Fun with purify.
* providers/pop3/camel-pop3-store.c (pop3_connect): free msg on
	success as well as failure.
	(camel_pop3_command_get_additional_data): free buf after reading
	the last line (".").

	* providers/pop3/camel-pop3-folder.c (get_message_by_uid): free
	body data after creating the memstream from it (which will copy
	the data).

	* providers/mbox/camel-mbox-folder.c (mbox_finalize): free summary
	and index paths.

	* camel-data-wrapper.c (finalize): unref the stream, if it exists.

svn path=/trunk/; revision=3381
2000-06-02 06:34:58 +00:00
7e66242575 Fixes Bug 192.
2000-06-01  Not Zed  <NotZed@HelixCode.com>

        * camel-mime-part.c (construct_from_parser): For a message part,
        set the default content-type to message/rfc822.  Maybe needs to be
        done for multiparts too?

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

        * camel-mime-message.c (construct_from_parser): Typo in assersion.

        * camel-mime-parser.c (folder_scan_step): Use a default type of
        message/rfc822 for multipart/digest.  Bug Z192.
        (folder_scan_drop_step): Remove warning.

svn path=/trunk/; revision=3340
2000-06-01 22:08:07 +00:00
631dda8ae0 Init filter_from to NULL, for exception case. (mbox_get_message_by_uid):
2000-05-30  Not Zed  <NotZed@HelixCode.com>

        * providers/mbox/camel-mbox-folder.c (mbox_append_message): Init
        filter_from to NULL, for exception case.
        (mbox_get_message_by_uid): Cast off_t to long int for diagnostics.

        * camel-url.c (camel_url_hash): Hash funciton for using camel
        url's as hash keys.
        (camel_url_equal): equal function for same.

        * camel-session.c (camel_session_finalise): Free cached services.
        (camel_session_init): Init service cache.
        (service_cache_remove): destroy callback to remove a service from
        the cache.

        * camel-store.c (get_folder_internal): Remove the extra ref of the
        folder.  That seems the right behaviour ...?
        (camel_store_get_type): Doh, actually call store init, so the
        cache works.
        (cache_folder): strdup the folder name!  no wonder it never found
        it again.

svn path=/trunk/; revision=3298
2000-05-30 22:35:40 +00:00
d6571004c0 Implemented a few more imap functions in providers/imap/camel-imap-folder.c
svn path=/trunk/; revision=3286
2000-05-30 17:41:31 +00:00
3cc160e17b diff -r1.206 ChangeLog
2a3,9
> 	* camel-store.c (camel_store_init): Move it to here.  If this
> 	level is going to maintain it, it should set it up.  Lets see what
> 	caching folders breaks :(
>
> 	* providers/pop3/camel-pop3-store.c (camel_pop3_store_init): Dont
> 	init folder cache here.
>
7a15,16
> 	(camel_mbox_summary_expunge): Remove some debug, and dont offset
> 	frompos?

svn path=/trunk/; revision=3274
2000-05-30 01:05:18 +00:00
0dae22ec2f Make sure we copy messages which are still intact to the new folder.
2000-05-29  Not Zed  <NotZed@HelixCode.com>

        * providers/mbox/camel-mbox-summary.c
        (camel_mbox_summary_expunge): Make sure we copy messages which are
        still intact to the new folder.
        (camel_mbox_summary_expunge): Update the frompos as well when
        moving the content.

svn path=/trunk/; revision=3272
2000-05-30 00:50:23 +00:00
7c4626c00f > (message_changed): Track changes to the source message in the
> 	summary.
> 	(folder_changed): Track folder changes, re-query the folder that
> 	changed, and cascade the changed event as well.
> 	(camel_vee_folder_finalise): Free subfolder and subfolder summary.

svn path=/trunk/; revision=3271
2000-05-29 23:29:44 +00:00
82d8404f4f Check the searched folder is open before trying to search it.
2000-05-29  Not Zed  <NotZed@HelixCode.com>

        * providers/vee/camel-vee-folder.c (vee_folder_build): Check the
        searched folder is open before trying to search it.

svn path=/trunk/; revision=3268
2000-05-29 20:38:55 +00:00
9f804702d5 Fix up some glib precondition stuff. Try to set the URL in
* camel-service.c (camel_service_new): Fix up some glib
	precondition stuff. Try to set the URL in camel_service_new before
	checking whether or not it's "empty" so that you can successfully
	set "sendmail:" as a URL.

svn path=/trunk/; revision=3266
2000-05-29 19:32:29 +00:00
a3a1843acf Typo
svn path=/trunk/; revision=3257
2000-05-29 11:09:32 +00:00
28a05ec767 Add a domain field to CamelProvider, to say what kind of data it provides.
* camel-provider.h: Add a domain field to CamelProvider, to say
	what kind of data it provides.

	* providers/imap/camel-imap-provider.c:
	* providers/mbox/camel-mbox-provider.c:
	* providers/pop3/camel-pop3-provider.c:
	* providers/sendmail/camel-sendmail-provider.c:
	* providers/smtp/camel-smtp-provider.c: Set domain to "mail".

	* providers/nntp/camel-nntp-provider.c: Set domain to "news".

	* providers/vee/camel-vee-provider.c: Set domain to "vfolder". (So
	it doesn't end up being listed as a potential mail source in the
	mail config wizard.)

svn path=/trunk/; revision=3254
2000-05-28 21:29:28 +00:00
4e5eac84a0 (connect_to_server): Remove port number from error message since
it's not terribly useful and we were getting it from the wrong
	place anyway.

svn path=/trunk/; revision=3252
2000-05-28 20:03:05 +00:00
c3b178dc06 Split apart password and APOP auth, since some servers seem to do both,
* providers/pop3/camel-pop3-store.c: Split apart password and APOP
	auth, since some servers seem to do both, but don't really.
	(connect_to_server): Renamed from try_connect. Now actually does
	the connection up to the point of checking the greeting for APOP
	support.
	(query_auth_types): Return APOP, if appropriate. Call
	pop3_disconnect after connect_to_server since we don't really want
	to be connected.
	(pop3_connect): Use connect_to_server rather than duplicating
	code. Fix a one-byte buffer overrun in the APOP code.
	(pop3_disconnect): Make this able to clean up after a partial
	connect.

svn path=/trunk/; revision=3250
2000-05-28 18:05:23 +00:00
2e7d848819 Use foo@bar' rather than "" <foo@bar>' for email addresses with no name
* camel-mime-utils.c (header_address_list_format_append): Use
	`foo@bar' rather than `"" <foo@bar>' for email addresses with no
	name component.

svn path=/trunk/; revision=3248
2000-05-28 17:36:54 +00:00
b8a53f033d Added a missing smtp-related file to the dist.
svn path=/trunk/; revision=3242
2000-05-28 11:56:20 +00:00
d8c5c9136d Ripped out camel_imap_command_get_additional_data() from camel-imap-store and implemented a number of methods in camel-imap-folder
svn path=/trunk/; revision=3233
2000-05-27 21:57:41 +00:00
f5ba4dde57 Don't set a default boundary. Require the caller to do that.
* camel-multipart.c (camel_multipart_init): Don't set a default
	boundary. Require the caller to do that.
	(set_boundary): if boundary is NULL, generate a "random" boundary.

	* camel-mime-part-utils.c
	(camel_mime_part_construct_content_from_parser): Add a call to
	camel_multipart_set_boundary after creating a new multipart.

svn path=/trunk/; revision=3217
2000-05-26 14:46:13 +00:00
6712604b98 updated changelog to reflect changes I made in providers/imap
svn path=/trunk/; revision=3212
2000-05-26 01:10:54 +00:00
701794e9e3 Added initial code to camel-imap-folder.c
svn path=/trunk/; revision=3211
2000-05-26 01:06:35 +00:00
ac85ed858a Updated several imap source files
svn path=/trunk/; revision=3210
2000-05-26 01:05:49 +00:00
5429c7017c Replace simple data wrapper here too, oops.
2000-05-25  NotZed  <NotZed@HelixCode.com>

	* camel-mime-part-utils.c
	(camel_mime_part_construct_content_from_parser): Replace simple
	data wrapper here too, oops.

svn path=/trunk/; revision=3208
2000-05-25 23:25:35 +00:00
1ead1f0174 Removed camel-simple-data-wrapper again. Less code to maintain == better
2000-05-25  NotZed  <NotZed@HelixCode.com>

	* Makefile.am (libcamel_la_SOURCES): Removed
	camel-simple-data-wrapper again.  Less code to maintain == better
	code.

	* camel-data-wrapper.c (construct_from_stream): Fixes for bug
	where text attachments dont work.  Made data-wrapper concrete for
	the second time.

svn path=/trunk/; revision=3207
2000-05-25 21:40:58 +00:00
a979df3778 Took out code that had been there to reconnect to the server if it was not
2000-05-25  Jeffrey Stedfast  <fejj@helixcode.com>

        * providers/smtp/camel-smtp-transport.c (_send_to): Took out code
        that had been there to reconnect to the server if it was not
        already connected - Mailer code was fixed so that this should not
        be needed.

        * providers/imap/camel-imap-store.[c,h]: Initial code.

svn path=/trunk/; revision=3202
2000-05-25 17:42:53 +00:00
c6c72bce6f Re-add camel-simple-data-wrapper.h, which was removed for some reason.
* camel.h: Re-add camel-simple-data-wrapper.h, which was removed
	for some reason.

svn path=/trunk/; revision=3194
2000-05-25 00:46:02 +00:00
1d2f32fdca Added more files to the imap provider to use as an outline - will likely need heavy editing later in development
This is mostly meant as guidance to both me and any volunteers that start working on imap

svn path=/trunk/; revision=3192
2000-05-25 00:04:11 +00:00
057745cfb6 Fixes to make the SMTP transport thread-safe
Wed May 24 18:09:26 EDT 2000  Jeffrey Stedfast  <fejj@helixcode.com>

	* providers/smtp/camel-smtp-transport.[c,h]: Fixes to make the
	SMTP transport thread-safe

svn path=/trunk/; revision=3190
2000-05-24 22:10:27 +00:00
5417430314 Added debug fprintfs, tested with a few messages (smtp_data): Fixed to use
Tue May 23 17:49:21 EDT 2000  Jeffrey Stedfast  <fejj@helixcode.com>

	* providers/smtp/camel-smtp-transport.c: Added debug fprintfs, tested with a few messages
	(smtp_data): Fixed to use data_wrapper_write_to_stream()

	* camel-mime-filter-smtp.c (filter): Modified to escape all lines
	beginning with a '.' and to place \r before each \n if one did
	not previously exist. Removed code to escape "From " as it was found to not be needed

	* providers/imap/.cvsignore: added file

svn path=/trunk/; revision=3186
2000-05-23 21:54:35 +00:00
83dfb929cf Shut up.
svn path=/trunk/; revision=3180
2000-05-23 10:23:05 +00:00
44178eaccd stuff
svn path=/trunk/; revision=3175
2000-05-23 06:11:04 +00:00
35e4c5d6b5 stuff
svn path=/trunk/; revision=3174
2000-05-23 04:48:13 +00:00
62b7098818 stuff dude
svn path=/trunk/; revision=3173
2000-05-23 04:08:36 +00:00
e2dca55045 junk
svn path=/trunk/; revision=3172
2000-05-23 03:47:23 +00:00
fa0138dffc changelog
svn path=/trunk/; revision=3171
2000-05-23 03:28:09 +00:00
117f3abbfb more stuff
svn path=/trunk/; revision=3170
2000-05-23 03:26:36 +00:00
ff54ebc1ae changelog
svn path=/trunk/; revision=3169
2000-05-23 03:05:19 +00:00
92f2cbe161 stuff
svn path=/trunk/; revision=3168
2000-05-23 03:04:19 +00:00
924869dd9c dude, just stuff
svn path=/trunk/; revision=3166
2000-05-23 02:57:31 +00:00