Commit Graph

747 Commits

Author SHA1 Message Date
f3e57fa18f stat was not testing the good file. Fixed.
1999-08-06  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/providers/MH/camel-mh-folder.c (_list_subfolders):
	stat was not testing the good file. Fixed.

svn path=/trunk/; revision=1090
1999-08-06 15:12:47 +00:00
2bbd6e4180 test for RFC2047 decoder.
1998-08-06  Robert Brady  <rwb197@ecs.soton.ac.uk>

	* tests/test5.c: test for RFC2047 decoder.

	* camel/gmime-rfc2047.c: Improved RFC2047 decoder.

svn path=/trunk/; revision=1088
1999-08-06 14:25:09 +00:00
cf2f1c428f add debug information (_list_subfolders): test if first char in folder
1999-08-06  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/providers/MH/camel-mh-folder.c (_exists): add debug information
	(_list_subfolders): test if first char in folder name is not '.'
	before adding it to the folder list.

	* camel/camel-store.c (_init):
	disable session check temporarily
	(_get_separator):
	(_get_folder): new static func.
	Fixed several oddities in class definition.

	* camel/providers/MH/camel-mh-store.c (camel_mh_store_get_type):
	parent type is CAMEL_STORE_TYPE not CAMEL_FOLDER_TYPE

	* camel/camel-store.c:
	prent class is CamelServiceClass not GtkObjectClass

	* camel/url-util.c :
	cosmetic changes + use of const when possible.
	(find_host):
	fix a bug: when there is no host and no port don't skip the '/'
	all static find_* func are now named _func_*
	(g_url_free): destructor func.
	cache field has been disabled. Constructing the url string
	won't be too slow and will occur rarely enough that we
	do not need to add complexity to this code.

	* camel/providers/MH/camel-mh-store.c:
	parent class is CamelStorClass not GtkObjectClass

svn path=/trunk/; revision=1087
1999-08-06 14:17:27 +00:00
7e8e444982 test mh provider.
1999-08-05  bertrand  <Bertrand.Guiheneuf@aful.org>

	* tests/test4.c:
	test mh provider.

	* camel/providers/MH/camel-mh-folder.c (_get_message):
	implemented

svn path=/trunk/; revision=1083
1999-08-05 21:25:53 +00:00
5de5ccdbae new method. (camel_folder_get_message): corresponding public call
1999-08-05  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/camel-folder.c (_get_message):
	new method.
	(camel_folder_get_message):
	corresponding public call

svn path=/trunk/; revision=1082
1999-08-05 16:42:14 +00:00
616d409f7c Some notes.
1999-08-05  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/README.HACKING:
	Some notes.

	* camel/CODING.STYLE:
	short note about coding style.

	* camel/README.COPYRIGHT:
	Note about copyright policy.

	* camel/providers/MH/camel-mh-folder.c (_list_subfolders):
	minor typo fixes.

svn path=/trunk/; revision=1081
1999-08-05 16:02:54 +00:00
7e2281704d indentation and cosmetic changes.
1999-08-04  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/gmime-rfc2047.c:
	* camel/gmime-rfc2047.h:
	indentation and cosmetic changes.

svn path=/trunk/; revision=1079
1999-08-04 17:42:02 +00:00
e77e777a57 Fixed copyright issue. ;)
svn path=/trunk/; revision=1078
1999-08-04 17:34:17 +00:00
bbd88805c2 implemented.
1999-08-04  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/providers/MH/camel-mh-folder.c (_list_subfolders):
	implemented.

svn path=/trunk/; revision=1077
1999-08-04 17:30:17 +00:00
b92cd47ad5 finshed implementation (_delete_messages): implemented.
1999-08-04  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/providers/MH/camel-mh-folder.c (_delete):
	finshed implementation
	(_delete_messages): implemented.

