platform/upstream/evolution-data-server.git
25 years agodefault implementation to be called first by providers methods. It looks
bertrand [Fri, 13 Aug 1999 18:28:55 +0000 (18:28 +0000)]
default implementation to be called first by providers methods. It looks

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

* camel/camel-folder.c (_get_message): default implementation
to be called first by providers methods. It looks in the
folder message list (in memory) to see if the message has
not already been retrieved, and in this case, returns
the same CamelMimeMessage object

Caching messages in folder kworks. Providers will have to
do their job correctly.
Enough for today.

25 years agoNew field (message_list) which will hold a reference on each message
bertrand [Fri, 13 Aug 1999 17:41:18 +0000 (17:41 +0000)]
New field (message_list) which will hold a reference on each message

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

* camel/camel-folder.h (struct _CamelFolder):
New field (message_list) which will hold a
reference on each message obtained by the folder,
which is necessary in order for the caching procedure
to work (Getting the same message from a folder twice
will return the same CamelMimeMessage object).

* camel/camel-folder.c (camel_folder_get_message):
When the store retreives a message put it in its
message list.
(_finalize): free message list.

* ChangeLog: fix typo (parmanent)

25 years agonew method, returns the list of permanent flags supported by the folder.
bertrand [Fri, 13 Aug 1999 15:30:45 +0000 (15:30 +0000)]
new method, returns the list of permanent flags supported by the folder.

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

* camel/camel-folder.c (_get_parmanent_flag_list):
(camel_folder_get_parmanent_flag_list):
new method, returns the list of permanent
flags supported by the folder.

* camel/camel-mime-message.c (_get_flag_list):
(camel_mime_message_get_flag_list): new method,
return the list of flag name used by this message.

25 years agothose two func go here now.
bertrand [Fri, 13 Aug 1999 14:30:07 +0000 (14:30 +0000)]
those two func go here now.

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

* camel/hash-table-utils.c (g_strcase_equal):
(g_strcase_hash): those two func go here now.

* camel/hash_table_utils.c (hash_table_generic_free):
free a (gpointer, gpointer) hash table pair.

* camel/camel-mime-message.c (camel_mime_message_init): use
case insensitive hash table functions.
(_set_flag):
(camel_mime_message_set_flag):
(_get_flag):
(camel_mime_message_get_flag):
Use const for flag name, they are now
duplicated.

25 years agoremove stupid debug code. (add_mail_store): use camel_session_get_store
bertrand [Thu, 12 Aug 1999 21:01:05 +0000 (21:01 +0000)]
remove stupid debug code. (add_mail_store): use camel_session_get_store

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

* tests/ui-tests/store_listing.c (show_folder_messages):
remove stupid debug code.
(add_mail_store): use camel_session_get_store instead
of creating MH store directly.
(main): load MH provider.

* camel/camel-provider.c (camel_provider_register_as_module):
register new provider.
(camel_provider_get_for_protocol):
Now, implementation is correct.

* camel/camel-store.c (_finalize):
* camel/camel-store.h (struct _CamelStore):
further disabled url_name field use.
URL will be generated dynamically.

Ben dam don dieu, vla t'y pas que ya tout le bourier qui marche !
(Autoload store/protocol from URL works)

25 years agocompilation and runtime fixes.
bertrand [Thu, 12 Aug 1999 11:00:04 +0000 (11:00 +0000)]
compilation and runtime fixes.

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

* camel/camel-session.c (camel_session_get_store_for_protocol):
compilation and runtime fixes.

* camel/providers/MH/camel-mh-store.c (_init):
synced with CamelStore.

* camel/camel-store.c (_init):
in CamelStore::init, url_name is now const.
disabled url_name copy.

Last check in did not even compile...

25 years agonew function: returns a store for an URL.
bertrand [Thu, 12 Aug 1999 10:24:01 +0000 (10:24 +0000)]
new function: returns a store for an URL.

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

* camel/camel-session.c (camel_session_get_store):
new function: returns a store for an URL.
(camel_session_get_store_for_protocol):
new functionc: returns a store for a given
store protocol (as IMAP/POP/MH ...)
* camel/string-utils.c (g_strcase_equal):
(g_strcase_hash): case insensitive hash table
funcs.

* camel/camel-session.c (camel_session_init): hash table
keys are case insensitive.

* camel/camel-provider.c (camel_provider_get_for_protocol):
new function, returns the last registered
provider for a protocol.

