gmime r1338 - in trunk: . docs/reference examples gmime mono tools



Author: fejj
Date: Fri Jun  6 03:11:48 2008
New Revision: 1338
URL: http://svn.gnome.org/viewvc/gmime?rev=1338&view=rev

Log:
2008-06-05  Jeffrey Stedfast  <fejj novell com>

	* gmime/gmime-message.c (g_mime_message_get_date_as_string):
	Renamed from g_mime_message_get_date_string().
	(g_mime_message_set_date_as_string): New function to provide
	another means of setting a date (might help with some bindings
	where time_t and tz_offsets are more difficult to work with).



Modified:
   trunk/ChangeLog
   trunk/docs/reference/gmime-sections.txt
   trunk/docs/reference/gmime.hierarchy
   trunk/examples/imap-example.c
   trunk/gmime/gmime-filter.h
   trunk/gmime/gmime-message-part.h
   trunk/gmime/gmime-message-partial.h
   trunk/gmime/gmime-message.c
   trunk/gmime/gmime-message.h
   trunk/gmime/gmime-multipart-encrypted.c
   trunk/gmime/gmime-multipart-encrypted.h
   trunk/gmime/gmime-multipart-signed.h
   trunk/gmime/gmime-multipart.c
   trunk/gmime/gmime-multipart.h
   trunk/gmime/gmime-object.h
   trunk/gmime/gmime-part.h
   trunk/gmime/gmime-stream-buffer.h
   trunk/gmime/gmime-stream-cat.h
   trunk/gmime/gmime-stream-file.h
   trunk/gmime/gmime-stream-filter.h
   trunk/gmime/gmime-stream-fs.h
   trunk/gmime/gmime-stream-mem.h
   trunk/gmime/gmime-stream-mmap.h
   trunk/gmime/gmime-stream-null.h
   trunk/gmime/gmime-stream.h
   trunk/mono/gmime-api.raw
   trunk/tools/gmime-port-2-2-to-2-4.sh

Modified: trunk/docs/reference/gmime-sections.txt
==============================================================================
--- trunk/docs/reference/gmime-sections.txt	(original)
+++ trunk/docs/reference/gmime-sections.txt	Fri Jun  6 03:11:48 2008
@@ -752,6 +752,7 @@
 g_mime_multipart_encrypted_new
 g_mime_multipart_encrypted_encrypt
 g_mime_multipart_encrypted_decrypt
+g_mime_multipart_encrypted_get_signature_validity
 
 <SUBSECTION Private>
 g_mime_multipart_encrypted_get_type
@@ -805,7 +806,8 @@
 g_mime_message_get_subject
 g_mime_message_set_date
 g_mime_message_get_date
-g_mime_message_get_date_string
+g_mime_message_set_date_as_string
+g_mime_message_get_date_as_string
 g_mime_message_set_message_id
 g_mime_message_get_message_id
 g_mime_message_set_mime_part

Modified: trunk/docs/reference/gmime.hierarchy
==============================================================================
--- trunk/docs/reference/gmime.hierarchy	(original)
+++ trunk/docs/reference/gmime.hierarchy	Fri Jun  6 03:11:48 2008
@@ -36,4 +36,3 @@
     GMimeStreamMmap
     GMimeStreamNull
 GInterface
-  GTypePlugin

Modified: trunk/examples/imap-example.c
==============================================================================
--- trunk/examples/imap-example.c	(original)
+++ trunk/examples/imap-example.c	Fri Jun  6 03:11:48 2008
@@ -123,7 +123,7 @@
 		/* print envelope */
 		fputc ('(', fp);
 		
-		nstring = g_mime_message_get_date_string (message);
+		nstring = g_mime_message_get_date_as_string (message);
 		fprintf (fp, "\"%s\" ", nstring);
 		g_free (nstring);
 		

Modified: trunk/gmime/gmime-filter.h
==============================================================================
--- trunk/gmime/gmime-filter.h	(original)
+++ trunk/gmime/gmime-filter.h	Fri Jun  6 03:11:48 2008
@@ -38,11 +38,27 @@
 typedef struct _GMimeFilter GMimeFilter;
 typedef struct _GMimeFilterClass GMimeFilterClass;
 