svn path=/trunk/; revision=1076
1999-08-04 16:36:54 +00:00
8a9862a550 added an implemention of RFC2047 (support for character sets other than
1999-08-04  Robert Brady  <rwb197@ecs.soton.ac.uk>

	* camel/gmime-rfc2047.[ch]: added an implemention of RFC2047
	  (support for character sets other than US-ASCII in MIME
	  headers). Not actually called from anywhere yet.

svn path=/trunk/; revision=1075
1999-08-04 16:16:37 +00:00
5f2175c445 my file I never commited
svn path=/trunk/; revision=1074
1999-08-04 00:29:51 +00:00
0f2d4dd115 Started implementing mh store/folder as a test provider. Next will be pop3.
1999-08-03  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/providers/MH/camel-mh-folder.c (_create):
	implemented.
	(_delete): started implementation.

	* camel/camel-folder.c (_get_folder): default implementation
	calls camel_store_get_folder ().

	* camel/providers/MH/camel-mh-folder.c (_init_with_store):
	implemented.

	* camel/camel-folder.h (struct _CamelFolder):
	remove useless exist_on_store field.

	* camel/camel-folder.c (_exists):
	do not use exist_on_store field.

svn path=/trunk/; revision=1073
1999-08-03 18:08:04 +00:00
b9daf0016b new public functions (_set_name): set full_path.
* camel/camel-folder.c (camel_folder_set_name):
	(camel_folder_get_name):
	new public functions
	(_set_name): set full_path.

	(_set_full_name):
	(camel_folder_set_full_name):
	commented out this functions def.
	It would make things very difficult to handle, and would not
	be very useful.

	* camel/providers/MH/camel-mh-store.h:
	* camel/providers/MH/camel-mh-store.c (camel_mh_store_set_toplevel_dir):
	(camel_mh_store_get_toplevel_dir):
	* camel/providers/MH/camel-mh-folder.c (_set_name):
	* camel/providers/MH/camel-mh-folder.h:
	use (gchar *) instead of (GString *) everywhere.
	use const when necessary.

	* camel/camel-folder.h (struct _CamelFolder):
	removed unused message_list field.

svn path=/trunk/; revision=1072
1999-08-03 15:37:35 +00:00
382308f44a There is a probleme here. We can not allow mime part content-type field
* camel/camel-mime-part.c (_set_content_object):
	There is a probleme here. We can not allow mime part
	content-type field and content_object mime-type to be
	different. I thus chosed to set mime part object
	content field to be freed (if necessary) and set
	to be a pointer to content_object mime type
	field.
	(_construct_from_stream): set content_object mime type
	to be the same as mime_part's one. This is necessary
	because we use _set_content_type.

	This two things are a bit hackish ansd may need
	to be redesigned.

svn path=/trunk/; revision=1071
1999-08-03 13:16:35 +00:00
e9c6d8921c Multipart Mime message parsing works with plain text parts. Woohooo :))))
Making it work with other types is now just a matter of writing
the various data wrappers. And display them will just be a matter of writing
the good bonobo components.

1999-08-03  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/camel-simple-data-wrapper.c (_construct_from_stream):
	more debugging output +  nb_bytes_read is now a signed int
	to avoid bug when eos is encountered.

	* camel/camel-mime-part.c (_construct_from_stream):
	sync to data_wrapper_repository function name changes.
	Use default "text/plain" type when conten-type field
	is not found. (following RFC 2046 spec).

	* camel/data-wrapper-repository.c (data_wrapper_repository_set_data_wrapper_type):
	(data_wrapper_repository_get_data_wrapper_type):
	change function name prefix (s/data_wrapper/data_wrapper_repository/)

	* camel/camel-multipart.c (_read_part):
	add `\n` at eol but not before boundary.

	* camel/gmime-utils.c (get_header_table_from_stream):
	correct implementation of end of stream detection.

svn path=/trunk/; revision=1070
1999-08-03 10:19:39 +00:00
bba2b0a352 Update logs and sync home/work versions.
* camel/camel-multipart.c (_read_part):
	use a stream to store the part instead of GString.

	* camel/camel-mime-part.c (camel_mime_part_set_text):
	set data wrapper content type to "text/plain".

	* camel/camel-stream-mem.c:
	* camel/camel-stream-mem.h:
	new memory buffer based stream.

	* camel/camel-stream-fs.c (_seek):
	implementation for file system based stream.

	* camel/camel-stream.c (camel_stream_seek):
	new method.

	* camel/camel-stream-fs.c (camel_stream_fs_class_init):
	pass CamelStreamFsClass instead of CamelStreamClass.

