zenilib  0.5.3.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
gxvcommn.h File Reference
#include <ft2build.h>
#include "gxvalid.h"
#include <FT_INTERNAL_DEBUG_H>
#include <FT_SFNT_NAMES_H>

Go to the source code of this file.

Classes

union  GXV_LookupValueDesc_
 
struct  GXV_odtect_DataRec_
 
struct  GXV_odtect_RangeRec_
 
union  GXV_StateTable_GlyphOffsetDesc_
 
struct  GXV_StateTable_ValidatorRec_
 
struct  GXV_ValidatorRec_
 
struct  GXV_XStateTable_ValidatorRec_
 

Macros

#define DUMMY_LIMIT   0
 
#define FT_INVALID_(_prefix, _error)   ft_validator_error( valid->root, _prefix ## _error )
 
#define GXV_32BIT_ALIGNMENT_VALIDATE(a)
 
#define GXV_EXIT   do { } while ( 0 )
 
#define GXV_GLYPHOFFSET_FMT(table)   ( valid->table.entry_glyphoffset_fmt )
 
#define GXV_GLYPHOFFSET_SIZE(table)   ( valid->table.entry_glyphoffset_fmt / 2 )
 
#define GXV_INIT   do { } while ( 0 )
 
#define GXV_LIMIT_CHECK(_count)
 
#define GXV_NAME_ENTER(name)   do { } while ( 0 )
 
#define GXV_ODTECT(n, odtect)
 
#define GXV_ODTECT_INIT(odtect)
 
#define GXV_SET_ERR_IF_PARANOID(err)   { if ( IS_PARANOID_VALIDATION ) ( err ); }
 
#define GXV_STATEHEADER_SIZE   GXV_STATETABLE_HEADER_SIZE
 
#define GXV_STATETABLE_HEADER_SIZE   ( 2 + 2 + 2 + 2 )
 
#define GXV_SUBTABLE_LIMIT_CHECK(_count)
 
#define GXV_SUBTABLE_OFFSET_CHECK(_offset)
 
#define GXV_TABLE_DATA(tag, field)   ( ( (GXV_ ## tag ## _Data)valid->table_data )->field )
 
#define GXV_TRACE(s)   do { } while ( 0 )
 
#define GXV_TRACE_HEXDUMP(p, len)
 
#define GXV_TRACE_HEXDUMP_C(p, len)
 
#define GXV_TRACE_HEXDUMP_SFNTNAME(n)   GXV_TRACE_HEXDUMP( n.string, n.string_len )
 
#define GXV_USHORT_TO_SHORT(_us)   ( ( 0x8000U < ( _us ) ) ? ( ( _us ) - 0x8000U ) : ( _us ) )
 
#define GXV_XSTATEHEADER_SIZE   GXV_XSTATETABLE_HEADER_SIZE
 
#define GXV_XSTATETABLE_HEADER_SIZE   ( 4 + 4 + 4 + 4 )
 
#define IS_PARANOID_VALIDATION   ( valid->root->level >= FT_VALIDATE_PARANOID )
 

Typedefs

typedef enum
GXV_GlyphOffset_Format_ 
GXV_GlyphOffset_Format
 
typedef GXV_LookupValueDesc(* GXV_Lookup_Fmt4_Transit_Func )(FT_UShort relative_gindex, GXV_LookupValueCPtr base_value_p, FT_Bytes lookuptbl_limit, GXV_Validator valid)
 
typedef void(* GXV_Lookup_Value_Validate_Func )(FT_UShort glyph, GXV_LookupValueCPtr value_p, GXV_Validator valid)
 
typedef enum
GXV_LookupValue_SignSpec_ 
GXV_LookupValue_SignSpec
 
typedef const GXV_LookupValueDescGXV_LookupValueCPtr
 
typedef union GXV_LookupValueDesc_ GXV_LookupValueDesc
 
typedef struct
GXV_odtect_DataRec_
GXV_odtect_Data
 
typedef struct GXV_odtect_DataRec_ GXV_odtect_DataRec
 
typedef struct
GXV_odtect_RangeRec_
GXV_odtect_Range
 
typedef struct GXV_odtect_RangeRec_ GXV_odtect_RangeRec
 
typedef void(* GXV_StateTable_Entry_Validate_Func )(FT_Byte state, FT_UShort flags, GXV_StateTable_GlyphOffsetCPtr glyphOffset_p, FT_Bytes statetable_table, FT_Bytes statetable_limit, GXV_Validator valid)
 
