ze-filter  (ze-filter-0.8.0-develop-180218)
ze-fileexp.c File Reference
#include <ze-sys.h>
#include <libze.h>
#include <ze-filter.h>
#include "ze-fileexp.h"

Go to the source code of this file.

Classes

struct  fext_rec
 
struct  XFILE_T
 

Macros

#define SZ_BLOCK   32
 
#define FALSE   0
 
#define TRUE   1
 
#define NEW_XFILES_DATA   1
 
#define FEXT_LOCK()   MUTEX_LOCK(&mutex_fext)
 
#define FEXT_UNLOCK()   MUTEX_UNLOCK(&mutex_fext)
 
#define MAX_EXT   1024
 
#define EXPR_LEN   256
 
#define XFILE_INITIALIZER   {"", "", "", 0, FALSE, 0, 0}
 
#define DATA_LOCK()   MUTEX_LOCK(&st_mutex)
 
#define DATA_UNLOCK()   MUTEX_UNLOCK(&st_mutex)
 
#define XFILES_DEFAULT   1
 
#define XFILES_TNEF   2
 
#define XFILES_CLSID   3
 
#define XFILES_ALL   4
 
#define FNAME_TNEF   "winmail.dat"
 
#define FNAME_CLSID   "[{]?[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}[}]?$"
 

Typedefs

typedef struct fext_rec fext_rec
 

Functions

int free_fext ()
 
int add_fext (char *str)
 
int sort_extensions (const void *a, const void *b)
 
int extract_extensions (char *str)
 
void init_default_file_extensions ()
 
void init_file_extension_regex ()
 
void list_filename_extensions (int fd)
 
bool check_filename_xfile (char *fname)
 
void dump_xfiles_table ()
 
bool load_xfiles_table (char *cfdir, char *fname)
 
bool check_xfiles (char *fname, char *mime, size_t msgsize, char *saction, size_t bufsize)
 

Variables

fext_recj_fext = NULL
 
int sz_fext = 0
 
int nb_fext = 0
 
char * ZE_FILE_EXT = NULL
 
char * ZE_DEFAULT_EXT = NULL
 

Macro Definition Documentation

◆ DATA_LOCK

#define DATA_LOCK ( )    MUTEX_LOCK(&st_mutex)

Definition at line 389 of file ze-fileexp.c.

◆ DATA_UNLOCK

#define DATA_UNLOCK ( )    MUTEX_UNLOCK(&st_mutex)

Definition at line 390 of file ze-fileexp.c.

◆ EXPR_LEN

#define EXPR_LEN   256

Definition at line 370 of file ze-fileexp.c.

◆ FALSE

#define FALSE   0

Definition at line 34 of file ze-fileexp.c.

◆ FEXT_LOCK

#define FEXT_LOCK ( )    MUTEX_LOCK(&mutex_fext)

Definition at line 60 of file ze-fileexp.c.

◆ FEXT_UNLOCK

#define FEXT_UNLOCK ( )    MUTEX_UNLOCK(&mutex_fext)

Definition at line 61 of file ze-fileexp.c.

◆ FNAME_CLSID

#define FNAME_CLSID   "[{]?[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}[}]?$"

Definition at line 621 of file ze-fileexp.c.

◆ FNAME_TNEF

#define FNAME_TNEF   "winmail.dat"

Definition at line 620 of file ze-fileexp.c.

◆ MAX_EXT

#define MAX_EXT   1024

Definition at line 118 of file ze-fileexp.c.

◆ NEW_XFILES_DATA

#define NEW_XFILES_DATA   1

Definition at line 40 of file ze-fileexp.c.

◆ SZ_BLOCK

#define SZ_BLOCK   32

Definition at line 31 of file ze-fileexp.c.

◆ TRUE

#define TRUE   1

Definition at line 37 of file ze-fileexp.c.

◆ XFILE_INITIALIZER

#define XFILE_INITIALIZER   {"", "", "", 0, FALSE, 0, 0}

Definition at line 381 of file ze-fileexp.c.

◆ XFILES_ALL

#define XFILES_ALL   4

Definition at line 610 of file ze-fileexp.c.

◆ XFILES_CLSID

#define XFILES_CLSID   3

Definition at line 609 of file ze-fileexp.c.

◆ XFILES_DEFAULT

#define XFILES_DEFAULT   1

Definition at line 607 of file ze-fileexp.c.

◆ XFILES_TNEF

#define XFILES_TNEF   2

Definition at line 608 of file ze-fileexp.c.

Typedef Documentation

◆ fext_rec

typedef struct fext_rec fext_rec

Function Documentation

◆ extract_extensions()

int extract_extensions ( char *  str)

Definition at line 158 of file ze-fileexp.c.

◆ sort_extensions()

int sort_extensions ( const void *  a,
const void *  b 
)

Definition at line 134 of file ze-fileexp.c.

Variable Documentation

◆ j_fext

fext_rec* j_fext = NULL

Definition at line 55 of file ze-fileexp.c.

◆ nb_fext

int nb_fext = 0

Definition at line 57 of file ze-fileexp.c.

◆ sz_fext

int sz_fext = 0

Definition at line 56 of file ze-fileexp.c.

◆ ZE_DEFAULT_EXT

char* ZE_DEFAULT_EXT = NULL

Definition at line 127 of file ze-fileexp.c.

◆ ZE_FILE_EXT

char* ZE_FILE_EXT = NULL

Definition at line 121 of file ze-fileexp.c.