svn path=/trunk/; revision=1069
1999-08-03 08:29:15 +00:00
80fc914052 Anther sync
svn path=/trunk/; revision=1068
1999-08-03 08:16:15 +00:00
e04ff08029 sync before going home
svn path=/trunk/; revision=1064
1999-08-02 15:11:10 +00:00
c54abe884b new memory buffer based stream.
* camel/camel-stream-mem.c:
	* camel/camel-stream-mem.h:
	new memory buffer based stream.

	* camel/camel-stream-fs.c (_seek):
	implementation for file system based stream.

	* camel/camel-stream.c (camel_stream_seek):
	new method.

	* camel/camel-stream-fs.c (camel_stream_fs_class_init):
	pass CamelStreamFsClass instead of CamelStreamClass.

svn path=/trunk/; revision=1056
1999-08-01 21:36:42 +00:00
2c54349209 do not return NULL when line is empty.
* camel/gmime-utils.c (gmime_read_line_from_stream):
	do not return NULL when line is empty.

	* camel/camel-multipart.c (_read_part): return true when end
	of multipart is found, not the contrary

svn path=/trunk/; revision=1055
1999-08-01 19:50:02 +00:00
3d7a8fdeac Adding missing files
svn path=/trunk/; revision=1053
1999-08-01 13:42:43 +00:00
cac0ba57e6 merge a lot of work. Rough ChangeLog will follow
svn path=/trunk/; revision=1052
1999-08-01 13:38:28 +00:00
4a765990e5 sync before going home
svn path=/trunk/; revision=1026
1999-07-15 15:54:52 +00:00
16d79f5577 Do not use GStrings any more. Added assertion code. Cosmetic reformating
1999-07-15  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/url-util.c:
	* camel/url-util.h:
	Do not use GStrings any more.
	Added assertion code.
	Cosmetic reformating

	* AUTHORS:
	* ChangeLog:
	Changed my email address.

svn path=/trunk/; revision=1025
1999-07-15 11:13:32 +00:00
fce26238c4 Implemented base64 encoder based on CamelStreams. Should the
1999-07-13  Miguel de Icaza  <miguel@gnu.org>

	* camel/gmime-base64.c (gmime_encode_base64): Implemented base64
	encoder based on CamelStreams.  Should the encoder/decoder be a
	Stream itself?

	* camel/gmime-utils.c: include config.h here.
	* camel/url-util.c: ditto.
	* camel/gstring-util.c: ditto.
	* camel/gmime-content-field.c: ditto.
	* camel/camel-stream.c: ditto.
	* camel/camel-stream-fs.c: ditto.
	* camel/camel-store.c: ditto.
	* camel/camel-simple-data-wrapper.c: ditto.
	* camel/camel-session.c: ditto.
	* camel/camel-service.c: ditto.
	* camel/camel-mime-part.c: ditto.
	* camel/camel-mime-message.c: ditto.
	* camel/camel-log.c: ditto.
	* camel/camel-data-wrapper.c: ditto
	* camel/camel-folder.c: ditto.

	* camel/camel-stream.c (camel_stream_write): Moved api
	documentation to the places that they document.
	(camel_stream_class_init): Virtual classes do not need to have a
	default implementation.  So null them all.
	(camel_stream_write): Return value from write.
	(camel_stream_available): implement.
	(camel_stream_write_strings): documented.

	* devel-docs/query/virtual-folder-in-depth.sgml: Small
	reformatting

1999-06-28  bertrand  <Bertrand.Guiheneuf@inria.fr>

	* tests/test2.c (main): now use
	CamelDataWrapper::contruct_form_stream to test

svn path=/trunk/; revision=1024
1999-07-15 00:11:56 +00:00
1659afa3d3 now use CamelDataWrapper::contruct_form_stream to test message parsing
1999-06-28  bertrand  <Bertrand.Guiheneuf@inria.fr>

	* tests/test2.c (main): now use
	CamelDataWrapper::contruct_form_stream to test
	message parsing

	* camel/camel-data-wrapper.c:
	* camel/camel-data-wrapper.h:
	construct_from_stream no longer has maximimum size arg.

	* camel/camel-mime-part.c (_construct_from_stream): new.
	Construct the mime_part from a stream.

svn path=/trunk/; revision=1003
1999-06-28 16:05:09 +00:00
817f237398 new field (content_type) and associated methods. (camel_mime_part_init):
1999-06-28  bertrand  <Bertrand.Guiheneuf@inria.fr>

	* camel/camel-mime-part.c:
	new field (content_type) and associated methods.
	(camel_mime_part_init): initialize content_type field.
	(_parse_header_pair): now set content_type MimePart field
	instead of using DataWrapper Mime typing facility.