25 years agonew file. MH provider registration stuff.
bertrand [Wed, 11 Aug 1999 22:34:08 +0000 (22:34 +0000)]
new file. MH provider registration stuff.

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

* camel/providers/MH/camel-mh-provider.c:
new file. MH provider registration stuff.

* camel/camel-provider.c (camel_provider_register_as_module):
load a provider from a shared object (plugin).
(camel_provider_register): register a provider
"by hand". Used for statically defined providers.

* tests/test7.c: new test.
tests providers loading framework.

Providers modules loading Works !!! :))))

25 years agoMessage creation still consumes a lot of
bertrand [Wed, 11 Aug 1999 10:59:16 +0000 (10:59 +0000)]
Message creation still consumes a lot of
memory (maybe 2000k) and I really don't
understand why. As soon as I get gtk working
on SunOS, purify should hopefully give me the answer.

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

* camel/camel-service.c (_finalize):
* camel/camel-stream-fs.c (_finalize):
(_destroy): close file descriptor.
* camel/camel-stream-mem.c (_finalize):
* camel/camel-store.c (_finalize):
* camel/camel-folder.c (_finalize):

25 years agoimplemented destructors.
bertrand [Tue, 10 Aug 1999 23:22:43 +0000 (23:22 +0000)]
implemented destructors.

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

* camel/camel-multipart.c (_finalize):
* camel/camel-simple-data-wrapper.c (_finalize):
* camel/camel-mime-part.c (_finalize):
implemented destructors.

* camel/gmime-content-field.c (gmime_content_field_ref):
(gmime_content_field_unref):
New reference mechanism for GMimeContentField objects.

* camel/camel-data-wrapper.c (_finalize):
Started implementing destructors.

* camel/camel-mime-part.c (_construct_from_stream):
* camel/gmime-content-field.c (gmime_content_field_write_to_stream):
* camel/camel-multipart.c (_construct_from_stream):
removed forgotten anarchic traces.

Go away memory leaks!

25 years agosome test files
Bertrand Guiheneuf [Tue, 10 Aug 1999 11:53:44 +0000 (11:53 +0000)]
some test files

25 years agosync
Bertrand Guiheneuf [Mon, 9 Aug 1999 16:48:01 +0000 (16:48 +0000)]
sync

25 years agomore advanced RFC2047 encoder started.
Robert Brady [Sun, 8 Aug 1999 22:38:40 +0000 (22:38 +0000)]
more advanced RFC2047 encoder started.

1999-08-08  Robert Brady  <rwb197@ecs.soton.ac.uk>

* camel/gmime-rfc2047.c: more advanced RFC2047 encoder started.

25 years agofix. In MH, message number is not related to message position in folder.
bertrand [Sun, 8 Aug 1999 20:02:01 +0000 (20:02 +0000)]
fix. In MH, message number is not related to message position in folder.

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

* camel/providers/MH/camel-mh-folder.c (_get_message):
fix. In MH, message number is not related to
message position in folder.

25 years agoutil func. (_get_message_count): implemented.
bertrand [Sun, 8 Aug 1999 19:10:04 +0000 (19:10 +0000)]
util func. (_get_message_count): implemented.

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

* camel/providers/MH/camel-mh-folder.c (_is_a_message_file):
util func.
(_get_message_count): implemented.

25 years agoupdated some autogen doc stuff. Still don't understand warnings :(
bertrand [Fri, 6 Aug 1999 17:28:24 +0000 (17:28 +0000)]
updated some autogen doc stuff. Still don't understand warnings :(

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

* devel-docs/camel/:
updated some autogen doc stuff.
Still don't understand warnings :(

* camel/camel-data-wrapper.c:
* camel/providers/MH/camel-mh-store.c:
* camel/url-util.c:
* camel/gmime-content-field.c:
* camel/camel-store.c:
various inline doc corrections.

* camel/camel-folder.c (get_message_count):
new method. Returns the number of message
in the folder.

25 years agoencoder test.
Robert Brady [Fri, 6 Aug 1999 15:47:45 +0000 (15:47 +0000)]
encoder test.

1999-08-06  Robert Brady  <rwb197@ecs.soton.ac.uk>

* tests/test6.c: encoder test.

* camel/gmime-rfc2047.c: Fixed decoder bug : sequence
?= is not always the terminator for an encoded-string.