typedef const
GXV_StateTable_GlyphOffsetDesc
GXV_StateTable_GlyphOffsetCPtr
 
typedef union
GXV_StateTable_GlyphOffsetDesc_ 
GXV_StateTable_GlyphOffsetDesc
 
typedef void(* GXV_StateTable_OptData_Load_Func )(FT_Bytes table, FT_Bytes limit, GXV_Validator valid)
 
typedef void(* GXV_StateTable_Subtable_Setup_Func )(FT_UShort table_size, FT_UShort classTable, FT_UShort stateArray, FT_UShort entryTable, FT_UShort *classTable_length_p, FT_UShort *stateArray_length_p, FT_UShort *entryTable_length_p, GXV_Validator valid)
 
typedef struct
GXV_StateTable_ValidatorRec_ 
GXV_StateTable_ValidatorRec
 
typedef struct
GXV_StateTable_ValidatorRec_
GXV_StateTable_ValidatorRecData
 
typedef void(* GXV_Validate_Func )(FT_Bytes table, FT_Bytes limit, GXV_Validator valid)
 
typedef struct GXV_ValidatorRec_GXV_Validator
 
typedef struct GXV_ValidatorRec_ GXV_ValidatorRec
 
typedef void(* GXV_XStateTable_Entry_Validate_Func )(FT_UShort state, FT_UShort flags, GXV_StateTable_GlyphOffsetCPtr glyphOffset_p, FT_Bytes xstatetable_table, FT_Bytes xstatetable_limit, GXV_Validator valid)
 
typedef const
GXV_XStateTable_GlyphOffsetDesc
GXV_XStateTable_GlyphOffsetCPtr
 
typedef
GXV_StateTable_GlyphOffsetDesc 
GXV_XStateTable_GlyphOffsetDesc
 
typedef
GXV_StateTable_OptData_Load_Func 
GXV_XStateTable_OptData_Load_Func
 
typedef void(* GXV_XStateTable_Subtable_Setup_Func )(FT_ULong table_size, FT_ULong classTable, FT_ULong stateArray, FT_ULong entryTable, FT_ULong *classTable_length_p, FT_ULong *stateArray_length_p, FT_ULong *entryTable_length_p, GXV_Validator valid)
 
typedef struct
GXV_XStateTable_ValidatorRec_ 
GXV_XStateTable_ValidatorRec
 
typedef struct
GXV_XStateTable_ValidatorRec_
GXV_XStateTable_ValidatorRecData
 

Enumerations

enum  GXV_GlyphOffset_Format_ {
  GXV_GLYPHOFFSET_NONE = -1, GXV_GLYPHOFFSET_UCHAR = 2, GXV_GLYPHOFFSET_CHAR, GXV_GLYPHOFFSET_USHORT = 4,
  GXV_GLYPHOFFSET_SHORT, GXV_GLYPHOFFSET_ULONG = 8, GXV_GLYPHOFFSET_LONG
}
 
enum  GXV_LookupValue_SignSpec_ { GXV_LOOKUPVALUE_UNSIGNED = 0, GXV_LOOKUPVALUE_SIGNED }
 

Functions

 gxv_array_getlimits_byte (FT_Bytes table, FT_Bytes limit, FT_Byte *min, FT_Byte *max, GXV_Validator valid)
 
 gxv_array_getlimits_ushort (FT_Bytes table, FT_Bytes limit, FT_UShort *min, FT_UShort *max, GXV_Validator valid)
 
 gxv_BinSrchHeader_validate (FT_Bytes p, FT_Bytes limit, FT_UShort *unitSize_p, FT_UShort *nUnits_p, GXV_Validator valid)
 
 gxv_ctlPoint_validate (FT_UShort gid, FT_Short ctl_point, GXV_Validator valid)
 
 gxv_glyphid_validate (FT_UShort gid, GXV_Validator valid)
 
 gxv_LookupTable_validate (FT_Bytes table, FT_Bytes limit, GXV_Validator valid)
 
 gxv_odtect_add_range (FT_Bytes start, FT_ULong length, const FT_String *name, GXV_odtect_Range odtect)
 
 gxv_odtect_validate (GXV_odtect_Range odtect, GXV_Validator valid)
 
 gxv_set_length_by_ulong_offset (FT_ULong *offset, FT_ULong **length, FT_ULong *buff, FT_UInt nmemb, FT_ULong limit, GXV_Validator valid)
 
 gxv_set_length_by_ushort_offset (FT_UShort *offset, FT_UShort **length, FT_UShort *buff, FT_UInt nmemb, FT_UShort limit, GXV_Validator valid)
 
 gxv_sfntName_validate (FT_UShort name_index, FT_UShort min_index, FT_UShort max_index, GXV_Validator valid)
 
 gxv_StateTable_subtable_setup (FT_UShort table_size, FT_UShort classTable, FT_UShort stateArray, FT_UShort entryTable, FT_UShort *classTable_length_p, FT_UShort *stateArray_length_p, FT_UShort *entryTable_length_p, GXV_Validator valid)
 
 gxv_StateTable_validate (FT_Bytes table, FT_Bytes limit, GXV_Validator valid)
 
 gxv_XStateTable_subtable_setup (FT_ULong table_size, FT_ULong classTable, FT_ULong stateArray, FT_ULong entryTable, FT_ULong *classTable_length_p, FT_ULong *stateArray_length_p, FT_ULong *entryTable_length_p, GXV_Validator valid)
 
 gxv_XStateTable_validate (FT_Bytes table, FT_Bytes limit, GXV_Validator valid)
 