1999-06-28  bertrand  <Bertrand.Guiheneuf@inria.fr>

	* camel/camel-data-wrapper.h:
	s/content_type/mime_type/

1

svn path=/trunk/; revision=1002
1999-06-28 14:36:11 +00:00
0038b76777 new class. Simple implementation of a data wrapper: simply keeps the
1999-06-24  bertrand  <Bertrand.Guiheneuf@inria.fr>

	* camel/camel-simple-data-wrapper.[ch]:
	new class. Simple implementation of a data wrapper:
	simply keeps the stream result in a byte array.

	* camel/camel-mime-part.c (_parse_header_pair): added a warning.
	Have to think about the correct way to store content type stuff.

svn path=/trunk/; revision=995
1999-06-24 17:56:14 +00:00
179e04c582 Various patches from Ulrich Drepper <drepper at cygnus.com>
1999-06-24  bertrand  <Bertrand.Guiheneuf@inria.fr>

	* camel/camel-mime-message.c (_write_one_recipient_to_stream):
	includes gmime-utils header.
	patch from Ulrich Drepper <drepper at cygnus.com>
	set separator string in write_header_with_glist_to_stream()

	* camel/camel-log.c (camel_log):
	patch from Ulrich Drepper <drepper at cygnus.com>
	Do not use stderr in initialization of logfile descriptor.

	* camel/camel-stream-fs.c (camel_stream_fs_new_with_name):
	patch from Ulrich Drepper <drepper at cygnus.com>
	initialize mode field in open().

svn path=/trunk/; revision=994
1999-06-24 16:44:28 +00:00
7f81757d52 moved all the content-type stuff here. (camel_data_wrapper_init):
1999-06-22  bertrand  <Bertrand.Guiheneuf@inria.fr>

	* camel/camel-data-wrapper.c (_get_content_type):
	moved all the content-type stuff here.
	(camel_data_wrapper_init): initialize the instance
	content-type field.

	* camel/camel-mime-part.c (_parse_header_pair):
	parse Content-Type stuff in header.
	(_write_to_stream): write the content type stuff to
	the stream.

svn path=/trunk/; revision=985
1999-06-22 16:12:27 +00:00
5deed2f193 new function, returns "type/subtype" mime type string.
* camel/gmime-content-field.c (gmime_content_field_get_mime_type):
	new function, returns "type/subtype" mime type string.
	(gmime_content_field_construct_from_string):
	new function, construbt a content_field object
	form a string. be used to set the mime_type from a
	string.

	* camel/camel-mime-part.c (_set_content_type):
	(camel_mime_part_set_content_type):
	(_get_content_type):
	(_get_content_type):
	new methods.

1999-06-21  bertrand  <Bertrand.Guiheneuf@inria.fr>

	* camel/gmime-utils.c (get_header_table_from_stream):
	replace CR/LF+'\t' with ' '

	* camel/camel-mime-message.c (_set_recipient_list_from_string):
	trim \t when splitting

	* camel/gmime-utils.c (get_header_table_from_file):
	corrected bug in scanning tabulations ('t' -> '\t')

	* tests/test2.c (main): read mail.test instead
	of mail1.test

	* camel/camel-mime-part.c (_add_header):
	added comments

svn path=/trunk/; revision=984
1999-06-22 14:19:24 +00:00
4f689d0fb8 sync
svn path=/trunk/; revision=983
1999-06-21 16:46:58 +00:00
19a118096f Commit of all Netherlands changes.
All mime stuff uses streams now, and it still works.

Bertrand

svn path=/trunk/; revision=981
1999-06-18 20:32:18 +00:00
4fcef82e38 another nederlands sync
svn path=/trunk/; revision=979
1999-06-15 11:50:48 +00:00
8050e311c1 tmp sync. Does ot even compile
svn path=/trunk/; revision=978
1999-06-14 12:50:58 +00:00
1c1106598f use new stream code instead of raw file * stuff.
1999-05-31  bertrand  <Bertrand.Guiheneuf@inria.fr>

	* tests/test2.c (main):
	use new stream code instead of raw file * stuff.

	* camel/gmime-utils.c (get_header_table_from_stream):
	new func. Will replace get_header_table_from_file and will
	be used to parse headers from files as well as from
	memory buffers.

	* camel/camel-stream-fs.c:
	CamelStream Subclass. File system based
	stream.

