* 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-07-31 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/gmime-utils.c (gmime_read_line_from_stream):
Don't return crlf at end of line.
1999-07-30 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/gmime-utils.c (gmime_read_line_from_stream):
new function: reads a line from a stream.
should be in streams utils maybe.
1999-07-29 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-mime-part.c (_construct_from_stream):
Uses data wrapper repository to find what data wrapper
to use to construct the content from a stream. When
no object is registered for the mime type found in
content type field a CamelSimpleDataWrapper is
used.
* camel/camel-mime-part.c (_get_content_type):
(camel_mime_part_get_content_type): returns
a pointer on the content_type field instead
of the gchar * mime "type/subtype".
1999-07-28 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/data-wrapper-repository.c
* camel/data-wrapper-repository.h
New files. Handles mime type <-> camel object
(for example "multipart" <-> CamelMultipart
* tests/tesst3.c: test data repository thing.
1999-07-26 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-multipart.c (_write_to_stream):
implemented output of multipart.
* tests/test1.c (main): testing content objects operations.
1999-07-25 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-mime-part.c (camel_mime_part_set_text):
new util function to set a mime part content to be
a text string.
* camel/camel-simple-data-wrapper.c (camel_simple_data_wrapper_set_buffer_from_text):
new util func.
(camel_simple_data_wrapper_new): new func.
* camel/camel-multipart.c (_write_to_stream):
implemented output of multiparts.
1999-07-24 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/gmime-content-field.c (gmime_content_field_get_parameter):
New function. Returns the value associated to a
mime parameter.
1999-07-22 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-multipart.h:
* camel/camel-multipart.c:
New class. Models multipart mime objects.
* camel/camel-mime-body-part.h:
* camel/camel-mime-body-part.c:
New class. Body part is a mime part contained in
a multipart object.
1999-07-21 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-log.h:
implemented hard log level stuff.
* came/*.c use "CAMEL_LOG_*" instead of "CAMEL_LOG (*"
in order to allow hard level switch.
* tests/test1.c:
* tests/test2.c:
updated to use gchar instead of GString. Tests passed.
1999-07-19 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-stream.c:
* camel/camel-stream.h:
"const"-antified
* camel/camel-simple-data-wrapper.c: (_construct_from_stream)
do not use any limit when constructing the object from a stream
* camel/camel-stream-fs.c:
* camel/camel-stream-fs.h:
* camel/camel-mime-message.c:
* camel/camel-mime-message.h:
* camel/camel-session.c:
* camel/camel-session.h:
* camel/camel-service.c:
* camel/camel-service.h:
* camel/camel-store.c:
* camel/camel-store.h:
* camel/camel-folder.c:
* camel/camel-folder.h:
* camel/gmime-utils.c:
* camel/gmime-utils.h:
GString -> gchar
constantified what had to be.
* camel/string-utils.c:
* camel/string-utils.h:
New files. Meant to replace gstring-util for gchar *
1999-07-16 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/gmime-content-field.c (gmime_content_field_construct_from_string):
GString -> gchar
use const to indicate copied parameter.
1999-07-15 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-simple-data-wrapper.c:
* camel/camel-simple-data-wrapper.h:
Gstring -> gchar
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=1054
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-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-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 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-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 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-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
* 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-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
* 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
* 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-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-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
* 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.
svn path=/trunk/; revision=923
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.
svn path=/trunk/; revision=904
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.
svn path=/trunk/; revision=893
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.
svn path=/trunk/; revision=878
1999-04-25 bertrand <Bertrand.Guiheneuf@inria.fr>
* camel/camel-provider.[ch]:
basic provider structure. Have to write the
code for dynamic loading.
svn path=/trunk/; revision=876
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 :)))
svn path=/trunk/; revision=874
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 :(
svn path=/trunk/; revision=872