ocpf_public.c File Reference

public OCPF API More...

#include "libocpf/ocpf.h"

Functions

enum MAPISTATUS ocpf_clear_props (uint32_t context_id)
 
_PUBLIC_ int ocpf_del_context (uint32_t context_id)
 
_PUBLIC_ enum MAPISTATUS ocpf_get_recipients (TALLOC_CTX *mem_ctx, uint32_t context_id, struct SRowSet **SRowSet)
 
_PUBLIC_ struct SPropValue * ocpf_get_SPropValue (uint32_t context_id, uint32_t *cValues)
 
_PUBLIC_ int ocpf_init (void)
 
_PUBLIC_ int ocpf_new_context (const char *filename, uint32_t *context_id, uint8_t flags)
 
_PUBLIC_ enum MAPISTATUS ocpf_OpenFolder (uint32_t context_id, mapi_object_t *obj_store, mapi_object_t *obj_folder)
 
_PUBLIC_ int ocpf_parse (uint32_t context_id)
 
_PUBLIC_ int ocpf_release (void)
 
_PUBLIC_ enum MAPISTATUS ocpf_set_Recipients (TALLOC_CTX *mem_ctx, uint32_t context_id, mapi_object_t *obj_message)
 
_PUBLIC_ enum MAPISTATUS ocpf_set_SPropValue (TALLOC_CTX *mem_ctx, uint32_t context_id, mapi_object_t *obj_folder, mapi_object_t *obj_message)
 
int ocpf_yylex_destroy (void *)
 
stat h int ocpf_yylex_init (void *)
 
int ocpf_yylex_init_extra (struct ocpf_context *, void *)
 
int ocpf_yyparse (struct ocpf_context *, void *)
 
void ocpf_yyset_in (FILE *, void *)
 

Variables

int error_flag
 
struct ocpf * ocpf
 

Detailed Description

public OCPF API

Function Documentation

enum MAPISTATUS ocpf_clear_props ( uint32_t  context_id)

Clear the known properties from the OCPF entity

Parameters
context_ididentifier of the context to clear properties from
Returns
MAPI_E_SUCCESS on success, otherwise a non-zero error code

References ctx, ocpf, and ocpf_context_search_by_context_id().

_PUBLIC_ int ocpf_del_context ( uint32_t  context_id)

Delete an OCPF context

Parameters
context_idcontext identifier referencing the context to delete
Returns
OCPF_SUCCESS on success, otherwise OCPF_ERROR

References ctx, ocpf, ocpf_context_delete(), and ocpf_context_search_by_context_id().

_PUBLIC_ enum MAPISTATUS ocpf_get_recipients ( TALLOC_CTX *  mem_ctx,
uint32_t  context_id,
struct SRowSet **  SRowSet 
)

Get the message recipients from ocpf context

This function gets the recipient (To, Cc, Bcc) from the ocpf context and information stored.

Parameters
mem_ctxthe memory context to use for memory allocation
context_ididentifier to the context to set recipients for
SRowSetpointer on pointer to the set of recipients to return
Returns
MAPI_E_SUCCESS on success, otherwise NULL
See Also
ocpf

References ctx, ocpf, and ocpf_context_search_by_context_id().

_PUBLIC_ struct SPropValue* ocpf_get_SPropValue ( uint32_t  context_id,
uint32_t *  cValues 
)

Get the OCPF SPropValue array

This function is an accessor designed to return the SPropValue structure created with ocpf_set_SPropValue.

Parameters
context_ididentifier of the context to retrieve SPropValue from
cValuespointer on the number of SPropValue entries
Returns
NULL on error, otherwise returns an allocated lpProps pointer
See Also
ocpf_set_SPropValue

References ctx, ocpf, and ocpf_context_search_by_context_id().

_PUBLIC_ int ocpf_init ( void  )

Initialize OCPF context

Initialize ocpf context and allocate memory for internal structures

Returns
OCPF_SUCCESS on success, otherwise OCPF_ERROR
See Also
ocpf_release, ocpf_parse

References ocpf.

_PUBLIC_ int ocpf_new_context ( const char *  filename,
uint32_t *  context_id,
uint8_t  flags 
)

Create a new OCPF context

Parameters
filenamethe filename to process
context_idpointer to the context identifier the function
flagsFlags controlling how the OCPF should be opened
Returns
OCPF_SUCCESS on success, otherwise OCPF_ERROR

