comparison src/libpst.h @ 153:0b1766da9be8

use AM_ICONV for better portability of the library location. structure renaming to be more specific.
author Carl Byington <carl@five-ten-sg.com>
date Thu, 12 Mar 2009 15:17:32 -0700
parents edebaf0e87d2
children 581fab9f1dc7
comparison
equal deleted inserted replaced
152:edebaf0e87d2 153:0b1766da9be8
492 char *to; 492 char *to;
493 int needfree; 493 int needfree;
494 } pst_block_offset_pointer; 494 } pst_block_offset_pointer;
495 495
496 496
497 typedef struct pst_num_item { 497 typedef struct pst_mapi_element {
498 uint32_t id; // not an id1 or id2, this is actually some sort of type code 498 uint32_t mapi_id;
499 char *data; 499 char *data;
500 uint32_t type; 500 uint32_t type;
501 size_t size; 501 size_t size;
502 char *extra; 502 char *extra;
503 } pst_num_item; 503 } pst_mapi_element;
504 504
505 505
506 typedef struct pst_num_array { 506 typedef struct pst_mapi_object {
507 int32_t count_item; 507 int32_t count_elements; // count of active elements
508 int32_t orig_count; 508 int32_t orig_count; // originally allocated elements
509 int32_t count_array; 509 int32_t count_objects; // number of mapi objects in the list
510 struct pst_num_item ** items; 510 struct pst_mapi_element **elements;
511 struct pst_num_array *next; 511 struct pst_mapi_object *next;
512 } pst_num_array; 512 } pst_mapi_object;
513 513
514 514
515 typedef struct pst_holder { 515 typedef struct pst_holder {
516 char **buf; 516 char **buf;
517 FILE *fp; 517 FILE *fp;
545 545
546 int pst_build_id_ptr(pst_file *pf, int64_t offset, int32_t depth, uint64_t linku1, uint64_t start_val, uint64_t end_val); 546 int pst_build_id_ptr(pst_file *pf, int64_t offset, int32_t depth, uint64_t linku1, uint64_t start_val, uint64_t end_val);
547 int pst_build_desc_ptr(pst_file *pf, int64_t offset, int32_t depth, uint64_t linku1, uint64_t start_val, uint64_t end_val); 547 int pst_build_desc_ptr(pst_file *pf, int64_t offset, int32_t depth, uint64_t linku1, uint64_t start_val, uint64_t end_val);
548 pst_item* pst_getItem(pst_file *pf, pst_desc_ll *d_ptr); 548 pst_item* pst_getItem(pst_file *pf, pst_desc_ll *d_ptr);
549 pst_item* pst_parse_item (pst_file *pf, pst_desc_ll *d_ptr, pst_id2_ll *m_head); 549 pst_item* pst_parse_item (pst_file *pf, pst_desc_ll *d_ptr, pst_id2_ll *m_head);
550 pst_num_array* pst_parse_block(pst_file *pf, uint64_t block_id, pst_id2_ll *i2_head, pst_num_array *na_head); 550 pst_mapi_object* pst_parse_block(pst_file *pf, uint64_t block_id, pst_id2_ll *i2_head);
551 int pst_process(pst_num_array *list, pst_item *item, pst_item_attach *attach); 551 int pst_process(pst_mapi_object *list, pst_item *item, pst_item_attach *attach);
552 void pst_free_list(pst_num_array *list); 552 void pst_free_list(pst_mapi_object *list);
553 void pst_freeItem(pst_item *item); 553 void pst_freeItem(pst_item *item);
554 void pst_free_id2(pst_id2_ll * head); 554 void pst_free_id2(pst_id2_ll * head);
555 void pst_free_id (pst_index_ll *head); 555 void pst_free_id (pst_index_ll *head);
556 void pst_free_desc (pst_desc_ll *head); 556 void pst_free_desc (pst_desc_ll *head);
557 void pst_free_xattrib(pst_x_attrib_ll *x); 557 void pst_free_xattrib(pst_x_attrib_ll *x);