GMimeFilterCRLF

GMimeFilterCRLF — Convert line-endings from LF to CRLF or vise versa

Functions

Types and Values

Description

A GMimeFilter for converting between DOS and UNIX line-endings.

Functions

g_mime_filter_crlf_new ()

GMimeFilter *
g_mime_filter_crlf_new (gboolean encode,
                        gboolean dots);

Creates a new GMimeFilterCRLF filter.

If encode is TRUE, then lone line-feeds ('\n') will be 'encoded' into the canonical CRLF end-of-line sequence ("\r\n") otherwise CRLF sequences will be 'decoded' into the UNIX line-ending form ('\n').

The dots parameter tells the filter whether or not it should encode or decode lines beginning with a dot ('.'). If both encode and dots are TRUE, then a '.' at the beginning of a line will be 'encoded' into "..". If encode is FALSE, then ".." at the beginning of a line will be decoded into a single '.'.

Parameters

encode

TRUE if the filter should encode or FALSE otherwise

 

dots

encode/decode dots (as for SMTP)

 

Returns

a new GMimeFilterCRLF filter.

Types and Values

struct GMimeFilterCRLF

struct GMimeFilterCRLF {
	GMimeFilter parent_object;

	gboolean encode;
	gboolean dots;

	gboolean saw_cr;
	gboolean saw_lf;
	gboolean saw_dot;
};

A filter to convert between line-ending formats and encode/decode lines beginning with a '.'.

Members

GMimeFilter parent_object;

parent GMimeFilter

 

gboolean encode;

encoding vs decoding line endings/dots

 

gboolean dots;

TRUE if dot-stuffing should be performed or FALSE otherwise

 

gboolean saw_cr;

TRUE if the previous char was a CR

 

gboolean saw_lf;

TRUE if the previous char was a LF

 

gboolean saw_dot;

TRUE if the previous char was a period