25 years agostat was not testing the good file. Fixed.
bertrand [Fri, 6 Aug 1999 15:12:47 +0000 (15:12 +0000)]
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.

25 years agotest for RFC2047 decoder.
Robert Brady [Fri, 6 Aug 1999 14:25:09 +0000 (14:25 +0000)]
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.

25 years agoadd debug information (_list_subfolders): test if first char in folder
bertrand [Fri, 6 Aug 1999 14:17:26 +0000 (14:17 +0000)]
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

25 years agotest mh provider.
bertrand [Thu, 5 Aug 1999 21:25:52 +0000 (21:25 +0000)]
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

25 years agonew method. (camel_folder_get_message): corresponding public call
bertrand [Thu, 5 Aug 1999 16:42:14 +0000 (16:42 +0000)]
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

25 years agoSome notes.
bertrand [Thu, 5 Aug 1999 16:02:54 +0000 (16:02 +0000)]
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.

25 years agoindentation and cosmetic changes.
bertrand [Wed, 4 Aug 1999 17:42:02 +0000 (17:42 +0000)]
indentation and cosmetic changes.

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

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

25 years agoFixed copyright issue. ;)
Robert Brady [Wed, 4 Aug 1999 17:34:16 +0000 (17:34 +0000)]
Fixed copyright issue. ;)

25 years agoimplemented.
bertrand [Wed, 4 Aug 1999 17:30:17 +0000 (17:30 +0000)]
implemented.

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

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

25 years agofinshed implementation (_delete_messages): implemented.
bertrand [Wed, 4 Aug 1999 16:36:54 +0000 (16:36 +0000)]
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.

25 years agoadded an implemention of RFC2047 (support for character sets other than
Robert Brady [Wed, 4 Aug 1999 16:16:37 +0000 (16:16 +0000)]
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.

25 years agomy file I never commited
Arturo Espinosa [Wed, 4 Aug 1999 00:29:51 +0000 (00:29 +0000)]
my file I never commited

25 years agoStarted implementing mh store/folder as a test provider. Next will be pop3.
bertrand [Tue, 3 Aug 1999 18:08:04 +0000 (18:08 +0000)]
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.

25 years agonew public functions (_set_name): set full_path.
Bertrand Guiheneuf [Tue, 3 Aug 1999 15:37:35 +0000 (15:37 +0000)]
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.

25 years agoThere is a probleme here. We can not allow mime part content-type field
Bertrand Guiheneuf [Tue, 3 Aug 1999 13:16:35 +0000 (13:16 +0000)]
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.

25 years agoMultipart Mime message parsing works with plain text parts. Woohooo :))))
bertrand [Tue, 3 Aug 1999 10:19:38 +0000 (10:19 +0000)]
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.

25 years ago Update logs and sync home/work versions.
Bertrand Guiheneuf [Tue, 3 Aug 1999 08:29:15 +0000 (08:29 +0000)]
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.

25 years agoAnther sync
Bertrand Guiheneuf [Tue, 3 Aug 1999 08:16:15 +0000 (08:16 +0000)]
Anther sync

25 years agosync before going home
Bertrand Guiheneuf [Mon, 2 Aug 1999 15:11:10 +0000 (15:11 +0000)]
sync before going home

25 years agonew memory buffer based stream.
Bertrand Guiheneuf [Sun, 1 Aug 1999 21:36:42 +0000 (21:36 +0000)]
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.

25 years agodo not return NULL when line is empty.
Bertrand Guiheneuf [Sun, 1 Aug 1999 19:50:02 +0000 (19:50 +0000)]
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

25 years agoAdding missing files
Bertrand Guiheneuf [Sun, 1 Aug 1999 13:42:41 +0000 (13:42 +0000)]
Adding missing files

25 years agomerge a lot of work. Rough ChangeLog will follow
Bertrand Guiheneuf [Sun, 1 Aug 1999 13:38:25 +0000 (13:38 +0000)]
merge a lot of work. Rough ChangeLog will follow

25 years agosync before going home
Bertrand Guiheneuf [Thu, 15 Jul 1999 15:54:52 +0000 (15:54 +0000)]
sync before going home

25 years agoDo not use GStrings any more. Added assertion code. Cosmetic reformating
bertrand [Thu, 15 Jul 1999 11:13:32 +0000 (11:13 +0000)]
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.

25 years agoImplemented base64 encoder based on CamelStreams. Should the
Miguel de Icaza [Thu, 15 Jul 1999 00:11:56 +0000 (00:11 +0000)]
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

