GMimeParserOptions

GMimeParserOptions — Parser options

Functions

Types and Values

Description

A GMimeParserOptions is used to pass various options to GMimeParser and all of the various other parser functions in GMime.

Functions

g_mime_parser_options_new ()

GMimeParserOptions *
g_mime_parser_options_new (void);

Creates a new set of GMimeParserOptions.

Returns

a newly allocated set of GMimeParserOptions with the default values.


g_mime_parser_options_free ()

void
g_mime_parser_options_free (GMimeParserOptions *options);

Frees a set of GMimeParserOptions.

Parameters

options

a GMimeParserOptions

 

g_mime_parser_options_clone ()

GMimeParserOptions *
g_mime_parser_options_clone (GMimeParserOptions *options);

Clones a GMimeParserOptions.

Parameters

options

a GMimeParserOptions or NULL.

[nullable]

Returns

a newly allocated GMimeParserOptions.

[transfer full]


g_mime_parser_options_get_default ()

GMimeParserOptions *
g_mime_parser_options_get_default (void);

Gets the default parser options.

Returns

the default parser options.


g_mime_parser_options_get_address_compliance_mode ()

GMimeRfcComplianceMode
g_mime_parser_options_get_address_compliance_mode
                               (GMimeParserOptions *options);

Gets the compliance mode that should be used when parsing rfc822 addresses.

Note: Even in GMIME_RFC_COMPLIANCE_STRICT mode, the address parser is fairly liberal in what it accepts. Setting it to GMIME_RFC_COMPLIANCE_LOOSE just makes it try harder to deal with garbage input.

Parameters

options

a GMimeParserOptions or NULL.

[nullable]

Returns

the compliance mode that is currently set.


g_mime_parser_options_set_address_compliance_mode ()

void
g_mime_parser_options_set_address_compliance_mode
                               (GMimeParserOptions *options,
                                GMimeRfcComplianceMode mode);

Sets the compliance mode that should be used when parsing rfc822 addresses.

In general, you'll probably want this value to be GMIME_RFC_COMPLIANCE_LOOSE (the default) as it allows maximum interoperability with existing (broken) mail clients and other mail software such as sloppily written perl scripts (aka spambots).

Note: Even in GMIME_RFC_COMPLIANCE_STRICT mode, the address parser is fairly liberal in what it accepts. Setting it to GMIME_RFC_COMPLIANCE_LOOSE just makes it try harder to deal with garbage input.

Parameters


g_mime_parser_options_get_parameter_compliance_mode ()

GMimeRfcComplianceMode
g_mime_parser_options_get_parameter_compliance_mode
                               (GMimeParserOptions *options);

Gets the compliance mode that should be used when parsing Content-Type and Content-Disposition parameters.

Note: Even in GMIME_RFC_COMPLIANCE_STRICT mode, the parameter parser is fairly liberal in what it accepts. Setting it to GMIME_RFC_COMPLIANCE_LOOSE just makes it try harder to deal with garbage input.

Parameters

options

a GMimeParserOptions or NULL.

[nullable]

Returns

the compliance mode that is currently set.


g_mime_parser_options_set_parameter_compliance_mode ()

void
g_mime_parser_options_set_parameter_compliance_mode
                               (GMimeParserOptions *options,
                                GMimeRfcComplianceMode mode);

Sets the compliance mode that should be used when parsing Content-Type and Content-Disposition parameters.

In general, you'll probably want this value to be GMIME_RFC_COMPLIANCE_LOOSE (the default) as it allows maximum interoperability with existing (broken) mail clients and other mail software such as sloppily written perl scripts (aka spambots).

Note: Even in GMIME_RFC_COMPLIANCE_STRICT mode, the parameter parser is fairly liberal in what it accepts. Setting it to GMIME_RFC_COMPLIANCE_LOOSE just makes it try harder to deal with garbage input.

Parameters


g_mime_parser_options_get_rfc2047_compliance_mode ()

GMimeRfcComplianceMode
g_mime_parser_options_get_rfc2047_compliance_mode
                               (GMimeParserOptions *options);

Gets the compliance mode that should be used when parsing rfc2047 encoded words.

Note: Even in GMIME_RFC_COMPLIANCE_STRICT mode, the rfc2047 parser is fairly liberal in what it accepts. Setting it to GMIME_RFC_COMPLIANCE_LOOSE just makes it try harder to deal with garbage input.

Parameters

options

a GMimeParserOptions or NULL.

[nullable]

Returns

the compliance mode that is currently set.


g_mime_parser_options_set_rfc2047_compliance_mode ()

void
g_mime_parser_options_set_rfc2047_compliance_mode
                               (GMimeParserOptions *options,
                                GMimeRfcComplianceMode mode);

Sets the compliance mode that should be used when parsing rfc2047 encoded words.

In general, you'll probably want this value to be GMIME_RFC_COMPLIANCE_LOOSE (the default) as it allows maximum interoperability with existing (broken) mail clients and other mail software such as sloppily written perl scripts (aka spambots).

Note: Even in GMIME_RFC_COMPLIANCE_STRICT mode, the parameter parser is fairly liberal in what it accepts. Setting it to GMIME_RFC_COMPLIANCE_LOOSE just makes it try harder to deal with garbage input.

Parameters


g_mime_parser_options_get_fallback_charsets ()

const char **
g_mime_parser_options_get_fallback_charsets
                               (GMimeParserOptions *options);

Gets the fallback charsets to try when decoding 8-bit headers.

Parameters

options

a GMimeParserOptions or NULL.

[nullable]

Returns

a NULL-terminated list of charsets to try when decoding 8-bit headers.

[transfer none]


g_mime_parser_options_set_fallback_charsets ()

void
g_mime_parser_options_set_fallback_charsets
                               (GMimeParserOptions *options,
                                const char **charsets);

Sets the fallback charsets to try when decoding 8-bit headers.

Note: It is recommended that the list of charsets start with utf-8 and end with iso-8859-1.

Parameters

options

a GMimeParserOptions

 

charsets

a NULL-terminated list of charsets or NULL for the default list

 

Types and Values

GMimeParserOptions

typedef struct _GMimeParserOptions GMimeParserOptions;

A set of parser options used by GMimeParser and various other parsing functions.


enum GMimeRfcComplianceMode

An RFC compliance mode.

Members

GMIME_RFC_COMPLIANCE_LOOSE

Attempt to be much more liberal accepting broken and/or invalid formatting.

 

GMIME_RFC_COMPLIANCE_STRICT

Do not attempt to be overly liberal in accepting broken and/or invalid formatting.