svn path=/trunk/; revision=961
1999-05-30 21:56:11 +00:00
b3cdb41a12 new class. Represents an abstract stream object.
1999-05-30  bertrand  <Bertrand.Guiheneuf@inria.fr>

 	* camel/camel-stream.h: new class. Represents an
	abstract stream object.

svn path=/trunk/; revision=960
1999-05-30 20:02:42 +00:00
d32ba2a70a sync
svn path=/trunk/; revision=959
1999-05-30 14:02:36 +00:00
1d01c8dad1 remove leading and trailing spaces in recipient addresses.
* camel/camel-mime-message.c (_set_recipient_list_from_string):
	remove leading and trailing spaces in recipient addresses.

	* camel/gmime-utils.c (_store_header_pair_from_gstring):
	remove leading and trailing spaces from header values.

	* camel/gstring-util.c (g_string_trim): new
	func: remove leading or trailng chars from
	a specified char set.
	(g_string_split): allow trimming of substrings.

	* tests/test1.c (main): remove gtk_main call

svn path=/trunk/; revision=958
1999-05-30 11:40:05 +00:00
a5cd99a263 More header parsing code.
1999-05-28  bertrand  <Bertrand.Guiheneuf@inria.fr>

	* camel/camel-mime-part.c
	(_parse_header_pair):
	(_init_header_name_table):
	More header parsing code.

svn path=/trunk/; revision=953
1999-05-28 17:57:28 +00:00
69912fc470 rewrite message obtained via parsing into a file. Actually, it works
* tests/test2.c (main): rewrite message obtained via
	parsing into a file. Actually, it works pretty well :))

	* camel/camel-mime-message.c (_set_recipient_list_from_string):
	create recipient list form a comma separated string.
	(_parse_header_pair): added recipient lists parsing.

	* camel/camel-mime-part.c (_parse_header_pair):
	new (protected) method. Parse a head pair and
	decides what to do with it.

	(_add_header): Call in _parse_header_pair

	* camel/camel-mime-message.c (_parse_header_pair):
	overload  header parsing MimePart mthod.

	* camel/gstring-util.c (g_string_split):
	new func: split a gstring into a GList of
	substring.

svn path=/trunk/; revision=950
1999-05-27 21:37:01 +00:00
a8a38c7a80 sync
svn path=/trunk/; revision=949
1999-05-27 16:42:32 +00:00
72c4a8deda new func. Parses message header zone and returns a Glist of all header
1999-05-26  bertrand  <Bertrand.Guiheneuf@inria.fr>

	* camel/gmime-utils.c (get_header_lines_from_file):
	new func. Parses message header zone and returns
	a Glist of all header lines.

	* tests/test2.c: tests message parsing

	* camel/gmime-utils.c (write_header_table_to_file):
	new func to write a table of headers.

svn path=/trunk/; revision=948
1999-05-26 21:51:53 +00:00
bdf895136e recipient list printing
* camel/camel-mime-message.c (_write_to_file):
	recipient list printing

	* tests/test1.c (main): more tests.

svn path=/trunk/; revision=936
1999-05-20 21:24:54 +00:00
1cf9ad8336 sync
svn path=/trunk/; revision=935
1999-05-20 16:37:03 +00:00
429847f57b test if content exists before calling its write_to method.
1999-05-19  bertrand  <Bertrand.Guiheneuf@inria.fr>

	* camel/camel-mime-part.c (_write_to_file): test if content
	exists before calling its write_to method.

	* camel/camel-mime-message.c (_write_to_file): bugs fix.

First test of mime_message framework.

svn path=/trunk/; revision=934
1999-05-19 20:24:23 +00:00
f53eb88c56 sync
svn path=/trunk/; revision=933
1999-05-19 19:07:52 +00:00
6476c5f233 tests
* tests/test1.c (main): tests

	* camel/camel-mime-message.c (_write_to_file):
	started write_to framework for mime_messages

svn path=/trunk/; revision=931
1999-05-18 19:06:00 +00:00
bf0960ab57 message number funcs.
1999-05-18  bertrand  <Bertrand.Guiheneuf@inria.fr>

	* camel/camel-mime-message.c (*_message_number):
	message number funcs.

svn path=/trunk/; revision=930
1999-05-18 07:59:57 +00:00