25 years agonow use CamelDataWrapper::contruct_form_stream to test message parsing
bertrand [Mon, 28 Jun 1999 16:05:07 +0000 (16:05 +0000)]
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.

25 years agonew field (content_type) and associated methods. (camel_mime_part_init):
bertrand [Mon, 28 Jun 1999 14:36:11 +0000 (14:36 +0000)]
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

25 years agonew class. Simple implementation of a data wrapper: simply keeps the
bertrand [Thu, 24 Jun 1999 17:56:14 +0000 (17:56 +0000)]
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.

25 years agoVarious patches from Ulrich Drepper <drepper at cygnus.com>
bertrand [Thu, 24 Jun 1999 16:44:28 +0000 (16:44 +0000)]
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().

25 years agomoved all the content-type stuff here. (camel_data_wrapper_init):
bertrand [Tue, 22 Jun 1999 16:12:27 +0000 (16:12 +0000)]
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.

25 years agonew function, returns "type/subtype" mime type string.
bertrand [Tue, 22 Jun 1999 14:19:24 +0000 (14:19 +0000)]
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

25 years agosync
Bertrand Guiheneuf [Mon, 21 Jun 1999 16:46:57 +0000 (16:46 +0000)]
sync

25 years agoCommit of all Netherlands changes.
Bertrand Guiheneuf [Fri, 18 Jun 1999 20:32:14 +0000 (20:32 +0000)]
Commit of all Netherlands changes.
All mime stuff uses streams now, and it still works.

Bertrand

25 years agoanother nederlands sync
Bertrand Guiheneuf [Tue, 15 Jun 1999 11:50:48 +0000 (11:50 +0000)]
another nederlands sync

25 years agotmp sync. Does ot even compile
Bertrand Guiheneuf [Mon, 14 Jun 1999 12:50:58 +0000 (12:50 +0000)]
tmp sync. Does ot even compile

25 years agouse new stream code instead of raw file * stuff.
bertrand [Sun, 30 May 1999 21:56:09 +0000 (21:56 +0000)]
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.

25 years agonew class. Represents an abstract stream object.
bertrand [Sun, 30 May 1999 20:02:38 +0000 (20:02 +0000)]
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.

25 years agosync
Bertrand Guiheneuf [Sun, 30 May 1999 14:02:30 +0000 (14:02 +0000)]
sync

25 years agoremove leading and trailing spaces in recipient addresses.
Bertrand Guiheneuf [Sun, 30 May 1999 11:40:03 +0000 (11:40 +0000)]
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

25 years agoMore header parsing code.
bertrand [Fri, 28 May 1999 17:57:28 +0000 (17:57 +0000)]
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.

25 years agorewrite message obtained via parsing into a file. Actually, it works
Bertrand Guiheneuf [Thu, 27 May 1999 21:36:58 +0000 (21:36 +0000)]
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.

25 years agosync
Bertrand Guiheneuf [Thu, 27 May 1999 16:42:26 +0000 (16:42 +0000)]
sync

25 years agonew func. Parses message header zone and returns a Glist of all header
bertrand [Wed, 26 May 1999 21:51:48 +0000 (21:51 +0000)]
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.

25 years agorecipient list printing
Bertrand Guiheneuf [Thu, 20 May 1999 21:24:51 +0000 (21:24 +0000)]
recipient list printing

* camel/camel-mime-message.c (_write_to_file):
recipient list printing

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

25 years agosync
Bertrand Guiheneuf [Thu, 20 May 1999 16:37:00 +0000 (16:37 +0000)]
sync

25 years agotest if content exists before calling its write_to method.
bertrand [Wed, 19 May 1999 20:24:20 +0000 (20:24 +0000)]
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.

25 years agosync
Bertrand Guiheneuf [Wed, 19 May 1999 19:07:48 +0000 (19:07 +0000)]
sync

25 years agotests
Bertrand Guiheneuf [Tue, 18 May 1999 19:06:00 +0000 (19:06 +0000)]
tests

* tests/test1.c (main): tests

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

25 years agomessage number funcs.
bertrand [Tue, 18 May 1999 07:59:57 +0000 (07:59 +0000)]
message number funcs.

1999-05-18  bertrand  <Bertrand.Guiheneuf@inria.fr>

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

