+ * @param Message $message Message object to send
+ * NOTE that this is passed by
+ * reference and will be modified
+ * upon return with updated
+ * fields such as Message ID, References,
+ * In-Reply-To and Date headers.
+ * @param resource $stream Handle to the outgoing stream
+ * (when FALSE, nothing will be
+ * written to the stream; this can
+ * be used to determine the actual
+ * number of bytes that will be
+ * written to the stream)
+ * @param string $reply_id Identifies message being replied to
+ * (OPTIONAL; caller should ONLY specify
+ * a value for this when the message
+ * being sent is a reply)
+ * @param string $reply_ent_id Identifies message being replied to
+ * in the case it was an embedded/attached
+ * message inside another (OPTIONAL; caller
+ * should ONLY specify a value for this
+ * when the message being sent is a reply)
+ * @param resource $imap_stream If there is an open IMAP stream in
+ * the caller's context, it should be
+ * passed in here. This is OPTIONAL,
+ * as one will be created if not given,
+ * but as some IMAP servers may baulk
+ * at opening more than one connection
+ * at a time, the caller should always
+ * abide if possible. Currently, this
+ * stream is only used when $reply_id
+ * is also non-zero, but that is subject
+ * to change.
+ * @param mixed $extra Any implementation-specific variables
+ * can be passed in here and used in
+ * an overloaded version of this method
+ * if needed.
+ *
+ * @return integer The number of bytes written (or that would have been
+ * written) to the output stream.