Camel.MultipartSigned

g Camel.DataWrapper Camel.DataWrapper Camel.Multipart Camel.Multipart Camel.DataWrapper->Camel.Multipart Camel.MultipartSigned Camel.MultipartSigned Camel.Multipart->Camel.MultipartSigned GObject.Object GObject.Object GObject.Object->Camel.DataWrapper

Subclasses:None

Properties

None

Signals

Inherited:GObject.Object (1)

Fields

Inherited:GObject.Object (1)
Name Type Access Description
parent Camel.Multipart r  

Class Details

class Camel.MultipartSigned(**kwargs)
Bases:Camel.Multipart
Abstract:No
Structure:Camel.MultipartSignedClass
classmethod new()
Returns:a new Camel.MultipartSigned object
Return type:Camel.MultipartSigned

Create a new Camel.MultipartSigned object.

A MultipartSigned should be used to store and create parts of type “multipart/signed”. This is because multipart/signed is entirely broken-by-design (tm) and uses completely different semantics to other mutlipart types. It must be treated as opaque data by any transport. See rfc 3156 for details.

There are 3 ways to create the Camel.part: Use construct_from_stream. If this is used, then you must set the mime_type appropriately to match the data uses, so that the multiple parts my be extracted.

Use construct_from_parser. The parser MUST be in the Camel.MimeParserState.HEADER state, and the current content_type MUST be “multipart/signed” with the appropriate boundary and it SHOULD include the appropriate protocol and hash specifiers.

Use sign_part. A signature Camel.part will automatically be created and the whole Camel.part may be written using write_to_stream to create a ‘transport-safe’ version (as safe as can be expected with such a broken specification).

get_content_stream()
Raises:GLib.Error
Returns:the signed content stream
Return type:Camel.Stream

Get the raw signed content stream of the multipart/signed MIME Camel.part suitable for use with verification of the signature.

set_content_stream(content_stream)
Parameters:content_stream (Camel.Stream) – a Camel.Stream

Explicits sets the raw signed content stream of the multipart/signed MIME Camel.part.

New in version 3.12.

set_signature(signature)
Parameters:signature (Camel.MimePart) – a Camel.MimePart

Explicitly sets the signature Camel.part of self.

New in version 3.12.