25 years agosync
Bertrand Guiheneuf [Mon, 17 May 1999 13:31:15 +0000 (13:31 +0000)]
sync

25 years agoflags handling methods
bertrand [Sat, 15 May 1999 10:32:30 +0000 (10:32 +0000)]
flags handling methods

1999-05-15  bertrand  <Bertrand.Guiheneuf@inria.fr>

* camel/camel-mime-message.c (*_flag):
flags handling methods

1999-05-14  bertrand  <Bertrand.Guiheneuf@inria.fr>

* camel/camel-mime-message.c (camel_mime_message_class_init):
added recipient handling class funcs.

25 years agoadded recipient handling class funcs.
Bertrand Guiheneuf [Fri, 14 May 1999 08:47:11 +0000 (08:47 +0000)]
added recipient handling class funcs.

* camel/camel-mime-message.c (camel_mime_message_class_init):
added recipient handling class funcs.

25 years agocreate recipients hash table (_remove_recipient): (_add_recipient):
Bertrand Guiheneuf [Thu, 13 May 1999 21:36:14 +0000 (21:36 +0000)]
create recipients hash table (_remove_recipient): (_add_recipient):

* camel/camel-mime-message.c (camel_mime_message_init):
create recipients hash table
(_remove_recipient):
(_add_recipient):
(_get_recipients):  new funcs.
Internal Recipients data structure is
a bit complicated though.

* camel/camel-mime-part.c (camel_mime_part_init):
create headers hash table

25 years agoa bunch of get/set header field method done. Does nothing yet though.
Bertrand Guiheneuf [Thu, 13 May 1999 17:04:54 +0000 (17:04 +0000)]
a bunch of get/set header field method done. Does nothing yet though.

* camel/camel-mime-message.h:
a bunch of get/set header field
method done. Does nothing yet though.

* camel/camel-mime-message.[ch] :
new file.

25 years agoMime message ...
Bertrand Guiheneuf [Wed, 12 May 1999 21:03:15 +0000 (21:03 +0000)]
Mime message ...

25 years agodisposition is now a full GMimeContentField object.
Bertrand Guiheneuf [Wed, 12 May 1999 19:07:54 +0000 (19:07 +0000)]
disposition is now a full GMimeContentField object.

* camel/camel-mime-part.h (struct ):
disposition is now a full GMimeContentField
object.

* camel/gmime-content-field.c: new file
handle "type/subtype ;parameter=value ; parameter=value ..."
BNF grammar elements
(gmime_content_field_write_to_file): new func

* camel/gmime-utils.c (gmime_write_header_pair_to_file):
namespace change

Some work on mime stuff. Mime part can save itself into a file.
This stuff is boring.

25 years agomime utils namespace change
Bertrand Guiheneuf [Wed, 12 May 1999 08:40:54 +0000 (08:40 +0000)]
mime utils namespace change

25 years agooverload wrapper class method. (_write_to_file): start to write some text
bertrand [Tue, 11 May 1999 21:20:28 +0000 (21:20 +0000)]
overload wrapper class method. (_write_to_file): start to write some text

1999-05-11  bertrand  <Bertrand.Guiheneuf@inria.fr>

* camel/camel-mime-part.c (_write_to_file):
overload wrapper class method.
(_write_to_file): start to write some text in
file.

25 years agotypo fix.
bertrand [Tue, 11 May 1999 17:18:41 +0000 (17:18 +0000)]
typo fix.

1999-05-11  bertrand  <Bertrand.Guiheneuf@inria.fr>

* camel/camel-store.c: typo fix.

25 years agostatic functions naming follows gnome coding style guide.
bertrand [Tue, 11 May 1999 17:09:43 +0000 (17:09 +0000)]
static functions naming follows gnome coding style guide.

1999-05-11  bertrand  <Bertrand.Guiheneuf@inria.fr>

* camel/camel-store.c:
* camel/camel-service.c:
* camel/camel-folder.c:
* camel/camel-data-wrapper.c:
* camel/camel-mime-part.c:
static functions naming follows gnome
coding style guide.

25 years agoimplemented public interfaces
Bertrand Guiheneuf [Tue, 11 May 1999 06:51:49 +0000 (06:51 +0000)]
implemented public interfaces

1999-05-11  Bertrand Guiheneuf  <Bertrand.Guiheneuf@inria.fr>

* camel/camel-mime-part.h: implemented public interfaces