Macro Definition Documentation

#define DUMMY_LIMIT   0

Definition at line 79 of file gxvcommn.h.

#define FT_INVALID_ (   _prefix,
  _error 
)    ft_validator_error( valid->root, _prefix ## _error )

Definition at line 269 of file gxvcommn.h.

#define GXV_32BIT_ALIGNMENT_VALIDATE (   a)
Value:
{ \
if ( (a) & 3 ) \
} \
GLboolean GLboolean GLboolean GLboolean a
Definition: glew.h:8736
if(!yyg->yy_init)
#define FT_BEGIN_STMNT
Definition: ftconfig.h:300
#define FT_END_STMNT
Definition: ftconfig.h:301
#define FT_INVALID_OFFSET
Definition: ftvalid.h:129

Definition at line 317 of file gxvcommn.h.

Referenced by gxv_mort_subtable_type2_ligActionOffset_validate(), gxv_mort_validate(), gxv_morx_validate(), and gxv_trak_validate().

#define GXV_EXIT   do { } while ( 0 )

Definition at line 302 of file gxvcommn.h.

Referenced by gxv_BinSrchHeader_validate(), gxv_bsln_LookupValue_validate(), gxv_bsln_parts_fmt0_validate(), gxv_bsln_parts_fmt1_validate(), gxv_bsln_parts_fmt2_validate(), gxv_bsln_parts_fmt3_validate(), gxv_ClassTable_validate(), gxv_EntryTable_validate(), gxv_feat_name_index_validate(), gxv_feat_name_validate(), gxv_feat_registry_validate(), gxv_feat_setting_validate(), gxv_glyphid_validate(), gxv_just_actSubrecord_validate(), gxv_just_justClassTable_validate(), gxv_just_justData_lookuptable_validate(), gxv_just_justData_validate(), gxv_just_pcActionRecord_validate(), gxv_just_pcLookupTable_validate(), gxv_just_postcompTable_validate(), gxv_just_widthDeltaClusters_validate(), gxv_kern_coverage_validate(), gxv_kern_subtable_fmt0_pairs_validate(), gxv_kern_subtable_fmt0_validate(), gxv_kern_subtable_fmt1_validate(), gxv_kern_subtable_fmt2_clstbl_validate(), gxv_kern_subtable_fmt2_validate(), gxv_kern_subtable_fmt3_validate(), gxv_kern_subtable_validate(), gxv_lcar_LookupValue_validate(), gxv_lcar_partial_validate(), gxv_LookupTable_fmt0_validate(), gxv_LookupTable_fmt2_validate(), gxv_LookupTable_fmt4_validate(), gxv_LookupTable_fmt6_validate(), gxv_LookupTable_fmt8_validate(), gxv_LookupTable_validate(), gxv_mort_chain_validate(), gxv_mort_featurearray_validate(), gxv_mort_subtable_type0_validate(), gxv_mort_subtable_type1_substTable_validate(), gxv_mort_subtable_type1_validate(), gxv_mort_subtable_type2_ligatureTable_validate(), gxv_mort_subtable_type2_subtable_setup(), gxv_mort_subtable_type2_validate(), gxv_mort_subtable_type4_validate(), gxv_mort_subtable_type5_validate(), gxv_mort_subtables_validate(), gxv_morx_chain_validate(), gxv_morx_subtable_type0_validate(), gxv_morx_subtable_type1_validate(), gxv_morx_subtable_type2_ligatureTable_validate(), gxv_morx_subtable_type2_subtable_setup(), gxv_morx_subtable_type2_validate(), gxv_morx_subtable_type4_validate(), gxv_morx_subtable_type5_validate(), gxv_morx_subtables_validate(), gxv_odtect_validate(), gxv_prop_zero_advance_validate(), gxv_sfntName_validate(), gxv_StateArray_validate(), gxv_StateTable_validate(), gxv_trak_trackData_validate(), gxv_trak_trackTable_validate(), gxv_XEntryTable_validate(), gxv_XStateArray_validate(), and gxv_XStateTable_validate().

#define GXV_GLYPHOFFSET_FMT (   table)    ( valid->table.entry_glyphoffset_fmt )

Definition at line 133 of file gxvcommn.h.

Referenced by gxv_EntryTable_validate(), and gxv_XEntryTable_validate().

#define GXV_GLYPHOFFSET_SIZE (   table)    ( valid->table.entry_glyphoffset_fmt / 2 )

Definition at line 136 of file gxvcommn.h.

Referenced by gxv_EntryTable_validate(), and gxv_XEntryTable_validate().

#define GXV_LIMIT_CHECK (   _count)
Value:
if ( p + _count > ( limit? limit : valid->root->limit ) ) \
#define FT_INVALID_TOO_SHORT
Definition: ftvalid.h:125
if(!yyg->yy_init)
GLfloat GLfloat p
Definition: glew.h:14938
GLint limit
Definition: glew.h:11829
#define FT_END_STMNT
Definition: ftconfig.h:301

Definition at line 272 of file gxvcommn.h.

Referenced by gxv_array_getlimits_byte(), gxv_array_getlimits_ushort(), gxv_BinSrchHeader_validate(), gxv_bsln_LookupFmt4_transit(), gxv_bsln_parts_fmt0_validate(), gxv_bsln_parts_fmt2_validate(), gxv_bsln_validate(), gxv_ClassTable_validate(), gxv_EntryTable_validate(), gxv_feat_name_index_validate(), gxv_feat_name_validate(), gxv_feat_setting_validate(), gxv_feat_validate(), gxv_just_actSubrecord_type0_validate(), gxv_just_actSubrecord_type1_validate(), gxv_just_actSubrecord_type2_validate(), gxv_just_actSubrecord_type4_validate(), gxv_just_actSubrecord_type5_validate(), gxv_just_actSubrecord_validate(), gxv_just_justClassTable_validate(), gxv_just_justData_validate(), gxv_just_pcActionRecord_validate(), gxv_just_validate(), gxv_just_wdc_entry_validate(), gxv_just_wdp_entry_validate(), gxv_kern_subtable_fmt0_validate(), gxv_kern_subtable_fmt1_entry_validate(), gxv_kern_subtable_fmt1_valueTable_load(), gxv_kern_subtable_fmt2_clstbl_validate(), gxv_kern_subtable_fmt2_validate(), gxv_kern_subtable_fmt3_validate(), gxv_kern_subtable_validate(), gxv_kern_validate_generic(), gxv_lcar_LookupFmt4_transit(), gxv_lcar_LookupValue_validate(), gxv_lcar_validate(), gxv_LookupTable_fmt0_validate(), gxv_LookupTable_fmt2_validate(), gxv_LookupTable_fmt4_validate(), gxv_LookupTable_fmt6_validate(), gxv_LookupTable_fmt8_validate(), gxv_LookupTable_validate(), gxv_mort_chain_validate(), gxv_mort_featurearray_validate(), gxv_mort_subtable_type0_validate(), gxv_mort_subtable_type1_substitutionTable_load(), gxv_mort_subtable_type1_substTable_validate(), gxv_mort_subtable_type1_validate(), gxv_mort_subtable_type2_ligatureTable_validate(), gxv_mort_subtable_type2_opttable_load(), gxv_mort_subtable_type2_validate(), gxv_mort_subtable_type4_lookupfmt4_transit(), gxv_mort_subtable_type5_InsertList_validate(), gxv_mort_subtable_type5_validate(), gxv_mort_subtables_validate(), gxv_mort_validate(), gxv_morx_chain_validate(), gxv_morx_subtable_type0_validate(), gxv_morx_subtable_type1_LookupFmt4_transit(), gxv_morx_subtable_type1_substitutionTable_load(), gxv_morx_subtable_type1_substitutionTable_validate(), gxv_morx_subtable_type1_validate(), gxv_morx_subtable_type2_ligatureTable_validate(), gxv_morx_subtable_type2_opttable_load(), gxv_morx_subtable_type2_validate(), gxv_morx_subtable_type5_insertionGlyphList_load(), gxv_morx_subtable_type5_InsertList_validate(), gxv_morx_subtable_type5_validate(), gxv_morx_subtables_validate(), gxv_morx_validate(), gxv_opbd_LookupValue_validate(), gxv_opbd_validate(), gxv_prop_LookupFmt4_transit(), gxv_prop_validate(), gxv_StateArray_validate(), gxv_StateTable_validate(), gxv_trak_trackData_validate(), gxv_trak_trackTable_validate(), gxv_trak_validate(), gxv_XClassTable_lookupfmt4_transit(), gxv_XEntryTable_validate(), gxv_XStateArray_validate(), and gxv_XStateTable_validate().

#define GXV_NAME_ENTER (   name)    do { } while ( 0 )

Definition at line 301 of file gxvcommn.h.

Referenced by gxv_BinSrchHeader_validate(), gxv_bsln_LookupValue_validate(), gxv_bsln_parts_fmt0_validate(), gxv_bsln_parts_fmt1_validate(), gxv_bsln_parts_fmt2_validate(), gxv_bsln_parts_fmt3_validate(), gxv_ClassTable_validate(), gxv_EntryTable_validate(), gxv_feat_name_index_validate(), gxv_feat_name_validate(), gxv_feat_registry_validate(), gxv_feat_setting_validate(), gxv_just_actSubrecord_validate(), gxv_just_justClassTable_validate(), gxv_just_justData_validate(), gxv_just_pcLookupTable_validate(), gxv_just_postcompTable_validate(), gxv_just_widthDeltaClusters_validate(), gxv_kern_coverage_validate(), gxv_kern_subtable_fmt0_pairs_validate(), gxv_kern_subtable_fmt0_validate(), gxv_kern_subtable_fmt1_validate(), gxv_kern_subtable_fmt2_clstbl_validate(), gxv_kern_subtable_fmt2_validate(), gxv_kern_subtable_fmt3_validate(), gxv_kern_subtable_validate(), gxv_lcar_LookupValue_validate(), gxv_lcar_partial_validate(), gxv_LookupTable_fmt0_validate(), gxv_LookupTable_fmt2_validate(), gxv_LookupTable_fmt4_validate(), gxv_LookupTable_fmt6_validate(), gxv_LookupTable_fmt8_validate(), gxv_LookupTable_validate(), gxv_mort_chain_validate(), gxv_mort_featurearray_validate(), gxv_mort_subtable_type0_validate(), gxv_mort_subtable_type1_substTable_validate(), gxv_mort_subtable_type1_validate(), gxv_mort_subtable_type2_ligatureTable_validate(), gxv_mort_subtable_type2_subtable_setup(), gxv_mort_subtable_type2_validate(), gxv_mort_subtable_type4_validate(), gxv_mort_subtable_type5_validate(), gxv_mort_subtables_validate(), gxv_morx_chain_validate(), gxv_morx_subtable_type0_validate(), gxv_morx_subtable_type1_validate(), gxv_morx_subtable_type2_ligatureTable_validate(), gxv_morx_subtable_type2_subtable_setup(), gxv_morx_subtable_type2_validate(), gxv_morx_subtable_type4_validate(), gxv_morx_subtable_type5_validate(), gxv_morx_subtables_validate(), gxv_odtect_validate(), gxv_prop_zero_advance_validate(), gxv_sfntName_validate(), gxv_StateArray_validate(), gxv_StateTable_validate(), gxv_trak_trackData_validate(), gxv_trak_trackTable_validate(), gxv_XEntryTable_validate(), gxv_XStateArray_validate(), and gxv_XStateTable_validate().

#define GXV_ODTECT (   n,
  odtect 
)
Value:
GXV_odtect_DataRec odtect ## _range[n]; \
GXV_odtect_RangeRec odtect ## _rec = { 0, NULL }; \
#define NULL
Definition: ftobjs.h:61
struct GXV_odtect_RangeRec_ * GXV_odtect_Range
GLclampd n
Definition: glew.h:7287
struct GXV_odtect_RangeRec_ GXV_odtect_RangeRec

