libcmime  
A lightweight C mime library
Data Structures | Macros | Enumerations | Functions
cmime_address.h File Reference

Defines functions and structs for email address handling. More...

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <assert.h>
Include dependency graph for cmime_address.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  CMimeAddress_T
 Represents an email address. More...
 

Macros

#define cmime_address_get_name(ca)   (ca->name)
 
#define cmime_address_get_email(ca)   (ca->email)
 
#define cmime_address_get_type(ca)   (ca->type)
 

Enumerations

enum  CMimeAddressType_T { CMIME_ADDRESS_TYPE_TO, CMIME_ADDRESS_TYPE_CC, CMIME_ADDRESS_TYPE_BCC, CMIME_ADDRESS_TYPE_FROM }
 Possible types of email addresses. More...
 

Functions

CMimeAddress_Tcmime_address_new (void)
 Creates a new CMimeAddress_T object. More...
 
void cmime_address_set_name (CMimeAddress_T *ca, const char *name)
 Set the display name of CMimeAdresse_T object. More...
 
void cmime_address_set_email (CMimeAddress_T *ca, const char *email)
 Set the email address of CMimeAdress_T object. More...
 
void cmime_address_set_type (CMimeAddress_T *ca, CMimeAddressType_T t)
 Set the address type of CMimeAdress_T object. More...
 
char * cmime_address_to_string (CMimeAddress_T *ca)
 Allocates a string containing the contents of the CMimeAddress_T object. More...
 
CMimeAddress_Tcmime_address_parse_string (const char *s)
 Parse given string and create CMimeAddress_T object. More...
 
void cmime_address_free (CMimeAddress_T *ca)
 Free a CMimeAddress_T object. More...
 

Detailed Description

Defines functions and structs for email address handling.

Macro Definition Documentation

#define cmime_address_get_email (   ca)    (ca->email)
Returns
email address of CMimeAddress_T object
#define cmime_address_get_name (   ca)    (ca->name)
Returns
name of CMimeAddress_T object
#define cmime_address_get_type (   ca)    (ca->type)
Returns
address type

Enumeration Type Documentation

Possible types of email addresses.

Enumerator
CMIME_ADDRESS_TYPE_TO 

message recipient

CMIME_ADDRESS_TYPE_CC 

message cc recipient

CMIME_ADDRESS_TYPE_BCC 

nessage bcc recipient

CMIME_ADDRESS_TYPE_FROM 

message sender

Function Documentation

void cmime_address_free ( CMimeAddress_T ca)

Free a CMimeAddress_T object.

Parameters
caCMimeAddress_T pointer
CMimeAddress_T* cmime_address_new ( void  )

Creates a new CMimeAddress_T object.

Returns
CMimeAdress_T pointer, or NULL on failure
CMimeAddress_T* cmime_address_parse_string ( const char *  s)

Parse given string and create CMimeAddress_T object.

Parameters
sstring to parse
Returns
a newly allocated CMimeAddress_T object, or NULL on failure
void cmime_address_set_email ( CMimeAddress_T ca,
const char *  email 
)

Set the email address of CMimeAdress_T object.

Parameters
caCMimeAddress_T pointer
emailemail address
void cmime_address_set_name ( CMimeAddress_T ca,
const char *  name 
)

Set the display name of CMimeAdresse_T object.

Parameters
caCMimeAddress_T pointer
namethe display name for the address
void cmime_address_set_type ( CMimeAddress_T ca,
CMimeAddressType_T  t 
)

Set the address type of CMimeAdress_T object.

Parameters
caCMimeAddress_T object
tCMimeAddressType_T type
char* cmime_address_to_string ( CMimeAddress_T ca)

Allocates a string containing the contents of the CMimeAddress_T object.

Parameters
caCMimeAddress_T pointer
Returns
the CMimeAddress_T object as an newly allocated string in rfc822 format.
Examples:
parse_mime_message.c.