References ctx, ocpf, and ocpf_context_add().

_PUBLIC_ enum MAPISTATUS ocpf_OpenFolder ( uint32_t  context_id,
mapi_object_t *  obj_store,
mapi_object_t *  obj_folder 
)

Open OCPF folder

This function opens the folder associated with the ocpf folder global context value.

Parameters
context_ididentifier of the context to open the folder for
obj_storethe store object
obj_folderthe folder to open
Returns
MAPI_E_SUCCESS on success, otherwise MAPI_E_NOT_FOUND.
Note
Developers should call GetLastError() to retrieve the last MAPI error code. Possible MAPI error codes are:
  • MAPI_E_NOT_INITIALIZED: MAPI subsystem has not been initialized.
  • MAPI_E_INVALID_PARAMETER: obj_store is undefined
  • MAPI_E_NOT_FOUND: The specified folder could not be found or is not yet supported.
See Also
ocpf_init, ocpf_parse

References ctx, ocpf, and ocpf_context_search_by_context_id().

_PUBLIC_ int ocpf_parse ( uint32_t  context_id)

Parse OCPF file

Parse and process the given ocpf file.

Parameters
context_idthe identifier of the context holding the file to be parsed
Returns
OCPF_SUCCESS on success, otherwise OCPF_ERROR
See Also
ocpf_init

References ctx, ocpf, ocpf_context_search_by_context_id(), ocpf_yylex_destroy(), ocpf_yylex_init(), ocpf_yylex_init_extra(), ocpf_yyparse(), ocpf_yyset_in(), and scanner.

_PUBLIC_ int ocpf_release ( void  )

Uninitialize OCPF context

Uninitialize the global OCPF context and release memory.

Returns
OCPF_SUCCESS on success, otherwise OCPF_ERROR
See Also
ocpf_init

References ocpf.

_PUBLIC_ enum MAPISTATUS ocpf_set_Recipients ( TALLOC_CTX *  mem_ctx,
uint32_t  context_id,
mapi_object_t *  obj_message 
)

Set the message recipients from ocpf context

This function sets the recipient (To, Cc, Bcc) from the ocpf context and information stored.

Parameters
mem_ctxthe memory context to use for memory allocation
context_ididentifier to the context to set recipients for
obj_messagepointer to the message object we use for internal MAPI operations
Returns
OCPF_SUCCESS on success, otherwise OCPF_ERROR.
See Also
ocpf

References ctx, ocpf, and ocpf_context_search_by_context_id().

_PUBLIC_ enum MAPISTATUS ocpf_set_SPropValue ( TALLOC_CTX *  mem_ctx,
uint32_t  context_id,
mapi_object_t *  obj_folder,
mapi_object_t *  obj_message 
)

Build a SPropValue array from ocpf context

This function builds a SPropValue array from the ocpf context and information stored.

Parameters
mem_ctxthe memory context to use for memory allocation
context_ididentifier of the context to build a SPropValue array for
obj_folderpointer the folder object we use for internal MAPI operations
obj_messagepointer to the message object we use for internal MAPI operations
Returns
MAPI_E_SUCCESS on success, otherwise -1.
Note
Developers should call GetLastError() to retrieve the last MAPI error code. Possible MAPI error codes are:
  • MAPI_E_NOT_INITIALIZED: MAPI subsystem has not been initialized
See Also
ocpf_get_SPropValue

References ctx, ocpf, and ocpf_context_search_by_context_id().

int ocpf_yylex_destroy ( void *  )

Referenced by ocpf_parse().

stat h int ocpf_yylex_init ( void *  )

Referenced by ocpf_parse().

int ocpf_yylex_init_extra ( struct ocpf_context *  ,
void *   
)

Referenced by ocpf_parse().

int ocpf_yyparse ( struct ocpf_context *  ,
void *   
)

Referenced by ocpf_parse().

void ocpf_yyset_in ( FILE *  ,
void *   
)

Referenced by ocpf_parse().

Variable Documentation

int error_flag

Creative Commons License
Creative Commons Attribution icon Creative Commons Share Alike icon
This content is licensed under the Creative Commons
Attribution ShareAlike License v. 3.0:
http://creativecommons.org/licenses/by-sa/3.0/