Definition at line 562 of file gxvcommn.h.

Referenced by gxv_just_justData_validate(), gxv_just_validate(), gxv_kern_subtable_fmt2_validate(), gxv_trak_trackData_validate(), and gxv_trak_validate().

#define GXV_ODTECT_INIT (   odtect)
Value:
FT_BEGIN_STMNT \
odtect ## _rec.nRanges = 0; \
odtect ## _rec.range = odtect ## _range; \
odtect = & odtect ## _rec; \
#define FT_END_STMNT
Definition: ftconfig.h:301

Definition at line 567 of file gxvcommn.h.

Referenced by gxv_just_justData_validate(), gxv_just_validate(), gxv_kern_subtable_fmt2_validate(), gxv_trak_trackData_validate(), and gxv_trak_validate().

#define GXV_STATEHEADER_SIZE   GXV_STATETABLE_HEADER_SIZE

Definition at line 521 of file gxvcommn.h.

#define GXV_STATETABLE_HEADER_SIZE   ( 2 + 2 + 2 + 2 )
#define GXV_SUBTABLE_LIMIT_CHECK (   _count)
Value:
if ( ( p + (_count) - valid->subtable_start ) > \
valid->subtable_length ) \
#define FT_INVALID_TOO_SHORT
Definition: ftvalid.h:125
if(!yyg->yy_init)
GLfloat GLfloat p
Definition: glew.h:14938
#define FT_END_STMNT
Definition: ftconfig.h:301