+/**
+ * GMimeFilter:
+ * @parent_object: parent #GObject
+ * @priv: private state data
+ * @outreal: real malloc'd buffer
+ * @outbuf: first writable position allowed (outreal + outpre)
+ * @outptr: current writale position
+ * @outsize: current bytes in @outbuf
+ * @outpre: current prespace of @outbuf
+ * @backbuf: backup buffer
+ * @backsize: backup buffer size
+ * @backlen: number of bytes backed-up in @backbuf
+ *
+ * Base class for filters used by #GMimeStreamFilter.
+ **/
 struct _GMimeFilter {
 	GObject parent_object;
 	
 	struct _GMimeFilterPrivate *priv;
 	
+	/* <protected> */
 	char *outreal;		/* real malloc'd buffer */
 	char *outbuf;		/* first 'writable' position allowed (outreal + outpre) */
 	char *outptr;

Modified: trunk/gmime/gmime-message-part.h
==============================================================================
--- trunk/gmime/gmime-message-part.h	(original)
+++ trunk/gmime/gmime-message-part.h	Fri Jun  6 03:11:48 2008
@@ -37,6 +37,13 @@
 typedef struct _GMimeMessagePart GMimeMessagePart;
 typedef struct _GMimeMessagePartClass GMimeMessagePartClass;
 
+/**
+ * GMimeMessagePart:
+ * @parent_object: parent #GMimeObject
+ * @message: child #GMimeMessage
+ *
+ * A message/rfc822 or message/news MIME part.
+ **/
 struct _GMimeMessagePart {
 	GMimeObject parent_object;
 	

Modified: trunk/gmime/gmime-message-partial.h
==============================================================================
--- trunk/gmime/gmime-message-partial.h	(original)
+++ trunk/gmime/gmime-message-partial.h	Fri Jun  6 03:11:48 2008
@@ -39,12 +39,21 @@
 typedef struct _GMimeMessagePartial GMimeMessagePartial;
 typedef struct _GMimeMessagePartialClass GMimeMessagePartialClass;
 
+/**
+ * GMimeMessagePartial:
+ * @parent_object: parent #GMimePart object
+ * @number: the part number
+ * @total: the total number of message/partials that make up the whole message/rfc822
+ * @id: message/partial id
+ *
+ * A message/partial MIME part.
+ **/
 struct _GMimeMessagePartial {
 	GMimePart parent_object;
 	
-	char *id;
 	int number;
 	int total;
+	char *id;
 };
 
 struct _GMimeMessagePartialClass {

Modified: trunk/gmime/gmime-message.c
==============================================================================
--- trunk/gmime/gmime-message.c	(original)
+++ trunk/gmime/gmime-message.c	Fri Jun  6 03:11:48 2008
@@ -137,7 +137,7 @@
 	message->recipients = g_hash_table_new (g_str_hash, g_str_equal);
 	message->subject = NULL;
 	message->date = 0;
-	message->gmt_offset = 0;
+	message->tz_offset = 0;
 	message->message_id = NULL;
 	message->mime_part = NULL;
 	
@@ -656,7 +656,7 @@
 		if (value) {
 			date = g_mime_utils_header_decode_date (value, &offset);
 			message->date = date;
-			message->gmt_offset = offset;
+			message->tz_offset = offset;
 		}
 		break;
 	case HEADER_MESSAGE_ID:
@@ -808,7 +808,7 @@
 		break;
 	case HEADER_DATE:
 		message->date = 0;
-		message->gmt_offset = 0;
+		message->tz_offset = 0;
 		break;
 	case HEADER_MESSAGE_ID:
 		g_free (message->message_id);
@@ -1212,68 +1212,90 @@
 /**
  * g_mime_message_set_date:
  * @message: MIME Message
- * @date: Sent-date (ex: gotten from time (NULL))
- * @gmt_offset: GMT date offset (in +/- hours)
+ * @date: a date to be used in the Date header
+ * @tz_offset: timezone offset (in +/- hours)
  * 
- * Sets the sent-date on a MIME Message.
+ * Sets the Date header on a MIME Message.
  **/
 void
-g_mime_message_set_date (GMimeMessage *message, time_t date, int gmt_offset)
+g_mime_message_set_date (GMimeMessage *message, time_t date, int tz_offset)
 {
-	char *date_str;
+	char *str;
 	
 	g_return_if_fail (GMIME_IS_MESSAGE (message));
 	
 	message->date = date;
-	message->gmt_offset = gmt_offset;
+	message->tz_offset = tz_offset;
 	
-	date_str = g_mime_message_get_date_string (message);
-	g_mime_object_set_header (GMIME_OBJECT (message), "Date", date_str);
-	g_free (date_str);
+	str = g_mime_utils_header_format_date (date, tz_offset);
+	g_mime_object_set_header (GMIME_OBJECT (message), "Date", str);
+	g_free (str);
 }
 
 
 /**
  * g_mime_message_get_date:
  * @message: MIME Message
- * @date: Sent-date
- * @gmt_offset: GMT date offset (in +/- hours)
+ * @date: pointer to a date in time_t
+ * @tz_offset: pointer to timezone offset (in +/- hours)
  * 
- * Stores the date in time_t format in #date and the GMT offset in
- * @gmt_offset.
+ * Stores the date in time_t format in @date. If @tz_offset is
+ * non-%NULL, then the timezone offset in will be stored in
+ * @tz_offset.
  **/
 void
-g_mime_message_get_date (GMimeMessage *message, time_t *date, int *gmt_offset)
+g_mime_message_get_date (GMimeMessage *message, time_t *date, int *tz_offset)
 {
 	g_return_if_fail (GMIME_IS_MESSAGE (message));
 	g_return_if_fail (date != NULL);
 	
 	*date = message->date;
 	
-	if (gmt_offset)
-		*gmt_offset = message->gmt_offset;
+	if (tz_offset)
+		*tz_offset = message->tz_offset;
 }
 
 
 /**
- * g_mime_message_get_date_string:
+ * g_mime_message_get_date_as_string:
  * @message: MIME Message
  *
- * Gets the message's sent date in string format.
+ * Gets the message's sent-date in string format.
  * 
- * Returns: the sent-date of the MIME Message in string format.
+ * Returns: a newly allocated string containing the Date header value.
  **/
 char *
-g_mime_message_get_date_string (GMimeMessage *message)
+g_mime_message_get_date_as_string (GMimeMessage *message)
 {
-	char *date_str;
-	
 	g_return_val_if_fail (GMIME_IS_MESSAGE (message), NULL);
 	
-	date_str = g_mime_utils_header_format_date (message->date,
-						    message->gmt_offset);
+	return g_mime_utils_header_format_date (message->date, message->tz_offset);
+}
+
+
+/**
+ * g_mime_message_set_date_as_string:
+ * @message: MIME Message
+ * @str: a date string
+ *
+ * Sets the sent-date of the message.
+ **/
+void
+g_mime_message_set_date_as_string (GMimeMessage *message, const char *str)
+{
+	int tz_offset;
+	time_t date;
+	char *buf;
+	
+	g_return_if_fail (GMIME_IS_MESSAGE (message));
+	
+	date = g_mime_utils_header_decode_date (str, &tz_offset);
+	message->tz_offset = tz_offset;
+	message->date = date;
 	
-	return date_str;
+	buf = g_mime_utils_header_format_date (date, tz_offset);
+	g_mime_object_set_header (GMIME_OBJECT (message), "Date", buf);
+	g_free (buf);
 }
 
 

Modified: trunk/gmime/gmime-message.h
==============================================================================
--- trunk/gmime/gmime-message.h	(original)
+++ trunk/gmime/gmime-message.h	Fri Jun  6 03:11:48 2008
@@ -42,22 +42,33 @@
 typedef struct _GMimeMessage GMimeMessage;
 typedef struct _GMimeMessageClass GMimeMessageClass;
 
+
+/**
+ * GMimeMessage:
+ * @parent_object: parent #GMimeObject
+ * @mime_part: toplevel MIME part
+ * @recipients: hash table of recipients using recipient header name as the hash key
+ * @message_id: Message-Id string
+ * @reply_to: Reply-To string
+ * @subject: Subject string
+ * @from: From string
+ * @date: Date value
+ * @tz_offset: timezone offset
+ *
+ * A MIME Message object.
+ **/
 struct _GMimeMessage {
 	GMimeObject parent_object;
 	
-	char *from;
-	char *reply_to;
-	
+	GMimeObject *mime_part;
 	GHashTable *recipients;
-	
+	char *message_id;
+	char *reply_to;
 	char *subject;
+	char *from;
 	
 	time_t date;
-	int gmt_offset;     /* GMT offset */
-	
-	char *message_id;
-	
-	GMimeObject *mime_part;
+	int tz_offset;
 };
 
 struct _GMimeMessageClass {
@@ -109,9 +120,10 @@
 void g_mime_message_set_subject (GMimeMessage *message, const char *subject);
 const char *g_mime_message_get_subject (GMimeMessage *message);
 
-void g_mime_message_set_date (GMimeMessage *message, time_t date, int gmt_offset);
-void g_mime_message_get_date (GMimeMessage *message, time_t *date, int *gmt_offset);
-char *g_mime_message_get_date_string (GMimeMessage *message);
+void g_mime_message_set_date (GMimeMessage *message, time_t date, int tz_offset);
+void g_mime_message_get_date (GMimeMessage *message, time_t *date, int *tz_offset);
+void g_mime_message_set_date_as_string (GMimeMessage *message, const char *str);
+char *g_mime_message_get_date_as_string (GMimeMessage *message);
 
 void g_mime_message_set_message_id (GMimeMessage *message, const char *message_id);
 const char *g_mime_message_get_message_id (GMimeMessage *message);

Modified: trunk/gmime/gmime-multipart-encrypted.c
==============================================================================
--- trunk/gmime/gmime-multipart-encrypted.c	(original)
+++ trunk/gmime/gmime-multipart-encrypted.c	Fri Jun  6 03:11:48 2008
@@ -322,7 +322,6 @@
  * g_mime_multipart_encrypted_decrypt:
  * @mpe: multipart/encrypted object
  * @ctx: decryption cipher context
- * @validity: a #GMimeSignatureValidity
  * @err: a #GError
  *
  * Attempts to decrypt the encrypted MIME part contained within the

Modified: trunk/gmime/gmime-multipart-encrypted.h
==============================================================================
--- trunk/gmime/gmime-multipart-encrypted.h	(original)
+++ trunk/gmime/gmime-multipart-encrypted.h	Fri Jun  6 03:11:48 2008
@@ -42,6 +42,16 @@
 	GMIME_MULTIPART_ENCRYPTED_CONTENT
 };
 
+
+/**
+ * GMimeMultipartEncrypted:
+ * @parent_object: parent #GMimeMultipart
+ * @validity: a #GMimeSignatureValidity if the part has been decrypted or %NULL otherwise
+ * @decrypted: cached decrypted MIME part
+ * @protocol: encryption protocol string
+ *
+ * A multipart/encrypted MIME part.
+ **/
 struct _GMimeMultipartEncrypted {
 	GMimeMultipart parent_object;
 	

Modified: trunk/gmime/gmime-multipart-signed.h
==============================================================================
--- trunk/gmime/gmime-multipart-signed.h	(original)
+++ trunk/gmime/gmime-multipart-signed.h	Fri Jun  6 03:11:48 2008
@@ -42,6 +42,15 @@
 	GMIME_MULTIPART_SIGNED_SIGNATURE
 };
 
+
+/**
+ * GMimeMultipartSigned:
+ * @parent_object: parent #GMimeMultipart
+ * @protocol: signature protocol string
+ * @micalg: signature hash
+ *
+ * A multipart/signed MIME part.
+ **/
 struct _GMimeMultipartSigned {
 	GMimeMultipart parent_object;
 	

Modified: trunk/gmime/gmime-multipart.c
==============================================================================
--- trunk/gmime/gmime-multipart.c	(original)
+++ trunk/gmime/gmime-multipart.c	Fri Jun  6 03:11:48 2008
@@ -47,14 +47,6 @@
  **/
 
 
-struct _GMimeMultipartPrivate {
-	GPtrArray *children;
-	char *boundary;
-	char *preface;
-	char *postface;
-};
-
-
 /* GObject class methods */
 static void g_mime_multipart_class_init (GMimeMultipartClass *klass);
 static void g_mime_multipart_init (GMimeMultipart *multipart, GMimeMultipartClass *klass);
@@ -141,29 +133,26 @@
 static void
 g_mime_multipart_init (GMimeMultipart *multipart, GMimeMultipartClass *klass)
 {
-	multipart->priv = g_new (struct _GMimeMultipartPrivate, 1);
-	multipart->priv->children = g_ptr_array_new ();
-	multipart->priv->boundary = NULL;
-	multipart->priv->preface = NULL;
-	multipart->priv->postface = NULL;
+	multipart->children = g_ptr_array_new ();
+	multipart->boundary = NULL;
+	multipart->preface = NULL;
+	multipart->postface = NULL;
 }
 
 static void
 g_mime_multipart_finalize (GObject *object)
 {
 	GMimeMultipart *multipart = (GMimeMultipart *) object;
-	struct _GMimeMultipartPrivate *priv = multipart->priv;
 	guint i;
 	
-	g_free (priv->boundary);
-	g_free (priv->preface);
-	g_free (priv->postface);
+	g_free (multipart->boundary);
+	g_free (multipart->preface);
+	g_free (multipart->postface);
 	
-	for (i = 0; i < priv->children->len; i++)
-		g_object_unref (priv->children->pdata[i]);
+	for (i = 0; i < multipart->children->len; i++)
+		g_object_unref (multipart->children->pdata[i]);
 	
-	g_ptr_array_free (priv->children, TRUE);
-	g_free (priv);
+	g_ptr_array_free (multipart->children, TRUE);
 	
 	G_OBJECT_CLASS (parent_class)->finalize (object);
 }
@@ -228,8 +217,8 @@
 	const char *boundary;
 	
 	boundary = g_mime_content_type_get_parameter (content_type, "boundary");
-	g_free (multipart->priv->boundary);
-	multipart->priv->boundary = g_strdup (boundary);
+	g_free (multipart->boundary);
+	multipart->boundary = g_strdup (boundary);
 	
 	GMIME_OBJECT_CLASS (parent_class)->set_content_type (object, content_type);
 }
@@ -244,7 +233,6 @@
 multipart_write_to_stream (GMimeObject *object, GMimeStream *stream)
 {
 	GMimeMultipart *multipart = (GMimeMultipart *) object;
-	struct _GMimeMultipartPrivate *priv = multipart->priv;
 	ssize_t nwritten, total = 0;
 	GMimeObject *part;
 	guint i;
@@ -253,7 +241,7 @@
 	 * header (in which case it should already be set... or if
 	 * not, then it's a broken multipart and so we don't want to
 	 * alter it or we'll completely break the output) */
-	if (!priv->boundary && !g_mime_header_list_has_raw (object->headers))
+	if (!multipart->boundary && !g_mime_header_list_has_raw (object->headers))
 		g_mime_multipart_set_boundary (multipart, NULL);
 	
 	/* write the content headers */
@@ -263,24 +251,24 @@
 	total += nwritten;
 	
 	/* write the preface */
-	if (priv->preface) {
+	if (multipart->preface) {
 		/* terminate the headers */
 		if (g_mime_stream_write (stream, "\n", 1) == -1)
 			return -1;
 		
 		total++;
 		
-		if ((nwritten = g_mime_stream_write_string (stream, priv->preface)) == -1)
+		if ((nwritten = g_mime_stream_write_string (stream, multipart->preface)) == -1)
 			return -1;
 		
 		total += nwritten;
 	}
 	
-	for (i = 0; i < priv->children->len; i++) {
-		part = priv->children->pdata[i];
+	for (i = 0; i < multipart->children->len; i++) {
+		part = multipart->children->pdata[i];
 		
 		/* write the boundary */
-		if ((nwritten = g_mime_stream_printf (stream, "\n--%s\n", priv->boundary)) == -1)
+		if ((nwritten = g_mime_stream_printf (stream, "\n--%s\n", multipart->boundary)) == -1)
 			return -1;
 		
 		total += nwritten;
@@ -293,16 +281,16 @@
 	}
 	
 	/* write the end-boundary (but only if a boundary is set) */
-	if (priv->boundary) {
-		if ((nwritten = g_mime_stream_printf (stream, "\n--%s--\n", priv->boundary)) == -1)
+	if (multipart->boundary) {
+		if ((nwritten = g_mime_stream_printf (stream, "\n--%s--\n", multipart->boundary)) == -1)
 			return -1;
 		
 		total += nwritten;
 	}
 	
 	/* write the postface */
-	if (priv->postface) {
-		if ((nwritten = g_mime_stream_write_string (stream, priv->postface)) == -1)
+	if (multipart->postface) {
+		if ((nwritten = g_mime_stream_write_string (stream, multipart->postface)) == -1)
 			return -1;
 		
 		total += nwritten;
@@ -373,8 +361,8 @@
 {
 	g_return_if_fail (GMIME_IS_MULTIPART (multipart));
 	
-	g_free (multipart->priv->preface);
-	multipart->priv->preface = g_strdup (preface);
+	g_free (multipart->preface);
+	multipart->preface = g_strdup (preface);
 }
 
 
@@ -391,7 +379,7 @@
 {
 	g_return_val_if_fail (GMIME_IS_MULTIPART (multipart), NULL);
 	
-	return multipart->priv->preface;
+	return multipart->preface;
 }
 
 
@@ -407,8 +395,8 @@
 {
 	g_return_if_fail (GMIME_IS_MULTIPART (multipart));
 	
-	g_free (multipart->priv->postface);
-	multipart->priv->postface = g_strdup (postface);
+	g_free (multipart->postface);
+	multipart->postface = g_strdup (postface);
 }
 
 
@@ -425,18 +413,16 @@
 {
 	g_return_val_if_fail (GMIME_IS_MULTIPART (multipart), NULL);
 	
-	return multipart->priv->postface;
+	return multipart->postface;
 }
 
 
 static void
 multipart_add_part (GMimeMultipart *multipart, GMimeObject *part)
 {
-	struct _GMimeMultipartPrivate *priv = multipart->priv;
-	
 	g_object_ref (part);
 	
-	g_ptr_array_add (priv->children, part);
+	g_ptr_array_add (multipart->children, part);
 }
 
 
@@ -480,11 +466,9 @@
 static void
 multipart_add_part_at (GMimeMultipart *multipart, GMimeObject *part, int index)
 {
-	struct _GMimeMultipartPrivate *priv = multipart->priv;
-	
 	g_object_ref (part);
 	
-	ptr_array_insert (priv->children, index, part);
+	ptr_array_insert (multipart->children, index, part);
 }
 
 
@@ -510,9 +494,7 @@
 static gboolean
 multipart_remove_part (GMimeMultipart *multipart, GMimeObject *part)
 {
-	struct _GMimeMultipartPrivate *priv = multipart->priv;
-	
-	if (!g_ptr_array_remove (priv->children, part))
+	if (!g_ptr_array_remove (multipart->children, part))
 		return FALSE;
 	
 	g_object_unref (part);
@@ -543,15 +525,14 @@
 static GMimeObject *
 multipart_remove_part_at (GMimeMultipart *multipart, int index)
 {
-	struct _GMimeMultipartPrivate *priv = multipart->priv;
 	GMimeObject *part;
 	
-	if (index >= priv->children->len)
+	if (index >= multipart->children->len)
 		return NULL;
 	
-	part = priv->children->pdata[index];
+	part = multipart->children->pdata[index];
 	
-	g_ptr_array_remove_index (priv->children, index);
+	g_ptr_array_remove_index (multipart->children, index);
 	
 	return part;
 }
@@ -579,13 +560,12 @@
 static GMimeObject *
 multipart_get_part (GMimeMultipart *multipart, int index)
 {
-	struct _GMimeMultipartPrivate *priv = multipart->priv;
 	GMimeObject *part;
 	
-	if (index >= priv->children->len)
+	if (index >= multipart->children->len)
 		return NULL;
 	
-	part = priv->children->pdata[index];
+	part = multipart->children->pdata[index];
 	g_object_ref (part);
 	
 	return part;
@@ -614,7 +594,7 @@
 static int
 multipart_get_number (GMimeMultipart *multipart)
 {
-	return multipart->priv->children->len;
+	return multipart->children->len;
 }
 
 
@@ -664,7 +644,6 @@
 static void
 multipart_set_boundary (GMimeMultipart *multipart, const char *boundary)
 {
-	struct _GMimeMultipartPrivate *priv = multipart->priv;
 	char bbuf[35];
 	
 	if (!boundary) {
@@ -683,8 +662,8 @@
 		boundary = bbuf;
 	}
 	
-	g_free (priv->boundary);
-	priv->boundary = g_strdup (boundary);
+	g_free (multipart->boundary);
+	multipart->boundary = g_strdup (boundary);
 	
 	g_mime_object_set_content_type_parameter (GMIME_OBJECT (multipart), "boundary", boundary);
 }
@@ -710,12 +689,10 @@
 static const char *
 multipart_get_boundary (GMimeMultipart *multipart)
 {
-	struct _GMimeMultipartPrivate *priv = multipart->priv;
-	
-	if (!priv->boundary)
+	if (!multipart->boundary)
 		multipart_set_boundary (multipart, NULL);
 	
-	return priv->boundary;
+	return multipart->boundary;
 }
 
 
@@ -749,16 +726,14 @@
 void
 g_mime_multipart_foreach (GMimeMultipart *multipart, GMimePartFunc callback, gpointer user_data)
 {
-	struct _GMimeMultipartPrivate *priv;
 	GMimeObject *part;
 	guint i;
 	
 	g_return_if_fail (GMIME_IS_MULTIPART (multipart));
 	g_return_if_fail (callback != NULL);
 	
-	priv = multipart->priv;
-	for (i = 0; i < priv->children->len; i++) {
-		part = priv->children->pdata[i];
+	for (i = 0; i < multipart->children->len; i++) {
+		part = multipart->children->pdata[i];
 		callback (part, user_data);
 	}
 }
@@ -779,7 +754,6 @@
 g_mime_multipart_get_subpart_from_content_id (GMimeMultipart *multipart, const char *content_id)
 {
 	GMimeObject *object = (GMimeObject *) multipart;
-	struct _GMimeMultipartPrivate *priv;
 	GMimeObject *subpart, *part;
 	GMimeMultipart *mpart;
 	guint i;
@@ -787,15 +761,13 @@
 	g_return_val_if_fail (GMIME_IS_MULTIPART (multipart), NULL);
 	g_return_val_if_fail (content_id != NULL, NULL);
 	
-	priv = multipart->priv;
-	
 	if (object->content_id && !strcmp (object->content_id, content_id)) {
 		g_object_ref (object);
 		return object;
 	}
 	
-	for (i = 0; i < priv->children->len; i++) {
-		subpart = priv->children->pdata[i];
+	for (i = 0; i < multipart->children->len; i++) {
+		subpart = multipart->children->pdata[i];
 		
 		if (GMIME_IS_MULTIPART (subpart)) {
 			mpart = (GMimeMultipart *) subpart;

Modified: trunk/gmime/gmime-multipart.h
==============================================================================
--- trunk/gmime/gmime-multipart.h	(original)
+++ trunk/gmime/gmime-multipart.h	Fri Jun  6 03:11:48 2008
@@ -38,10 +38,23 @@
 typedef struct _GMimeMultipart GMimeMultipart;
 typedef struct _GMimeMultipartClass GMimeMultipartClass;
 
+/**
+ * GMimeMultipart:
+ * @parent_object: parent #GMimeObject
+ * @children: array of MIME sub-parts
+ * @boundary: MIME boundary
+ * @preface: multipart preface
+ * @postface: multipart postface
+ *
+ * A base MIME multipart object.
+ **/
 struct _GMimeMultipart {
 	GMimeObject parent_object;
 	
-	struct _GMimeMultipartPrivate *priv;
+	GPtrArray *children;
+	char *boundary;
+	char *preface;
+	char *postface;
 };
 
 struct _GMimeMultipartClass {

Modified: trunk/gmime/gmime-object.h
==============================================================================
--- trunk/gmime/gmime-object.h	(original)
+++ trunk/gmime/gmime-object.h	Fri Jun  6 03:11:48 2008
@@ -42,6 +42,16 @@
 typedef struct _GMimeObject GMimeObject;
 typedef struct _GMimeObjectClass GMimeObjectClass;
 
+/**
+ * GMimeObject:
+ * @parent_object: parent #GObject
+ * @disposition: a #GMimeContentDisposition
+ * @content_type: a #GMimeContentType
+ * @content_id: a Content-Id
+ * @headers: a #GMimeHeaderList
+ *
+ * Base class for all MIME parts.
+ **/
 struct _GMimeObject {
 	GObject parent_object;
 	

Modified: trunk/gmime/gmime-part.h
==============================================================================
--- trunk/gmime/gmime-part.h	(original)
+++ trunk/gmime/gmime-part.h	Fri Jun  6 03:11:48 2008
@@ -41,6 +41,17 @@
 typedef struct _GMimePart GMimePart;
 typedef struct _GMimePartClass GMimePartClass;
 
+/**
+ * GMimePart:
+ * @parent_object: parent #GMimeObject
+ * @encoding: a #GMimeContentEncoding
+ * @content_description: Content-Description string
+ * @content_location: Content-Location string
+ * @content_md5: Content-MD5 string
+ * @content: a #GMimeDataWrapper representing the MIME part's content
+ *
+ * Base leaf-node MIME part object.
+ **/
 struct _GMimePart {
 	GMimeObject parent_object;
 	

Modified: trunk/gmime/gmime-stream-buffer.h
==============================================================================
--- trunk/gmime/gmime-stream-buffer.h	(original)
+++ trunk/gmime/gmime-stream-buffer.h	Fri Jun  6 03:11:48 2008
@@ -52,17 +52,28 @@
 } GMimeStreamBufferMode;
 
 
+/**
+ * GMimeStreamBuffer:
+ * @parent_object: parent #GMimeStream
+ * @mode: buffering mode
+ * @source: source stream
+ * @buffer: internal buffer
+ * @bufptr: current position in the buffer
+ * @bufend: end of the buffer
+ * @buflen: buffer length
+ *
+ * A buffered stream wrapper around any #GMimeStream object.
+ **/
 struct _GMimeStreamBuffer {
 	GMimeStream parent_object;
 	
+	GMimeStreamBufferMode mode;
 	GMimeStream *source;
 	
 	char *buffer;
 	char *bufptr;
 	char *bufend;
 	size_t buflen;
-	
-	GMimeStreamBufferMode mode;
 };
 
 struct _GMimeStreamBufferClass {

Modified: trunk/gmime/gmime-stream-cat.h
==============================================================================
--- trunk/gmime/gmime-stream-cat.h	(original)
+++ trunk/gmime/gmime-stream-cat.h	Fri Jun  6 03:11:48 2008
@@ -37,6 +37,14 @@
 typedef struct _GMimeStreamCat GMimeStreamCat;
 typedef struct _GMimeStreamCatClass GMimeStreamCatClass;
 
+/**
+ * GMimeStreamCat:
+ * @parent_object: parent #GMimeStream
+ * @sources: list of sources
+ * @current: current source
+ *
+ * A concatenation of other #GMimeStream objects.
+ **/
 struct _GMimeStreamCat {
 	GMimeStream parent_object;
 	

Modified: trunk/gmime/gmime-stream-file.h
==============================================================================
--- trunk/gmime/gmime-stream-file.h	(original)
+++ trunk/gmime/gmime-stream-file.h	Fri Jun  6 03:11:48 2008
@@ -38,6 +38,14 @@
 typedef struct _GMimeStreamFile GMimeStreamFile;
 typedef struct _GMimeStreamFileClass GMimeStreamFileClass;
 
+/**
+ * GMimeStreamFile:
+ * @parent_object: parent #GMimeStream
+ * @owner: %TRUE if this stream owns @fd
+ * @fp: standard-c FILE pointer
+ *
+ * A #GMimeStream wrapper around standard-c FILE pointers.
+ **/
 struct _GMimeStreamFile {
 	GMimeStream parent_object;
 	

Modified: trunk/gmime/gmime-stream-filter.h
==============================================================================
--- trunk/gmime/gmime-stream-filter.h	(original)
+++ trunk/gmime/gmime-stream-filter.h	Fri Jun  6 03:11:48 2008
@@ -37,6 +37,14 @@
 typedef struct _GMimeStreamFilter GMimeStreamFilter;
 typedef struct _GMimeStreamFilterClass GMimeStreamFilterClass;
 
+/**
+ * GMimeStreamFilter:
+ * @parent_object: parent #GMimeStream
+ * @priv: private state data
+ * @source: source stream
+ *
+ * A #GMimeStream which passes data through any #GMimeFilter objects.
+ **/
 struct _GMimeStreamFilter {
 	GMimeStream parent_object;
 	

Modified: trunk/gmime/gmime-stream-fs.h
==============================================================================
--- trunk/gmime/gmime-stream-fs.h	(original)
+++ trunk/gmime/gmime-stream-fs.h	Fri Jun  6 03:11:48 2008
@@ -37,6 +37,15 @@
 typedef struct _GMimeStreamFs GMimeStreamFs;
 typedef struct _GMimeStreamFsClass GMimeStreamFsClass;
 
+/**
+ * GMimeStreamFs:
+ * @parent_object: parent #GMimeStream
+ * @owner: %TRUE if this stream owns @fd
+ * @eos: %TRUE if end-of-stream
+ * @fd: file descriptor
+ *
+ * A #GMimeStream wrapper around POSIX file descriptors.
+ **/
 struct _GMimeStreamFs {
 	GMimeStream parent_object;
 	

Modified: trunk/gmime/gmime-stream-mem.h
==============================================================================
--- trunk/gmime/gmime-stream-mem.h	(original)
+++ trunk/gmime/gmime-stream-mem.h	Fri Jun  6 03:11:48 2008
@@ -37,11 +37,19 @@
 typedef struct _GMimeStreamMem GMimeStreamMem;
 typedef struct _GMimeStreamMemClass GMimeStreamMemClass;
 
+/**
+ * GMimeStreamMem:
+ * @parent_object: parent #GMimeStream
+ * @buffer: a memory buffer
+ * @owner: %TRUE if this stream owns the memory buffer
+ *
+ * A memory-backed #GMimeStream.
+ **/
 struct _GMimeStreamMem {
 	GMimeStream parent_object;
 	
-	gboolean owner;
 	GByteArray *buffer;
+	gboolean owner;
 };
 
 struct _GMimeStreamMemClass {

Modified: trunk/gmime/gmime-stream-mmap.h
==============================================================================
--- trunk/gmime/gmime-stream-mmap.h	(original)
+++ trunk/gmime/gmime-stream-mmap.h	Fri Jun  6 03:11:48 2008
@@ -36,6 +36,17 @@
 typedef struct _GMimeStreamMmap GMimeStreamMmap;
 typedef struct _GMimeStreamMmapClass GMimeStreamMmapClass;
 
+/**
+ * GMimeStreamMmap:
+ * @parent_object: parent #GMimeStream
+ * @owner: %TRUE if this stream owns the memory map
+ * @eos: %TRUE if end-of-stream
+ * @fd: file descriptor
+ * @map: memory map
+ * @maplen: length of the memory map
+ *
+ * A memory-mapped #GMimeStream.
+ **/
 struct _GMimeStreamMmap {
 	GMimeStream parent_object;
 	

Modified: trunk/gmime/gmime-stream-null.h
==============================================================================
--- trunk/gmime/gmime-stream-null.h	(original)
+++ trunk/gmime/gmime-stream-null.h	Fri Jun  6 03:11:48 2008
@@ -37,6 +37,14 @@
 typedef struct _GMimeStreamNull GMimeStreamNull;
 typedef struct _GMimeStreamNullClass GMimeStreamNullClass;
 
+/**
+ * GMimeStreamNull:
+ * @parent_object: parent #GMimeStream
+ * @written: number of bytes written to this stream
+ * @newlines: the number of newlines written to this stream
+ *
+ * A #GMimeStream which has no backing store.
+ **/
 struct _GMimeStreamNull {
 	GMimeStream parent_object;
 	

Modified: trunk/gmime/gmime-stream.h
==============================================================================
--- trunk/gmime/gmime-stream.h	(original)
+++ trunk/gmime/gmime-stream.h	Fri Jun  6 03:11:48 2008
@@ -71,6 +71,16 @@
 } GMimeStreamIOVector;
 
 
+/**
+ * GMimeStream:
+ * @parent_object: parent #GObject
+ * @super_stream: parent stream if this is a substream
+ * @position: the current stream position (aka offset)
+ * @bound_start: start boundary of the stream
+ * @bound_end: end boundary of the stream
+ *
+ * Abstract I/O stream class.
+ **/
 struct _GMimeStream {
 	GObject parent_object;
 	

Modified: trunk/mono/gmime-api.raw
==============================================================================
--- trunk/mono/gmime-api.raw	(original)
+++ trunk/mono/gmime-api.raw	Fri Jun  6 03:11:48 2008
@@ -640,7 +640,7 @@
       <field name="Recipients" cname="recipients" type="GHashTable*" />
       <field name="Subject" cname="subject" type="char*" />
       <field name="Date" cname="date" type="time_t" />
-      <field name="GmtOffset" cname="gmt_offset" type="int" />
+      <field name="TzOffset" cname="tz_offset" type="int" />
       <field name="MessageId" cname="message_id" type="char*" />
       <field name="MimePart" cname="mime_part" type="GMimeObject*" />
       <method name="AddHeader" cname="g_mime_message_add_header">
@@ -679,10 +679,10 @@
         <return-type type="void" />
         <parameters>
           <parameter type="time_t*" name="date" />
-          <parameter type="int*" name="gmt_offset" />
+          <parameter type="int*" name="tz_offset" />
         </parameters>
       </method>
-      <method name="GetDateString" cname="g_mime_message_get_date_string">
+      <method name="GetDateAsString" cname="g_mime_message_get_date_as_string">
         <return-type type="char*" />
       </method>
       <method name="GetHeader" cname="g_mime_message_get_header">
@@ -724,7 +724,13 @@
         <return-type type="void" />
         <parameters>
           <parameter type="time_t" name="date" />
-          <parameter type="int" name="gmt_offset" />
+          <parameter type="int" name="tz_offset" />
+        </parameters>
+      </method>
+      <method name="SetDateAsString" cname="g_mime_message_set_date_as_string">
+        <return-type type="void" />
+        <parameters>
+          <parameter type="const-char*" name="str" />
         </parameters>
       </method>
       <method name="SetHeader" cname="g_mime_message_set_header">

Modified: trunk/tools/gmime-port-2-2-to-2-4.sh
==============================================================================
--- trunk/tools/gmime-port-2-2-to-2-4.sh	(original)
+++ trunk/tools/gmime-port-2-2-to-2-4.sh	Fri Jun  6 03:11:48 2008
@@ -30,6 +30,7 @@
 	-e "s/g_mime_message_set_header/g_mime_object_set_header/g" \
 	-e "s/g_mime_message_write_to_stream/g_mime_object_write_to_stream/g" \
 	-e "s/g_mime_message_to_string/g_mime_object_to_string/g" \
+	-e "s/g_mime_message_get_date_string/g_mime_message_get_date_as_string/g" \
 	-e "s/GMimeDisposition/GMimeContentDisposition/g" \
 	-e "s/g_mime_disposition_new/g_mime_content_disposition_new_from_string/g" \
 	-e "s/g_mime_disposition_destroy/g_mime_content_disposition_destroy/g" \



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]