25 years agoA bunch of new set/get func.
Bertrand Guiheneuf [Mon, 10 May 1999 16:15:19 +0000 (16:15 +0000)]
A bunch of new set/get func.

1999-05-10  Bertrand Guiheneuf  <Bertrand.Guiheneuf@inria.fr>

* camel/camel-mime-part.c (__camel_mime_part_get_header_lines):
(__camel_mime_part_set_header_lines):
(__camel_mime_part_get_content_languages):
(__camel_mime_part_set_content_languages):
(__camel_mime_part_get_encoding):
(__camel_mime_part_set_encoding):
(__camel_mime_part_get_content_MD5):
(__camel_mime_part_set_content_MD5):
(__camel_mime_part_get_content_id):
(__camel_mime_part_set_content_id):
A bunch of new set/get func.

* camel/gstring-util.c (g_string_list_free):
convenience function for string list
complete deallocation.

25 years agonew method
bertrand [Sun, 9 May 1999 21:03:54 +0000 (21:03 +0000)]
new method

1999-05-09  bertrand <Bertrand.Guiheneuf@inria.fr>

* camel/camel-mime-part.c (__camel_mime_part_add_header):
new method

* camel/camel-mime-part.h (struct CamelMimePart):
added core fields.

25 years agonew class. models a mime mail part.
bertrand [Sat, 8 May 1999 17:20:27 +0000 (17:20 +0000)]
new class. models a mime mail part.

1999-05-08  bertrand <Bertrand.Guiheneuf@inria.fr>

* camel/camel-mime-part.[ch]:
new class. models a mime mail part.

25 years agomethod to stream data content in a buffer.
bertrand [Sat, 8 May 1999 16:31:26 +0000 (16:31 +0000)]
method to stream data content in a buffer.

1999-05-08  bertrand <Bertrand.Guiheneuf@inria.fr>

* camel/camel-data-wrapper.c
(camel_data_wrapper_write_to_buffer): method to
stream data content in a buffer.
(camel_data_wrapper_write_to_file):
(camel_data_wrapper_construct_from_buffer):
(camel_data_wrapper_construct_from_file):
new methods.

Basic data_wrapper interface. Will have to add MIME content
type and bonobo object creation from content type.

Bertrand.

25 years agosync - Started work on messages classes.
Bertrand Guiheneuf [Sat, 8 May 1999 07:55:16 +0000 (07:55 +0000)]
sync - Started work on messages classes.

Bertrand.

25 years agoadmin cvs work
Bertrand Guiheneuf [Fri, 7 May 1999 08:00:21 +0000 (08:00 +0000)]
admin cvs work

25 years agonew method.
bertrand [Tue, 4 May 1999 18:49:20 +0000 (18:49 +0000)]
new method.

1999-05-04  bertrand <Bertrand.Guiheneuf@inria.fr>

* camel/camel-service.c (camel_service_get_url):
new method.

* devel-docs/camel/camel-sections.txt: added
function doc references

* camel/camel-folder.c (__camel_folder_close):
fixed indentation.
(camel_folder_expunge): new method.
(__camel_folder_close): used expunge flag

25 years agotypo fix
bertrand [Mon, 3 May 1999 15:38:31 +0000 (15:38 +0000)]
typo fix

1999-05-03  bertrand <Bertrand.Guiheneuf@inria.fr>

* camel/camel-folder.c (camel_folder_get_mode):
typo fix

* camel/camel-folder.c (__camel_folder_list_subfolders):
new func.

* some doc stuffs

Finishing storage layer, will start message classes soon.

Bertrand

25 years agonew methods
bertrand [Sat, 1 May 1999 14:04:18 +0000 (14:04 +0000)]
new methods

1999-05-01  bertrand <Bertrand.Guiheneuf@inria.fr>

* camel/camel-folder.c
(__camel_folder_get_mode):
(camel_folder_get_mode):
(camel_folder_get_parent_store):
(__camel_folder_get_parent_store):
(camel_folder_get_parent_folder):
(__camel_folder_get_parent_folder):
new methods

* camel/camel-service.c: put __ prefix before
private virtual funcs.

25 years agonew methods.
bertrand [Sat, 1 May 1999 08:23:26 +0000 (08:23 +0000)]
new methods.

1999-05-01  bertrand <Bertrand.Guiheneuf@inria.fr>

* camel/camel-folder.c (camel_folder_delete):
(camel_folder_delete_messages):
new methods.