Definition at line 510 of file gxvcommn.h.

#define GXV_SUBTABLE_OFFSET_CHECK (   _offset)
Value:
if ( (_offset) > valid->subtable_length ) \
if(!yyg->yy_init)
#define FT_END_STMNT
Definition: ftconfig.h:301
#define FT_INVALID_OFFSET
Definition: ftvalid.h:129

Definition at line 504 of file gxvcommn.h.

#define GXV_TABLE_DATA (   tag,
  field 
)    ( ( (GXV_ ## tag ## _Data)valid->table_data )->field )

Definition at line 265 of file gxvcommn.h.

#define GXV_TRACE (   s)    do { } while ( 0 )

Definition at line 304 of file gxvcommn.h.

Referenced by gxv_BinSrchHeader_check_consistency(), gxv_BinSrchHeader_validate(), gxv_bsln_parts_fmt2_validate(), gxv_bsln_validate(), gxv_ClassTable_validate(), gxv_EntryTable_validate(), gxv_feat_name_index_validate(), gxv_feat_registry_validate(), gxv_feat_validate(), gxv_glyphid_validate(), gxv_just_actSubrecord_type0_validate(), gxv_just_actSubrecord_type4_validate(), gxv_just_actSubrecord_type5_validate(), gxv_just_check_max_gid(), gxv_just_justClassTable_validate(), gxv_just_justData_validate(), gxv_just_pcActionRecord_validate(), gxv_just_validate(), gxv_just_wdc_entry_validate(), gxv_just_wdp_entry_validate(), gxv_kern_coverage_classic_apple_validate(), gxv_kern_coverage_classic_microsoft_validate(), gxv_kern_coverage_new_apple_validate(), gxv_kern_coverage_validate(), gxv_kern_subtable_fmt0_pairs_validate(), gxv_kern_subtable_fmt2_clstbl_validate(), gxv_kern_subtable_fmt2_validate(), gxv_kern_subtable_fmt3_validate(), gxv_kern_subtable_validate(), gxv_kern_validate_generic(), gxv_LookupTable_fmt0_validate(), gxv_LookupTable_fmt2_validate(), gxv_LookupTable_fmt4_validate(), gxv_LookupTable_fmt6_validate(), gxv_LookupTable_validate(), gxv_mort_coverage_validate(), gxv_mort_feature_validate(), gxv_mort_subtable_type0_entry_validate(), gxv_mort_subtable_type1_entry_validate(), gxv_mort_subtable_type1_substTable_validate(), gxv_mort_subtable_type2_ligActionOffset_validate(), gxv_mort_subtable_type2_opttable_load(), gxv_mort_subtable_type2_subtable_setup(), gxv_mort_subtable_type5_InsertList_validate(), gxv_mort_subtables_validate(), gxv_mort_validate(), gxv_morx_subtable_type0_entry_validate(), gxv_morx_subtable_type1_entry_validate(), gxv_morx_subtable_type1_LookupValue_validate(), gxv_morx_subtable_type2_entry_validate(), gxv_morx_subtable_type2_ligActionIndex_validate(), gxv_morx_subtable_type2_opttable_load(), gxv_morx_subtable_type2_subtable_setup(), gxv_morx_subtable_type5_InsertList_validate(), gxv_morx_subtables_validate(), gxv_morx_validate(), gxv_odtect_validate(), gxv_opbd_validate(), gxv_prop_property_validate(), gxv_prop_validate(), gxv_prop_zero_advance_validate(), gxv_sfntName_validate(), gxv_StateArray_validate(), gxv_StateTable_validate(), gxv_trak_trackData_validate(), gxv_trak_trackTable_validate(), gxv_trak_validate(), gxv_XEntryTable_validate(), gxv_XStateArray_validate(), and gxv_XStateTable_validate().

#define GXV_TRACE_HEXDUMP (   p,
  len 
)
Value:
{ \
for ( b = p; b < (FT_Bytes)p + len; b++ ) \
FT_TRACE1(("\\x%02x", *b)) ; \
} \
GLenum GLsizei len
Definition: glew.h:7035
#define FT_TRACE1(varformat)
Definition: ftdebug.h:158
for(;;)
GLfloat GLfloat p
Definition: glew.h:14938
#define FT_BEGIN_STMNT
Definition: ftconfig.h:300
const FT_Byte * FT_Bytes
Definition: fttypes.h:161
#define FT_END_STMNT
Definition: ftconfig.h:301
GLdouble GLdouble GLdouble b
Definition: glew.h:8383

Definition at line 334 of file gxvcommn.h.

#define GXV_TRACE_HEXDUMP_C (   p,
  len 
)
Value:
{ \
for ( b = p; b < (FT_Bytes)p + len; b++ ) \
if ( 0x40 < *b && *b < 0x7e ) \
FT_TRACE1(("%c", *b)) ; \
FT_TRACE1(("\\x%02x", *b)) ; \
} \
GLenum GLsizei len
Definition: glew.h:7035
#define FT_TRACE1(varformat)
Definition: ftdebug.h:158
for(;;)
GLfloat GLfloat p
Definition: glew.h:14938
#define FT_BEGIN_STMNT
Definition: ftconfig.h:300
const FT_Byte * FT_Bytes
Definition: fttypes.h:161
#define FT_END_STMNT
Definition: ftconfig.h:301
GLdouble GLdouble GLdouble b
Definition: glew.h:8383

Definition at line 345 of file gxvcommn.h.

#define GXV_TRACE_HEXDUMP_SFNTNAME (   n)    GXV_TRACE_HEXDUMP( n.string, n.string_len )

Definition at line 359 of file gxvcommn.h.

Referenced by gxv_sfntName_validate().

#define GXV_USHORT_TO_SHORT (   _us)    ( ( 0x8000U < ( _us ) ) ? ( ( _us ) - 0x8000U ) : ( _us ) )

Definition at line 517 of file gxvcommn.h.

#define GXV_XSTATEHEADER_SIZE   GXV_XSTATETABLE_HEADER_SIZE

Definition at line 524 of file gxvcommn.h.

#define GXV_XSTATETABLE_HEADER_SIZE   ( 4 + 4 + 4 + 4 )

Definition at line 523 of file gxvcommn.h.

#define IS_PARANOID_VALIDATION   ( valid->root->level >= FT_VALIDATE_PARANOID )

Definition at line 65 of file gxvcommn.h.

Referenced by gxv_feat_validate(), and gxv_just_actSubrecord_type4_validate().

Typedef Documentation

typedef GXV_LookupValueDesc(* GXV_Lookup_Fmt4_Transit_Func)(FT_UShort relative_gindex, GXV_LookupValueCPtr base_value_p, FT_Bytes lookuptbl_limit, GXV_Validator valid)

Definition at line 112 of file gxvcommn.h.

typedef void(* GXV_Lookup_Value_Validate_Func)(FT_UShort glyph, GXV_LookupValueCPtr value_p, GXV_Validator valid)

Definition at line 107 of file gxvcommn.h.

Definition at line 96 of file gxvcommn.h.

typedef void(* GXV_StateTable_Entry_Validate_Func)(FT_Byte state, FT_UShort flags, GXV_StateTable_GlyphOffsetCPtr glyphOffset_p, FT_Bytes statetable_table, FT_Bytes statetable_limit, GXV_Validator valid)

Definition at line 166 of file gxvcommn.h.

typedef void(* GXV_StateTable_OptData_Load_Func)(FT_Bytes table, FT_Bytes limit, GXV_Validator valid)

Definition at line 175 of file gxvcommn.h.

typedef void(* GXV_StateTable_Subtable_Setup_Func)(FT_UShort table_size, FT_UShort classTable, FT_UShort stateArray, FT_UShort entryTable, FT_UShort *classTable_length_p, FT_UShort *stateArray_length_p, FT_UShort *entryTable_length_p, GXV_Validator valid)

Definition at line 156 of file gxvcommn.h.

typedef void(* GXV_Validate_Func)(FT_Bytes table, FT_Bytes limit, GXV_Validator valid)

Definition at line 82 of file gxvcommn.h.

Definition at line 76 of file gxvcommn.h.

typedef void(* GXV_XStateTable_Entry_Validate_Func)(FT_UShort state, FT_UShort flags, GXV_StateTable_GlyphOffsetCPtr glyphOffset_p, FT_Bytes xstatetable_table, FT_Bytes xstatetable_limit, GXV_Validator valid)

Definition at line 208 of file gxvcommn.h.

typedef void(* GXV_XStateTable_Subtable_Setup_Func)(FT_ULong table_size, FT_ULong classTable, FT_ULong stateArray, FT_ULong entryTable, FT_ULong *classTable_length_p, FT_ULong *stateArray_length_p, FT_ULong *entryTable_length_p, GXV_Validator valid)

Definition at line 198 of file gxvcommn.h.

Enumeration Type Documentation

Enumerator
GXV_GLYPHOFFSET_NONE 
GXV_GLYPHOFFSET_UCHAR 
GXV_GLYPHOFFSET_CHAR 
GXV_GLYPHOFFSET_USHORT 
GXV_GLYPHOFFSET_SHORT 
GXV_GLYPHOFFSET_ULONG 
GXV_GLYPHOFFSET_LONG 

Definition at line 120 of file gxvcommn.h.

Enumerator
GXV_LOOKUPVALUE_UNSIGNED 
GXV_LOOKUPVALUE_SIGNED 

Definition at line 98 of file gxvcommn.h.

Function Documentation

gxv_array_getlimits_byte ( FT_Bytes  table,
FT_Bytes  limit,
FT_Byte min,
FT_Byte max,
GXV_Validator  valid 
)

Definition at line 181 of file gxvcommn.c.

References FT_MAX, FT_MIN, FT_NEXT_BYTE, and GXV_LIMIT_CHECK.

Referenced by gxv_kern_subtable_fmt3_validate().

gxv_array_getlimits_ushort ( FT_Bytes  table,
FT_Bytes  limit,
FT_UShort min,
FT_UShort max,
GXV_Validator  valid 
)

Definition at line 210 of file gxvcommn.c.

References FT_MAX, FT_MIN, FT_NEXT_USHORT, and GXV_LIMIT_CHECK.

Referenced by gxv_kern_subtable_fmt2_clstbl_validate().

gxv_set_length_by_ulong_offset ( FT_ULong offset,
FT_ULong **  length,
FT_ULong buff,
FT_UInt  nmemb,
FT_ULong  limit,
GXV_Validator  valid 
)
gxv_set_length_by_ushort_offset ( FT_UShort offset,
FT_UShort **  length,
FT_UShort buff,
FT_UInt  nmemb,
FT_UShort  limit,
GXV_Validator  valid 
)
gxv_StateTable_subtable_setup ( FT_UShort  table_size,
FT_UShort  classTable,
FT_UShort  stateArray,
FT_UShort  entryTable,
FT_UShort classTable_length_p,
FT_UShort stateArray_length_p,
FT_UShort entryTable_length_p,
GXV_Validator  valid 
)
gxv_XStateTable_subtable_setup ( FT_ULong  table_size,
FT_ULong  classTable,
FT_ULong  stateArray,
FT_ULong  entryTable,
FT_ULong classTable_length_p,
FT_ULong stateArray_length_p,
FT_ULong entryTable_length_p,
GXV_Validator  valid 
)

Definition at line 1316 of file gxvcommn.c.

References gxv_set_length_by_ulong_offset().

Referenced by gxv_XStateTable_validate().