comparison src/libpst.h @ 199:e3a46f66332b

more changes in recurrence decoding
author Carl Byington <carl@five-ten-sg.com>
date Wed, 13 May 2009 11:59:55 -0700
parents 7c60d6d1c681
children 3850a3b11745
comparison
equal deleted inserted replaced
198:7c60d6d1c681 199:e3a46f66332b
653 @li 2 never terminates 653 @li 2 never terminates
654 */ 654 */
655 uint32_t termination; 655 uint32_t termination;
656 /** recurrence interval in terms of the recurrence type */ 656 /** recurrence interval in terms of the recurrence type */
657 uint32_t interval; 657 uint32_t interval;
658 /** bit mask of days of the week */
659 uint32_t bydaymask;
660 /** day of month for monthly and yearly recurrences */
661 uint32_t dayofmonth;
662 /** month of year for yearly recurrences */
663 uint32_t monthofyear;
664 /** occurence of day for 2nd Tuesday of month, in which case position is 2 */
665 uint32_t position;
658 /** number of occurrences, even if recurrence terminates based on date */ 666 /** number of occurrences, even if recurrence terminates based on date */
659 uint32_t count; 667 uint32_t count;
660 // there is more data, including the termination date, 668 // there is more data, including the termination date,
661 // but we can get that from other mapi elements. 669 // but we can get that from other mapi elements.
662 } pst_recurrence; 670 } pst_recurrence;
1023 * @return pointer to output string, either the input pointer if 1031 * @return pointer to output string, either the input pointer if
1024 * there are no characters that need escapes, or a pointer 1032 * there are no characters that need escapes, or a pointer
1025 * to a different buffer containing the escaped string. In 1033 * to a different buffer containing the escaped string. In
1026 * either case, you don't need to free this returned pointer. 1034 * either case, you don't need to free this returned pointer.
1027 */ 1035 */
1028 char * pst_rfc2426_escape(char *str); 1036 char* pst_rfc2426_escape(char *str);
1029 1037
1030 1038
1031 /** Convert a FILETIME into rfc2425 date/time format 1953-10-15T23:10:00Z 1039 /** Convert a FILETIME into rfc2425 date/time format 1953-10-15T23:10:00Z
1032 * which is the same as one of the forms in the ISO3601 standard 1040 * which is the same as one of the forms in the ISO3601 standard
1033 * @param ft time to be converted 1041 * @param[in] ft time to be converted
1042 * @param[in] buflen length of the output buffer
1043 * @param[out] result pointer to output buffer, must be at least 30 bytes
1034 * @return time in rfc2425 format 1044 * @return time in rfc2425 format
1035 */ 1045 */
1036 char * pst_rfc2425_datetime_format(const FILETIME *ft); 1046 char* pst_rfc2425_datetime_format(const FILETIME* ft, int buflen, char* result);
1037 1047
1038 1048
1039 /** Convert a FILETIME into rfc2445 date/time format 19531015T231000Z 1049 /** Convert a FILETIME into rfc2445 date/time format 19531015T231000Z
1040 * @param ft time to be converted 1050 * @param[in] ft time to be converted
1051 * @param[in] buflen length of the output buffer
1052 * @param[out] result pointer to output buffer, must be at least 30 bytes
1041 * @return time in rfc2445 format 1053 * @return time in rfc2445 format
1042 */ 1054 */
1043 char * pst_rfc2445_datetime_format(const FILETIME *ft); 1055 char* pst_rfc2445_datetime_format(const FILETIME* ft, int buflen, char* result);
1044 1056
1045 1057
1046 /** Convert the current time rfc2445 date/time format 19531015T231000Z 1058 /** Convert the current time rfc2445 date/time format 19531015T231000Z
1047 * @return time in rfc2445 format 1059 * @return time in rfc2445 format
1048 */ 1060 */
1049 char * pst_rfc2445_datetime_format_now(); 1061 char* pst_rfc2445_datetime_format_now(int buflen, char* result);
1050 1062
1051 1063
1052 /** Get the default character set for this item. This is used to find 1064 /** Get the default character set for this item. This is used to find
1053 * the charset for pst_string elements that are not already in utf8 encoding. 1065 * the charset for pst_string elements that are not already in utf8 encoding.
1054 * @param item pointer to the mapi item of interest 1066 * @param item pointer to the mapi item of interest