25 years agosome more comments
bertrand [Sat, 1 May 1999 06:57:40 +0000 (06:57 +0000)]
some more comments

1999-05-01  bertrand <Bertrand.Guiheneuf@inria.fr>

* camel/url-util.c (g_url_new): some
more comments

1999-04-27  bertrand <Bertrand.Guiheneuf@inria.fr>

* camel/camel-folder.c (camel_folder_create):
new public function.

25 years agosync
Bertrand Guiheneuf [Sat, 1 May 1999 06:50:32 +0000 (06:50 +0000)]
sync

25 years agoinitialize folder object.
bertrand [Sun, 25 Apr 1999 21:58:27 +0000 (21:58 +0000)]
initialize folder object.

1999-04-25  bertrand <Bertrand.Guiheneuf@inria.fr>

* camel/camel-session.c (camel_session_get_store_from_provider):
initialize folder object.

* camel/camel-store.c (init): new method.
called by session object at instantiation time.

* camel/camel-store.h (struct _CamelStore):
new fields : session and url_name

25 years agonew method to set the default provider for a protocol.
bertrand [Sun, 25 Apr 1999 11:21:33 +0000 (11:21 +0000)]
new method to set the default provider for a protocol.

1999-04-25  bertrand <Bertrand.Guiheneuf@inria.fr>

* camel/camel-session.c (camel_session_set_provider):
new method to set the default provider for a protocol.
(camel_session_get_store_from_provider):
new method to instantiate a folder from a provider.

* camel/camel-provider.h: s/GString/gchar/g
+ typo fix.

25 years agostart session object
Bertrand Guiheneuf [Sun, 25 Apr 1999 09:55:14 +0000 (09:55 +0000)]
start session object

25 years agobasic provider structure. Have to write the code for dynamic loading.
bertrand [Sun, 25 Apr 1999 09:45:13 +0000 (09:45 +0000)]
basic provider structure. Have to write the code for dynamic loading.

1999-04-25  bertrand <Bertrand.Guiheneuf@inria.fr>

* camel/camel-provider.[ch]:
basic provider structure. Have to write the
code for dynamic loading.

25 years agos/new_g_url/g_url_new
bertrand [Sat, 24 Apr 1999 11:23:05 +0000 (11:23 +0000)]
s/new_g_url/g_url_new

1999-04-24  bertrand <Bertrand.Guiheneuf@inria.fr>

* camel/url-util.[ch]: s/new_g_url/g_url_new

25 years agoURL rewritten completely. Error handling not implemented in public
bertrand [Sat, 24 Apr 1999 11:11:07 +0000 (11:11 +0000)]
URL rewritten completely. Error handling not implemented in public

1999-04-24  bertrand <Bertrand.Guiheneuf@inria.fr>

* camel/url-util.c (new_g_url): URL
rewritten completely. Error handling not
implemented in public functions.
But URL scan works pretty well :)))

25 years agoI needed the url functions to use GString, and I wanted a more general
bertrand [Fri, 23 Apr 1999 23:16:14 +0000 (23:16 +0000)]
I needed the url functions to use GString, and I wanted a more general

1999-04-24 bertrand <Bertrand.Guiheneuf@inria.fr>

* camel/url-util.[ch]: I needed the url
functions to use GString, and I wanted a more
general scheme so I finally started rewriting
the whole thing from scratch.
No more code from gzilla :(

25 years agoUtility functions to parse URLs. Stolen shamelessly from gzilla
bertrand [Fri, 23 Apr 1999 15:58:42 +0000 (15:58 +0000)]
Utility functions to parse URLs. Stolen shamelessly from gzilla

1999-04-23  bertrand <Bertrand.Guiheneuf@inria.fr>

* camel/url-util.[ch]:
Utility functions to parse URLs.
Stolen shamelessly from gzilla (www.gzilla.com)
written by Raph Levien <raph@acm.org>

* camel/Makefile.am: added url-util.[ch]
compilation.

25 years agoremoved devel-docs until I come up with a correct Makefile.am
bertrand [Fri, 23 Apr 1999 13:04:34 +0000 (13:04 +0000)]
removed devel-docs until I come up with a correct Makefile.am

1999-04-23  bertrand <Bertrand.Guiheneuf@inria.fr>

* Makefile.am (SUBDIRS): removed devel-docs
until I come up with a correct Makefile.am

* camel/camel-store.h:
* camel/camel-folder.h:
correct declarations of structs