Documentation
¶
Index ¶
- Constants
- Variables
- func ABEIDEqual(first, second ABEID) bool
- func DEFINE_GUID(l uint32, w1, w2 uint16, b [8]byte) [16]byte
- func KCErrorText(code KCError) string
- func SetX509KeyPairToTLSConfig(certFile, keyFile string, config *tls.Config) (*tls.Config, error)
- type ABEID
- type ABFlag
- type ABResolveNamesResponse
- type GetUserResponse
- type KCC
- func (c *KCC) ABResolveNames(ctx context.Context, props []PT, request map[PT]interface{}, ...) (*ABResolveNamesResponse, error)
- func (c *KCC) GetUser(ctx context.Context, userEntryID string, sessionID KCSessionID) (*GetUserResponse, error)
- func (c *KCC) Logoff(ctx context.Context, sessionID KCSessionID) (*LogoffResponse, error)
- func (c *KCC) Logon(ctx context.Context, username, password string, logonFlags KCFlag) (*LogonResponse, error)
- func (c *KCC) ResolveUsername(ctx context.Context, username string, sessionID KCSessionID) (*ResolveUserResponse, error)
- func (c *KCC) SSOLogon(ctx context.Context, prefix SSOType, username string, input []byte, ...) (*LogonResponse, error)
- func (c *KCC) SetClientApp(name, version string) error
- func (c *KCC) String() string
- type KCError
- type KCFlag
- type KCSessionID
- type LogoffResponse
- type LogonResponse
- type MAPIType
- type MVPropMap
- type MVPropMapValue
- type PT
- type PropMap
- type PropMapValue
- type PropTagRowSet
- type PropTagRowSetValue
- type ResolveUserResponse
- type SOAPClient
- type SOAPClientConfig
- type SOAPHTTPClient
- type SOAPSocketClient
- type SSOType
- type Session
- func CreateSession(ctx context.Context, c *KCC, id KCSessionID, serverGUID string, active bool) (*Session, error)
- func NewSSOSession(ctx context.Context, c *KCC, prefix SSOType, username string, input []byte, ...) (*Session, error)
- func NewSession(ctx context.Context, c *KCC, username, password string) (*Session, error)
- func (s *Session) Context() context.Context
- func (s *Session) Destroy(ctx context.Context, logoff bool) error
- func (s *Session) ID() KCSessionID
- func (s *Session) IsActive() bool
- func (s *Session) Refresh() error
- func (s *Session) StartAutoRefresh() error
- func (s *Session) StopAutoRefresh() error
- func (s *Session) String() string
- type User
Constants ¶
const ( MV_FLAG = 0x1000 PT_UNSPECIFIED uint64 = 0x0000 PT_NULL uint64 = 0x0001 PT_SHORT uint64 = 0x0002 PT_LONG uint64 = 0x0003 PT_FLOAT uint64 = 0x0004 PT_DOUBLE uint64 = 0x0005 PT_CURRENCY uint64 = 0x0006 PT_APPTIME uint64 = 0x0007 PT_ERROR uint64 = 0x000A PT_BOOLEAN uint64 = 0x000B PT_OBJECT uint64 = 0x000D PT_LONGLONG uint64 = 0x0014 PT_STRING8 uint64 = 0x001E PT_UNICODE uint64 = 0x001F PT_SYSTIME uint64 = 0x0040 PT_CLSID uint64 = 0x0048 PT_BINARY uint64 = 0x0102 PT_MV_SHORT = (MV_FLAG | PT_SHORT) PT_MV_LONG = (MV_FLAG | PT_LONG) PT_MV_FLOAT = (MV_FLAG | PT_FLOAT) PT_MV_DOUBLE = (MV_FLAG | PT_DOUBLE) PT_MV_CURRENCY = (MV_FLAG | PT_CURRENCY) PT_MV_APPTIME = (MV_FLAG | PT_APPTIME) PT_MV_SYSTIME = (MV_FLAG | PT_SYSTIME) PT_MV_STRING8 = (MV_FLAG | PT_STRING8) PT_MV_BINARY = (MV_FLAG | PT_BINARY) PT_MV_UNICODE = (MV_FLAG | PT_UNICODE) PT_MV_CLSID = (MV_FLAG | PT_CLSID) PT_MV_LONGLONG = (MV_FLAG | PT_LONGLONG) PT_TSTRING = PT_UNICODE PT_MV_TSTRING = (MV_FLAG | PT_UNICODE) PROP_TYPE_MASK uint64 = 0x0000FFFF /* Alternate property type names for ease of use */ PT_I2 = PT_SHORT PT_I4 = PT_LONG PT_R4 = PT_FLOAT PT_R8 = PT_DOUBLE PT_I8 = PT_LONGLONG )
Property value types as defined in mapi4linux/include/mapitags.h and mapi4linux/include/mapidefs.h. This defines all property types independently from kcc-go support.
const (
ABEIDV1VersionNumber = 1
)
Version numbers as used by Kopano ABEID implementations.
const KCSuccess = KCERR_NONE
KCSuccess defines success response as returned by Kopano core.
Variables ¶
var ( DefaultHTTPTimeoutSeconds int64 = 10 DefaultHTTPMaxIdleConns = 100 DefaultHTTPMaxIdleConnsPerHost = 100 DefaultHTTPIdleConnTimeoutSeconds int64 = 90 DefaultHTTPDialTimeoutSeconds int64 = 30 DefaultHTTPKeepAliveSeconds int64 = 120 DefaultHTTPDualStack = true )
Default HTTP client settings.
var ( // DefaultURI is the default Kopano server URI to be used when no URI is // given when constructing a KCC or SOAP instance. DefaultURI = "http://127.0.0.1:236" // DefaultAppName is the default client app name as sent to the server. DefaultAppName = "kcc-go" // Version specifies the version string of this client implementation. Version = "0.0.0-dev" // ClientVersion specifies the version of this clients API implementation, ClientVersion = 8 )
var ( PR_ACKNOWLEDGEMENT_MODE = propTag(PT_LONG, 0x0001) PR_ALTERNATE_RECIPIENT_ALLOWED = propTag(PT_BOOLEAN, 0x0002) PR_AUTHORIZING_USERS = propTag(PT_BINARY, 0x0003) PR_AUTO_FORWARD_COMMENT = propTag(PT_TSTRING, 0x0004) PR_AUTO_FORWARD_COMMENT_W = propTag(PT_UNICODE, 0x0004) PR_AUTO_FORWARD_COMMENT_A = propTag(PT_STRING8, 0x0004) PR_AUTO_FORWARDED = propTag(PT_BOOLEAN, 0x0005) PR_CONTENT_CONFIDENTIALITY_ALGORITHM_ID = propTag(PT_BINARY, 0x0006) PR_CONTENT_CORRELATOR = propTag(PT_BINARY, 0x0007) PR_CONTENT_IDENTIFIER = propTag(PT_TSTRING, 0x0008) PR_CONTENT_IDENTIFIER_W = propTag(PT_UNICODE, 0x0008) PR_CONTENT_IDENTIFIER_A = propTag(PT_STRING8, 0x0008) PR_CONTENT_LENGTH = propTag(PT_LONG, 0x0009) PR_CONTENT_RETURN_REQUESTED = propTag(PT_BOOLEAN, 0x000A) PR_CONVERSATION_KEY = propTag(PT_BINARY, 0x000B) PR_CONVERSION_EITS = propTag(PT_BINARY, 0x000C) PR_CONVERSION_WITH_LOSS_PROHIBITED = propTag(PT_BOOLEAN, 0x000D) PR_CONVERTED_EITS = propTag(PT_BINARY, 0x000E) PR_DEFERRED_DELIVERY_TIME = propTag(PT_SYSTIME, 0x000F) PR_DELIVER_TIME = propTag(PT_SYSTIME, 0x0010) PR_DISCARD_REASON = propTag(PT_LONG, 0x0011) PR_DISCLOSURE_OF_RECIPIENTS = propTag(PT_BOOLEAN, 0x0012) PR_DL_EXPANSION_HISTORY = propTag(PT_BINARY, 0x0013) PR_DL_EXPANSION_PROHIBITED = propTag(PT_BOOLEAN, 0x0014) PR_EXPIRY_TIME = propTag(PT_SYSTIME, 0x0015) PR_IMPLICIT_CONVERSION_PROHIBITED = propTag(PT_BOOLEAN, 0x0016) PR_IMPORTANCE = propTag(PT_LONG, 0x0017) PR_IPM_ID = propTag(PT_BINARY, 0x0018) PR_LATEST_DELIVERY_TIME = propTag(PT_SYSTIME, 0x0019) PR_MESSAGE_CLASS = propTag(PT_TSTRING, 0x001A) PR_MESSAGE_CLASS_W = propTag(PT_UNICODE, 0x001A) PR_MESSAGE_CLASS_A = propTag(PT_STRING8, 0x001A) PR_MESSAGE_DELIVERY_ID = propTag(PT_BINARY, 0x001B) PR_MESSAGE_SECURITY_LABEL = propTag(PT_BINARY, 0x001E) PR_OBSOLETED_IPMS = propTag(PT_BINARY, 0x001F) PR_ORIGINALLY_INTENDED_RECIPIENT_NAME = propTag(PT_BINARY, 0x0020) PR_ORIGINAL_EITS = propTag(PT_BINARY, 0x0021) PR_ORIGINATOR_CERTIFICATE = propTag(PT_BINARY, 0x0022) PR_ORIGINATOR_DELIVERY_REPORT_REQUESTED = propTag(PT_BOOLEAN, 0x0023) PR_ORIGINATOR_RETURN_ADDRESS = propTag(PT_BINARY, 0x0024) PR_PARENT_KEY = propTag(PT_BINARY, 0x0025) PR_PRIORITY = propTag(PT_LONG, 0x0026) PR_ORIGIN_CHECK = propTag(PT_BINARY, 0x0027) PR_PROOF_OF_SUBMISSION_REQUESTED = propTag(PT_BOOLEAN, 0x0028) PR_READ_RECEIPT_REQUESTED = propTag(PT_BOOLEAN, 0x0029) PR_RECEIPT_TIME = propTag(PT_SYSTIME, 0x002A) PR_RECIPIENT_REASSIGNMENT_PROHIBITED = propTag(PT_BOOLEAN, 0x002B) PR_REDIRECTION_HISTORY = propTag(PT_BINARY, 0x002C) PR_RELATED_IPMS = propTag(PT_BINARY, 0x002D) PR_ORIGINAL_SENSITIVITY = propTag(PT_LONG, 0x002E) PR_LANGUAGES = propTag(PT_TSTRING, 0x002F) PR_LANGUAGES_W = propTag(PT_UNICODE, 0x002F) PR_LANGUAGES_A = propTag(PT_STRING8, 0x002F) PR_REPLY_TIME = propTag(PT_SYSTIME, 0x0030) PR_REPORT_TAG = propTag(PT_BINARY, 0x0031) PR_REPORT_TIME = propTag(PT_SYSTIME, 0x0032) PR_RETURNED_IPM = propTag(PT_BOOLEAN, 0x0033) PR_SECURITY = propTag(PT_LONG, 0x0034) PR_INCOMPLETE_COPY = propTag(PT_BOOLEAN, 0x0035) PR_SENSITIVITY = propTag(PT_LONG, 0x0036) PR_SUBJECT = propTag(PT_TSTRING, 0x0037) PR_SUBJECT_W = propTag(PT_UNICODE, 0x0037) PR_SUBJECT_A = propTag(PT_STRING8, 0x0037) PR_SUBJECT_IPM = propTag(PT_BINARY, 0x0038) PR_CLIENT_SUBMIT_TIME = propTag(PT_SYSTIME, 0x0039) PR_REPORT_NAME = propTag(PT_TSTRING, 0x003A) PR_REPORT_NAME_W = propTag(PT_UNICODE, 0x003A) PR_REPORT_NAME_A = propTag(PT_STRING8, 0x003A) PR_SENT_REPRESENTING_SEARCH_KEY = propTag(PT_BINARY, 0x003B) PR_X400_CONTENT_TYPE = propTag(PT_BINARY, 0x003C) PR_SUBJECT_PREFIX = propTag(PT_TSTRING, 0x003D) PR_SUBJECT_PREFIX_W = propTag(PT_UNICODE, 0x003D) PR_SUBJECT_PREFIX_A = propTag(PT_STRING8, 0x003D) PR_NON_RECEIPT_REASON = propTag(PT_LONG, 0x003E) PR_RECEIVED_BY_ENTRYID = propTag(PT_BINARY, 0x003F) PR_RECEIVED_BY_NAME = propTag(PT_TSTRING, 0x0040) PR_RECEIVED_BY_NAME_W = propTag(PT_UNICODE, 0x0040) PR_RECEIVED_BY_NAME_A = propTag(PT_STRING8, 0x0040) PR_SENT_REPRESENTING_ENTRYID = propTag(PT_BINARY, 0x0041) PR_SENT_REPRESENTING_NAME = propTag(PT_TSTRING, 0x0042) PR_SENT_REPRESENTING_NAME_W = propTag(PT_UNICODE, 0x0042) PR_SENT_REPRESENTING_NAME_A = propTag(PT_STRING8, 0x0042) PR_RCVD_REPRESENTING_ENTRYID = propTag(PT_BINARY, 0x0043) PR_RCVD_REPRESENTING_NAME = propTag(PT_TSTRING, 0x0044) PR_RCVD_REPRESENTING_NAME_W = propTag(PT_UNICODE, 0x0044) PR_RCVD_REPRESENTING_NAME_A = propTag(PT_STRING8, 0x0044) PR_REPORT_ENTRYID = propTag(PT_BINARY, 0x0045) PR_READ_RECEIPT_ENTRYID = propTag(PT_BINARY, 0x0046) PR_MESSAGE_SUBMISSION_ID = propTag(PT_BINARY, 0x0047) PR_PROVIDER_SUBMIT_TIME = propTag(PT_SYSTIME, 0x0048) PR_ORIGINAL_SUBJECT = propTag(PT_TSTRING, 0x0049) PR_ORIGINAL_SUBJECT_W = propTag(PT_UNICODE, 0x0049) PR_ORIGINAL_SUBJECT_A = propTag(PT_STRING8, 0x0049) PR_DISC_VAL = propTag(PT_BOOLEAN, 0x004A) PR_ORIG_MESSAGE_CLASS = propTag(PT_TSTRING, 0x004B) PR_ORIG_MESSAGE_CLASS_W = propTag(PT_UNICODE, 0x004B) PR_ORIG_MESSAGE_CLASS_A = propTag(PT_STRING8, 0x004B) PR_ORIGINAL_AUTHOR_ENTRYID = propTag(PT_BINARY, 0x004C) PR_ORIGINAL_AUTHOR_NAME = propTag(PT_TSTRING, 0x004D) PR_ORIGINAL_AUTHOR_NAME_W = propTag(PT_UNICODE, 0x004D) PR_ORIGINAL_AUTHOR_NAME_A = propTag(PT_STRING8, 0x004D) PR_ORIGINAL_SUBMIT_TIME = propTag(PT_SYSTIME, 0x004E) PR_REPLY_RECIPIENT_ENTRIES = propTag(PT_BINARY, 0x004F) PR_REPLY_RECIPIENT_NAMES = propTag(PT_TSTRING, 0x0050) PR_REPLY_RECIPIENT_NAMES_W = propTag(PT_UNICODE, 0x0050) PR_REPLY_RECIPIENT_NAMES_A = propTag(PT_STRING8, 0x0050) PR_RECEIVED_BY_SEARCH_KEY = propTag(PT_BINARY, 0x0051) PR_RCVD_REPRESENTING_SEARCH_KEY = propTag(PT_BINARY, 0x0052) PR_READ_RECEIPT_SEARCH_KEY = propTag(PT_BINARY, 0x0053) PR_REPORT_SEARCH_KEY = propTag(PT_BINARY, 0x0054) PR_ORIGINAL_DELIVERY_TIME = propTag(PT_SYSTIME, 0x0055) PR_ORIGINAL_AUTHOR_SEARCH_KEY = propTag(PT_BINARY, 0x0056) PR_MESSAGE_TO_ME = propTag(PT_BOOLEAN, 0x0057) PR_MESSAGE_CC_ME = propTag(PT_BOOLEAN, 0x0058) PR_MESSAGE_RECIP_ME = propTag(PT_BOOLEAN, 0x0059) PR_ORIGINAL_SENDER_NAME = propTag(PT_TSTRING, 0x005A) PR_ORIGINAL_SENDER_NAME_W = propTag(PT_UNICODE, 0x005A) PR_ORIGINAL_SENDER_NAME_A = propTag(PT_STRING8, 0x005A) PR_ORIGINAL_SENDER_ENTRYID = propTag(PT_BINARY, 0x005B) PR_ORIGINAL_SENDER_SEARCH_KEY = propTag(PT_BINARY, 0x005C) PR_ORIGINAL_SENT_REPRESENTING_NAME = propTag(PT_TSTRING, 0x005D) PR_ORIGINAL_SENT_REPRESENTING_NAME_W = propTag(PT_UNICODE, 0x005D) PR_ORIGINAL_SENT_REPRESENTING_NAME_A = propTag(PT_STRING8, 0x005D) PR_ORIGINAL_SENT_REPRESENTING_ENTRYID = propTag(PT_BINARY, 0x005E) PR_ORIGINAL_SENT_REPRESENTING_SEARCH_KEY = propTag(PT_BINARY, 0x005F) PR_START_DATE = propTag(PT_SYSTIME, 0x0060) PR_END_DATE = propTag(PT_SYSTIME, 0x0061) PR_OWNER_APPT_ID = propTag(PT_LONG, 0x0062) PR_RESPONSE_REQUESTED = propTag(PT_BOOLEAN, 0x0063) PR_SENT_REPRESENTING_ADDRTYPE = propTag(PT_TSTRING, 0x0064) PR_SENT_REPRESENTING_ADDRTYPE_W = propTag(PT_UNICODE, 0x0064) PR_SENT_REPRESENTING_ADDRTYPE_A = propTag(PT_STRING8, 0x0064) PR_SENT_REPRESENTING_EMAIL_ADDRESS = propTag(PT_TSTRING, 0x0065) PR_SENT_REPRESENTING_EMAIL_ADDRESS_W = propTag(PT_UNICODE, 0x0065) PR_SENT_REPRESENTING_EMAIL_ADDRESS_A = propTag(PT_STRING8, 0x0065) PR_ORIGINAL_SENDER_ADDRTYPE = propTag(PT_TSTRING, 0x0066) PR_ORIGINAL_SENDER_ADDRTYPE_W = propTag(PT_UNICODE, 0x0066) PR_ORIGINAL_SENDER_ADDRTYPE_A = propTag(PT_STRING8, 0x0066) PR_ORIGINAL_SENDER_EMAIL_ADDRESS = propTag(PT_TSTRING, 0x0067) PR_ORIGINAL_SENDER_EMAIL_ADDRESS_W = propTag(PT_UNICODE, 0x0067) PR_ORIGINAL_SENDER_EMAIL_ADDRESS_A = propTag(PT_STRING8, 0x0067) PR_ORIGINAL_SENT_REPRESENTING_ADDRTYPE = propTag(PT_TSTRING, 0x0068) PR_ORIGINAL_SENT_REPRESENTING_ADDRTYPE_W = propTag(PT_UNICODE, 0x0068) PR_ORIGINAL_SENT_REPRESENTING_ADDRTYPE_A = propTag(PT_STRING8, 0x0068) PR_ORIGINAL_SENT_REPRESENTING_EMAIL_ADDRESS = propTag(PT_TSTRING, 0x0069) PR_ORIGINAL_SENT_REPRESENTING_EMAIL_ADDRESS_W = propTag(PT_UNICODE, 0x0069) PR_ORIGINAL_SENT_REPRESENTING_EMAIL_ADDRESS_A = propTag(PT_STRING8, 0x0069) PR_CONVERSATION_TOPIC = propTag(PT_TSTRING, 0x0070) PR_CONVERSATION_TOPIC_W = propTag(PT_UNICODE, 0x0070) PR_CONVERSATION_TOPIC_A = propTag(PT_STRING8, 0x0070) PR_CONVERSATION_INDEX = propTag(PT_BINARY, 0x0071) PR_ORIGINAL_DISPLAY_BCC = propTag(PT_TSTRING, 0x0072) PR_ORIGINAL_DISPLAY_BCC_W = propTag(PT_UNICODE, 0x0072) PR_ORIGINAL_DISPLAY_BCC_A = propTag(PT_STRING8, 0x0072) PR_ORIGINAL_DISPLAY_CC = propTag(PT_TSTRING, 0x0073) PR_ORIGINAL_DISPLAY_CC_W = propTag(PT_UNICODE, 0x0073) PR_ORIGINAL_DISPLAY_CC_A = propTag(PT_STRING8, 0x0073) PR_ORIGINAL_DISPLAY_TO = propTag(PT_TSTRING, 0x0074) PR_ORIGINAL_DISPLAY_TO_W = propTag(PT_UNICODE, 0x0074) PR_ORIGINAL_DISPLAY_TO_A = propTag(PT_STRING8, 0x0074) PR_RECEIVED_BY_ADDRTYPE = propTag(PT_TSTRING, 0x0075) PR_RECEIVED_BY_ADDRTYPE_W = propTag(PT_UNICODE, 0x0075) PR_RECEIVED_BY_ADDRTYPE_A = propTag(PT_STRING8, 0x0075) PR_RECEIVED_BY_EMAIL_ADDRESS = propTag(PT_TSTRING, 0x0076) PR_RECEIVED_BY_EMAIL_ADDRESS_W = propTag(PT_UNICODE, 0x0076) PR_RECEIVED_BY_EMAIL_ADDRESS_A = propTag(PT_STRING8, 0x0076) PR_RCVD_REPRESENTING_ADDRTYPE = propTag(PT_TSTRING, 0x0077) PR_RCVD_REPRESENTING_ADDRTYPE_W = propTag(PT_UNICODE, 0x0077) PR_RCVD_REPRESENTING_ADDRTYPE_A = propTag(PT_STRING8, 0x0077) PR_RCVD_REPRESENTING_EMAIL_ADDRESS = propTag(PT_TSTRING, 0x0078) PR_RCVD_REPRESENTING_EMAIL_ADDRESS_W = propTag(PT_UNICODE, 0x0078) PR_RCVD_REPRESENTING_EMAIL_ADDRESS_A = propTag(PT_STRING8, 0x0078) PR_ORIGINAL_AUTHOR_ADDRTYPE = propTag(PT_TSTRING, 0x0079) PR_ORIGINAL_AUTHOR_ADDRTYPE_W = propTag(PT_UNICODE, 0x0079) PR_ORIGINAL_AUTHOR_ADDRTYPE_A = propTag(PT_STRING8, 0x0079) PR_ORIGINAL_AUTHOR_EMAIL_ADDRESS = propTag(PT_TSTRING, 0x007A) PR_ORIGINAL_AUTHOR_EMAIL_ADDRESS_W = propTag(PT_UNICODE, 0x007A) PR_ORIGINAL_AUTHOR_EMAIL_ADDRESS_A = propTag(PT_STRING8, 0x007A) PR_ORIGINALLY_INTENDED_RECIP_ADDRTYPE = propTag(PT_TSTRING, 0x007B) PR_ORIGINALLY_INTENDED_RECIP_ADDRTYPE_W = propTag(PT_UNICODE, 0x007B) PR_ORIGINALLY_INTENDED_RECIP_ADDRTYPE_A = propTag(PT_STRING8, 0x007B) PR_ORIGINALLY_INTENDED_RECIP_EMAIL_ADDRESS = propTag(PT_TSTRING, 0x007C) PR_ORIGINALLY_INTENDED_RECIP_EMAIL_ADDRESS_W = propTag(PT_UNICODE, 0x007C) PR_ORIGINALLY_INTENDED_RECIP_EMAIL_ADDRESS_A = propTag(PT_STRING8, 0x007C) PR_TRANSPORT_MESSAGE_HEADERS = propTag(PT_TSTRING, 0x007D) PR_TRANSPORT_MESSAGE_HEADERS_W = propTag(PT_UNICODE, 0x007D) PR_TRANSPORT_MESSAGE_HEADERS_A = propTag(PT_STRING8, 0x007D) PR_DELEGATION = propTag(PT_BINARY, 0x007E) PR_TNEF_CORRELATION_KEY = propTag(PT_BINARY, 0x007F) PR_BODY = propTag(PT_TSTRING, 0x1000) PR_BODY_W = propTag(PT_UNICODE, 0x1000) PR_BODY_A = propTag(PT_STRING8, 0x1000) PR_REPORT_TEXT = propTag(PT_TSTRING, 0x1001) PR_REPORT_TEXT_W = propTag(PT_UNICODE, 0x1001) PR_REPORT_TEXT_A = propTag(PT_STRING8, 0x1001) PR_ORIGINATOR_AND_DL_EXPANSION_HISTORY = propTag(PT_BINARY, 0x1002) PR_REPORTING_DL_NAME = propTag(PT_BINARY, 0x1003) PR_REPORTING_MTA_CERTIFICATE = propTag(PT_BINARY, 0x1004) PR_RTF_SYNC_BODY_CRC = propTag(PT_LONG, 0x1006) PR_RTF_SYNC_BODY_COUNT = propTag(PT_LONG, 0x1007) PR_RTF_SYNC_BODY_TAG = propTag(PT_TSTRING, 0x1008) PR_RTF_SYNC_BODY_TAG_W = propTag(PT_UNICODE, 0x1008) PR_RTF_SYNC_BODY_TAG_A = propTag(PT_STRING8, 0x1008) PR_RTF_COMPRESSED = propTag(PT_BINARY, 0x1009) PR_RTF_SYNC_PREFIX_COUNT = propTag(PT_LONG, 0x1010) PR_RTF_SYNC_TRAILING_COUNT = propTag(PT_LONG, 0x1011) PR_ORIGINALLY_INTENDED_RECIP_ENTRYID = propTag(PT_BINARY, 0x1012) PR_BLOCK_STATUS = propTag(PT_LONG, 0x1096) PR_CONTENT_INTEGRITY_CHECK = propTag(PT_BINARY, 0x0C00) PR_EXPLICIT_CONVERSION = propTag(PT_LONG, 0x0C01) PR_IPM_RETURN_REQUESTED = propTag(PT_BOOLEAN, 0x0C02) PR_MESSAGE_TOKEN = propTag(PT_BINARY, 0x0C03) PR_NDR_REASON_CODE = propTag(PT_LONG, 0x0C04) PR_NDR_DIAG_CODE = propTag(PT_LONG, 0x0C05) PR_NON_RECEIPT_NOTIFICATION_REQUESTED = propTag(PT_BOOLEAN, 0x0C06) PR_DELIVERY_POINT = propTag(PT_LONG, 0x0C07) PR_ORIGINATOR_NON_DELIVERY_REPORT_REQUESTED = propTag(PT_BOOLEAN, 0x0C08) PR_ORIGINATOR_REQUESTED_ALTERNATE_RECIPIENT = propTag(PT_BINARY, 0x0C09) PR_PHYSICAL_DELIVERY_BUREAU_FAX_DELIVERY = propTag(PT_BOOLEAN, 0x0C0A) PR_PHYSICAL_DELIVERY_MODE = propTag(PT_LONG, 0x0C0B) PR_PHYSICAL_DELIVERY_REPORT_REQUEST = propTag(PT_LONG, 0x0C0C) PR_PHYSICAL_FORWARDING_ADDRESS = propTag(PT_BINARY, 0x0C0D) PR_PHYSICAL_FORWARDING_ADDRESS_REQUESTED = propTag(PT_BOOLEAN, 0x0C0E) PR_PHYSICAL_FORWARDING_PROHIBITED = propTag(PT_BOOLEAN, 0x0C0F) PR_PHYSICAL_RENDITION_ATTRIBUTES = propTag(PT_BINARY, 0x0C10) PR_PROOF_OF_DELIVERY = propTag(PT_BINARY, 0x0C11) PR_PROOF_OF_DELIVERY_REQUESTED = propTag(PT_BOOLEAN, 0x0C12) PR_RECIPIENT_CERTIFICATE = propTag(PT_BINARY, 0x0C13) PR_RECIPIENT_NUMBER_FOR_ADVICE = propTag(PT_TSTRING, 0x0C14) PR_RECIPIENT_NUMBER_FOR_ADVICE_W = propTag(PT_UNICODE, 0x0C14) PR_RECIPIENT_NUMBER_FOR_ADVICE_A = propTag(PT_STRING8, 0x0C14) PR_RECIPIENT_TYPE = propTag(PT_LONG, 0x0C15) PR_REGISTERED_MAIL_TYPE = propTag(PT_LONG, 0x0C16) PR_REPLY_REQUESTED = propTag(PT_BOOLEAN, 0x0C17) PR_REQUESTED_DELIVERY_METHOD = propTag(PT_LONG, 0x0C18) PR_SENDER_ENTRYID = propTag(PT_BINARY, 0x0C19) PR_SENDER_NAME = propTag(PT_TSTRING, 0x0C1A) PR_SENDER_NAME_W = propTag(PT_UNICODE, 0x0C1A) PR_SENDER_NAME_A = propTag(PT_STRING8, 0x0C1A) PR_SUPPLEMENTARY_INFO = propTag(PT_TSTRING, 0x0C1B) PR_SUPPLEMENTARY_INFO_W = propTag(PT_UNICODE, 0x0C1B) PR_SUPPLEMENTARY_INFO_A = propTag(PT_STRING8, 0x0C1B) PR_TYPE_OF_MTS_USER = propTag(PT_LONG, 0x0C1C) PR_SENDER_SEARCH_KEY = propTag(PT_BINARY, 0x0C1D) PR_SENDER_ADDRTYPE = propTag(PT_TSTRING, 0x0C1E) PR_SENDER_ADDRTYPE_W = propTag(PT_UNICODE, 0x0C1E) PR_SENDER_ADDRTYPE_A = propTag(PT_STRING8, 0x0C1E) PR_SENDER_EMAIL_ADDRESS = propTag(PT_TSTRING, 0x0C1F) PR_SENDER_EMAIL_ADDRESS_W = propTag(PT_UNICODE, 0x0C1F) PR_SENDER_EMAIL_ADDRESS_A = propTag(PT_STRING8, 0x0C1F) PR_CURRENT_VERSION = propTag(PT_I8, 0x0E00) PR_DELETE_AFTER_SUBMIT = propTag(PT_BOOLEAN, 0x0E01) PR_DISPLAY_BCC = propTag(PT_TSTRING, 0x0E02) PR_DISPLAY_BCC_W = propTag(PT_UNICODE, 0x0E02) PR_DISPLAY_BCC_A = propTag(PT_STRING8, 0x0E02) PR_DISPLAY_CC = propTag(PT_TSTRING, 0x0E03) PR_DISPLAY_CC_W = propTag(PT_UNICODE, 0x0E03) PR_DISPLAY_CC_A = propTag(PT_STRING8, 0x0E03) PR_DISPLAY_TO = propTag(PT_TSTRING, 0x0E04) PR_DISPLAY_TO_W = propTag(PT_UNICODE, 0x0E04) PR_DISPLAY_TO_A = propTag(PT_STRING8, 0x0E04) PR_PARENT_DISPLAY = propTag(PT_TSTRING, 0x0E05) PR_PARENT_DISPLAY_W = propTag(PT_UNICODE, 0x0E05) PR_PARENT_DISPLAY_A = propTag(PT_STRING8, 0x0E05) PR_MESSAGE_DELIVERY_TIME = propTag(PT_SYSTIME, 0x0E06) PR_MESSAGE_FLAGS = propTag(PT_LONG, 0x0E07) PR_MESSAGE_SIZE = propTag(PT_LONG, 0x0E08) PR_PARENT_ENTRYID = propTag(PT_BINARY, 0x0E09) PR_SENTMAIL_ENTRYID = propTag(PT_BINARY, 0x0E0A) PR_CORRELATE = propTag(PT_BOOLEAN, 0x0E0C) PR_CORRELATE_MTSID = propTag(PT_BINARY, 0x0E0D) PR_DISCRETE_VALUES = propTag(PT_BOOLEAN, 0x0E0E) PR_RESPONSIBILITY = propTag(PT_BOOLEAN, 0x0E0F) PR_SPOOLER_STATUS = propTag(PT_LONG, 0x0E10) PR_TRANSPORT_STATUS = propTag(PT_LONG, 0x0E11) PR_MESSAGE_RECIPIENTS = propTag(PT_OBJECT, 0x0E12) PR_MESSAGE_ATTACHMENTS = propTag(PT_OBJECT, 0x0E13) PR_SUBMIT_FLAGS = propTag(PT_LONG, 0x0E14) PR_RECIPIENT_STATUS = propTag(PT_LONG, 0x0E15) PR_TRANSPORT_KEY = propTag(PT_LONG, 0x0E16) PR_MSG_STATUS = propTag(PT_LONG, 0x0E17) PR_MESSAGE_DOWNLOAD_TIME = propTag(PT_LONG, 0x0E18) PR_CREATION_VERSION = propTag(PT_I8, 0x0E19) PR_MODIFY_VERSION = propTag(PT_I8, 0x0E1A) PR_HASATTACH = propTag(PT_BOOLEAN, 0x0E1B) PR_BODY_CRC = propTag(PT_LONG, 0x0E1C) PR_NORMALIZED_SUBJECT = propTag(PT_TSTRING, 0x0E1D) PR_NORMALIZED_SUBJECT_W = propTag(PT_UNICODE, 0x0E1D) PR_NORMALIZED_SUBJECT_A = propTag(PT_STRING8, 0x0E1D) PR_RTF_IN_SYNC = propTag(PT_BOOLEAN, 0x0E1F) PR_ATTACH_SIZE = propTag(PT_LONG, 0x0E20) PR_ATTACH_NUM = propTag(PT_LONG, 0x0E21) PR_PREPROCESS = propTag(PT_BOOLEAN, 0x0E22) PR_ORIGINATING_MTA_CERTIFICATE = propTag(PT_BINARY, 0x0E25) PR_PROOF_OF_SUBMISSION = propTag(PT_BINARY, 0x0E26) PR_ENTRYID = propTag(PT_BINARY, 0x0FFF) PR_OBJECT_TYPE = propTag(PT_LONG, 0x0FFE) PR_ICON = propTag(PT_BINARY, 0x0FFD) PR_MINI_ICON = propTag(PT_BINARY, 0x0FFC) PR_STORE_ENTRYID = propTag(PT_BINARY, 0x0FFB) PR_STORE_RECORD_KEY = propTag(PT_BINARY, 0x0FFA) PR_RECORD_KEY = propTag(PT_BINARY, 0x0FF9) PR_MAPPING_SIGNATURE = propTag(PT_BINARY, 0x0FF8) PR_ACCESS_LEVEL = propTag(PT_LONG, 0x0FF7) PR_INSTANCE_KEY = propTag(PT_BINARY, 0x0FF6) PR_ROW_TYPE = propTag(PT_LONG, 0x0FF5) PR_ACCESS = propTag(PT_LONG, 0x0FF4) PR_ROWID = propTag(PT_LONG, 0x3000) PR_DISPLAY_NAME = propTag(PT_TSTRING, 0x3001) PR_DISPLAY_NAME_W = propTag(PT_UNICODE, 0x3001) PR_DISPLAY_NAME_A = propTag(PT_STRING8, 0x3001) PR_ADDRTYPE = propTag(PT_TSTRING, 0x3002) PR_ADDRTYPE_W = propTag(PT_UNICODE, 0x3002) PR_ADDRTYPE_A = propTag(PT_STRING8, 0x3002) PR_EMAIL_ADDRESS = propTag(PT_TSTRING, 0x3003) PR_EMAIL_ADDRESS_W = propTag(PT_UNICODE, 0x3003) PR_EMAIL_ADDRESS_A = propTag(PT_STRING8, 0x3003) PR_COMMENT = propTag(PT_TSTRING, 0x3004) PR_COMMENT_W = propTag(PT_UNICODE, 0x3004) PR_COMMENT_A = propTag(PT_STRING8, 0x3004) PR_DEPTH = propTag(PT_LONG, 0x3005) PR_PROVIDER_DISPLAY = propTag(PT_TSTRING, 0x3006) PR_PROVIDER_DISPLAY_W = propTag(PT_UNICODE, 0x3006) PR_PROVIDER_DISPLAY_A = propTag(PT_STRING8, 0x3006) PR_CREATION_TIME = propTag(PT_SYSTIME, 0x3007) PR_LAST_MODIFICATION_TIME = propTag(PT_SYSTIME, 0x3008) PR_RESOURCE_FLAGS = propTag(PT_LONG, 0x3009) PR_PROVIDER_DLL_NAME = propTag(PT_TSTRING, 0x300A) PR_PROVIDER_DLL_NAME_W = propTag(PT_UNICODE, 0x300A) PR_PROVIDER_DLL_NAME_A = propTag(PT_STRING8, 0x300A) PR_SEARCH_KEY = propTag(PT_BINARY, 0x300B) PR_PROVIDER_UID = propTag(PT_BINARY, 0x300C) PR_PROVIDER_ORDINAL = propTag(PT_LONG, 0x300D) PR_SORT_POSITION = propTag(PT_BINARY, 0x3020) PR_SORT_PARENTID = propTag(PT_BINARY, 0x3021) PR_FORM_VERSION = propTag(PT_TSTRING, 0x3301) PR_FORM_VERSION_W = propTag(PT_UNICODE, 0x3301) PR_FORM_VERSION_A = propTag(PT_STRING8, 0x3301) PR_FORM_CLSID = propTag(PT_CLSID, 0x3302) PR_FORM_CONTACT_NAME = propTag(PT_TSTRING, 0x3303) PR_FORM_CONTACT_NAME_W = propTag(PT_UNICODE, 0x3303) PR_FORM_CONTACT_NAME_A = propTag(PT_STRING8, 0x3303) PR_FORM_CATEGORY = propTag(PT_TSTRING, 0x3304) PR_FORM_CATEGORY_W = propTag(PT_UNICODE, 0x3304) PR_FORM_CATEGORY_A = propTag(PT_STRING8, 0x3304) PR_FORM_CATEGORY_SUB = propTag(PT_TSTRING, 0x3305) PR_FORM_CATEGORY_SUB_W = propTag(PT_UNICODE, 0x3305) PR_FORM_CATEGORY_SUB_A = propTag(PT_STRING8, 0x3305) PR_FORM_HOST_MAP = propTag(PT_MV_LONG, 0x3306) PR_FORM_HIDDEN = propTag(PT_BOOLEAN, 0x3307) PR_FORM_DESIGNER_NAME = propTag(PT_TSTRING, 0x3308) PR_FORM_DESIGNER_NAME_W = propTag(PT_UNICODE, 0x3308) PR_FORM_DESIGNER_NAME_A = propTag(PT_STRING8, 0x3308) PR_FORM_DESIGNER_GUID = propTag(PT_CLSID, 0x3309) PR_FORM_MESSAGE_BEHAVIOR = propTag(PT_LONG, 0x330A) PR_DEFAULT_STORE = propTag(PT_BOOLEAN, 0x3400) PR_STORE_SUPPORT_MASK = propTag(PT_LONG, 0x340D) PR_STORE_STATE = propTag(PT_LONG, 0x340E) PR_IPM_SUBTREE_SEARCH_KEY = propTag(PT_BINARY, 0x3410) PR_IPM_OUTBOX_SEARCH_KEY = propTag(PT_BINARY, 0x3411) PR_IPM_WASTEBASKET_SEARCH_KEY = propTag(PT_BINARY, 0x3412) PR_IPM_SENTMAIL_SEARCH_KEY = propTag(PT_BINARY, 0x3413) PR_MDB_PROVIDER = propTag(PT_BINARY, 0x3414) PR_RECEIVE_FOLDER_SETTINGS = propTag(PT_OBJECT, 0x3415) PR_VALID_FOLDER_MASK = propTag(PT_LONG, 0x35DF) PR_IPM_SUBTREE_ENTRYID = propTag(PT_BINARY, 0x35E0) PR_IPM_OUTBOX_ENTRYID = propTag(PT_BINARY, 0x35E2) PR_IPM_WASTEBASKET_ENTRYID = propTag(PT_BINARY, 0x35E3) PR_IPM_SENTMAIL_ENTRYID = propTag(PT_BINARY, 0x35E4) PR_VIEWS_ENTRYID = propTag(PT_BINARY, 0x35E5) PR_COMMON_VIEWS_ENTRYID = propTag(PT_BINARY, 0x35E6) PR_FINDER_ENTRYID = propTag(PT_BINARY, 0x35E7) PR_CONTAINER_FLAGS = propTag(PT_LONG, 0x3600) PR_FOLDER_TYPE = propTag(PT_LONG, 0x3601) PR_CONTENT_COUNT = propTag(PT_LONG, 0x3602) PR_CONTENT_UNREAD = propTag(PT_LONG, 0x3603) PR_CREATE_TEMPLATES = propTag(PT_OBJECT, 0x3604) PR_DETAILS_TABLE = propTag(PT_OBJECT, 0x3605) PR_SEARCH = propTag(PT_OBJECT, 0x3607) PR_SELECTABLE = propTag(PT_BOOLEAN, 0x3609) PR_SUBFOLDERS = propTag(PT_BOOLEAN, 0x360A) PR_STATUS = propTag(PT_LONG, 0x360B) PR_ANR = propTag(PT_TSTRING, 0x360C) PR_ANR_W = propTag(PT_UNICODE, 0x360C) PR_ANR_A = propTag(PT_STRING8, 0x360C) PR_CONTENTS_SORT_ORDER = propTag(PT_MV_LONG, 0x360D) PR_CONTAINER_HIERARCHY = propTag(PT_OBJECT, 0x360E) PR_CONTAINER_CONTENTS = propTag(PT_OBJECT, 0x360F) PR_FOLDER_ASSOCIATED_CONTENTS = propTag(PT_OBJECT, 0x3610) PR_DEF_CREATE_DL = propTag(PT_BINARY, 0x3611) PR_DEF_CREATE_MAILUSER = propTag(PT_BINARY, 0x3612) PR_CONTAINER_CLASS = propTag(PT_TSTRING, 0x3613) PR_CONTAINER_CLASS_W = propTag(PT_UNICODE, 0x3613) PR_CONTAINER_CLASS_A = propTag(PT_STRING8, 0x3613) PR_CONTAINER_MODIFY_VERSION = propTag(PT_I8, 0x3614) PR_AB_PROVIDER_ID = propTag(PT_BINARY, 0x3615) PR_DEFAULT_VIEW_ENTRYID = propTag(PT_BINARY, 0x3616) PR_ASSOC_CONTENT_COUNT = propTag(PT_LONG, 0x3617) PR_ATTACHMENT_X400_PARAMETERS = propTag(PT_BINARY, 0x3700) PR_ATTACH_DATA_OBJ = propTag(PT_OBJECT, 0x3701) PR_ATTACH_DATA_BIN = propTag(PT_BINARY, 0x3701) PR_ATTACH_ENCODING = propTag(PT_BINARY, 0x3702) PR_ATTACH_EXTENSION = propTag(PT_TSTRING, 0x3703) PR_ATTACH_EXTENSION_W = propTag(PT_UNICODE, 0x3703) PR_ATTACH_EXTENSION_A = propTag(PT_STRING8, 0x3703) PR_ATTACH_FILENAME = propTag(PT_TSTRING, 0x3704) PR_ATTACH_FILENAME_W = propTag(PT_UNICODE, 0x3704) PR_ATTACH_FILENAME_A = propTag(PT_STRING8, 0x3704) PR_ATTACH_METHOD = propTag(PT_LONG, 0x3705) PR_ATTACH_LONG_FILENAME = propTag(PT_TSTRING, 0x3707) PR_ATTACH_LONG_FILENAME_W = propTag(PT_UNICODE, 0x3707) PR_ATTACH_LONG_FILENAME_A = propTag(PT_STRING8, 0x3707) PR_ATTACH_PATHNAME = propTag(PT_TSTRING, 0x3708) PR_ATTACH_PATHNAME_W = propTag(PT_UNICODE, 0x3708) PR_ATTACH_PATHNAME_A = propTag(PT_STRING8, 0x3708) PR_ATTACH_RENDERING = propTag(PT_BINARY, 0x3709) PR_ATTACH_TAG = propTag(PT_BINARY, 0x370A) PR_RENDERING_POSITION = propTag(PT_LONG, 0x370B) PR_ATTACH_TRANSPORT_NAME = propTag(PT_TSTRING, 0x370C) PR_ATTACH_TRANSPORT_NAME_W = propTag(PT_UNICODE, 0x370C) PR_ATTACH_TRANSPORT_NAME_A = propTag(PT_STRING8, 0x370C) PR_ATTACH_LONG_PATHNAME = propTag(PT_TSTRING, 0x370D) PR_ATTACH_LONG_PATHNAME_W = propTag(PT_UNICODE, 0x370D) PR_ATTACH_LONG_PATHNAME_A = propTag(PT_STRING8, 0x370D) PR_ATTACH_MIME_TAG = propTag(PT_TSTRING, 0x370E) PR_ATTACH_MIME_TAG_W = propTag(PT_UNICODE, 0x370E) PR_ATTACH_MIME_TAG_A = propTag(PT_STRING8, 0x370E) PR_ATTACH_ADDITIONAL_INFO = propTag(PT_BINARY, 0x370F) PR_DISPLAY_TYPE = propTag(PT_LONG, 0x3900) PR_TEMPLATEID = propTag(PT_BINARY, 0x3902) PR_PRIMARY_CAPABILITY = propTag(PT_BINARY, 0x3904) PR_7BIT_DISPLAY_NAME = propTag(PT_STRING8, 0x39FF) PR_ACCOUNT = propTag(PT_TSTRING, 0x3A00) PR_ACCOUNT_W = propTag(PT_UNICODE, 0x3A00) PR_ACCOUNT_A = propTag(PT_STRING8, 0x3A00) PR_ALTERNATE_RECIPIENT = propTag(PT_BINARY, 0x3A01) PR_CALLBACK_TELEPHONE_NUMBER = propTag(PT_TSTRING, 0x3A02) PR_CALLBACK_TELEPHONE_NUMBER_W = propTag(PT_UNICODE, 0x3A02) PR_CALLBACK_TELEPHONE_NUMBER_A = propTag(PT_STRING8, 0x3A02) PR_CONVERSION_PROHIBITED = propTag(PT_BOOLEAN, 0x3A03) PR_DISCLOSE_RECIPIENTS = propTag(PT_BOOLEAN, 0x3A04) PR_GENERATION = propTag(PT_TSTRING, 0x3A05) PR_GENERATION_W = propTag(PT_UNICODE, 0x3A05) PR_GENERATION_A = propTag(PT_STRING8, 0x3A05) PR_GIVEN_NAME = propTag(PT_TSTRING, 0x3A06) PR_GIVEN_NAME_W = propTag(PT_UNICODE, 0x3A06) PR_GIVEN_NAME_A = propTag(PT_STRING8, 0x3A06) PR_GOVERNMENT_ID_NUMBER = propTag(PT_TSTRING, 0x3A07) PR_GOVERNMENT_ID_NUMBER_W = propTag(PT_UNICODE, 0x3A07) PR_GOVERNMENT_ID_NUMBER_A = propTag(PT_STRING8, 0x3A07) PR_BUSINESS_TELEPHONE_NUMBER = propTag(PT_TSTRING, 0x3A08) PR_BUSINESS_TELEPHONE_NUMBER_W = propTag(PT_UNICODE, 0x3A08) PR_BUSINESS_TELEPHONE_NUMBER_A = propTag(PT_STRING8, 0x3A08) PR_HOME_TELEPHONE_NUMBER = propTag(PT_TSTRING, 0x3A09) PR_HOME_TELEPHONE_NUMBER_W = propTag(PT_UNICODE, 0x3A09) PR_HOME_TELEPHONE_NUMBER_A = propTag(PT_STRING8, 0x3A09) PR_INITIALS = propTag(PT_TSTRING, 0x3A0A) PR_INITIALS_W = propTag(PT_UNICODE, 0x3A0A) PR_INITIALS_A = propTag(PT_STRING8, 0x3A0A) PR_KEYWORD = propTag(PT_TSTRING, 0x3A0B) PR_KEYWORD_W = propTag(PT_UNICODE, 0x3A0B) PR_KEYWORD_A = propTag(PT_STRING8, 0x3A0B) PR_LANGUAGE = propTag(PT_TSTRING, 0x3A0C) PR_LANGUAGE_W = propTag(PT_UNICODE, 0x3A0C) PR_LANGUAGE_A = propTag(PT_STRING8, 0x3A0C) PR_LOCATION = propTag(PT_TSTRING, 0x3A0D) PR_LOCATION_W = propTag(PT_UNICODE, 0x3A0D) PR_LOCATION_A = propTag(PT_STRING8, 0x3A0D) PR_MAIL_PERMISSION = propTag(PT_BOOLEAN, 0x3A0E) PR_MHS_COMMON_NAME = propTag(PT_TSTRING, 0x3A0F) PR_MHS_COMMON_NAME_W = propTag(PT_UNICODE, 0x3A0F) PR_MHS_COMMON_NAME_A = propTag(PT_STRING8, 0x3A0F) PR_ORGANIZATIONAL_ID_NUMBER = propTag(PT_TSTRING, 0x3A10) PR_ORGANIZATIONAL_ID_NUMBER_W = propTag(PT_UNICODE, 0x3A10) PR_ORGANIZATIONAL_ID_NUMBER_A = propTag(PT_STRING8, 0x3A10) PR_SURNAME = propTag(PT_TSTRING, 0x3A11) PR_SURNAME_W = propTag(PT_UNICODE, 0x3A11) PR_SURNAME_A = propTag(PT_STRING8, 0x3A11) PR_ORIGINAL_ENTRYID = propTag(PT_BINARY, 0x3A12) PR_ORIGINAL_DISPLAY_NAME = propTag(PT_TSTRING, 0x3A13) PR_ORIGINAL_DISPLAY_NAME_W = propTag(PT_UNICODE, 0x3A13) PR_ORIGINAL_DISPLAY_NAME_A = propTag(PT_STRING8, 0x3A13) PR_ORIGINAL_SEARCH_KEY = propTag(PT_BINARY, 0x3A14) PR_POSTAL_ADDRESS = propTag(PT_TSTRING, 0x3A15) PR_POSTAL_ADDRESS_W = propTag(PT_UNICODE, 0x3A15) PR_POSTAL_ADDRESS_A = propTag(PT_STRING8, 0x3A15) PR_COMPANY_NAME = propTag(PT_TSTRING, 0x3A16) PR_COMPANY_NAME_W = propTag(PT_UNICODE, 0x3A16) PR_COMPANY_NAME_A = propTag(PT_STRING8, 0x3A16) PR_TITLE = propTag(PT_TSTRING, 0x3A17) PR_TITLE_W = propTag(PT_UNICODE, 0x3A17) PR_TITLE_A = propTag(PT_STRING8, 0x3A17) PR_DEPARTMENT_NAME = propTag(PT_TSTRING, 0x3A18) PR_DEPARTMENT_NAME_W = propTag(PT_UNICODE, 0x3A18) PR_DEPARTMENT_NAME_A = propTag(PT_STRING8, 0x3A18) PR_OFFICE_LOCATION = propTag(PT_TSTRING, 0x3A19) PR_OFFICE_LOCATION_W = propTag(PT_UNICODE, 0x3A19) PR_OFFICE_LOCATION_A = propTag(PT_STRING8, 0x3A19) PR_PRIMARY_TELEPHONE_NUMBER = propTag(PT_TSTRING, 0x3A1A) PR_PRIMARY_TELEPHONE_NUMBER_W = propTag(PT_UNICODE, 0x3A1A) PR_PRIMARY_TELEPHONE_NUMBER_A = propTag(PT_STRING8, 0x3A1A) PR_BUSINESS2_TELEPHONE_NUMBER = propTag(PT_TSTRING, 0x3A1B) PR_BUSINESS2_TELEPHONE_NUMBER_W = propTag(PT_UNICODE, 0x3A1B) PR_BUSINESS2_TELEPHONE_NUMBER_A = propTag(PT_STRING8, 0x3A1B) PR_MOBILE_TELEPHONE_NUMBER = propTag(PT_TSTRING, 0x3A1C) PR_MOBILE_TELEPHONE_NUMBER_W = propTag(PT_UNICODE, 0x3A1C) PR_MOBILE_TELEPHONE_NUMBER_A = propTag(PT_STRING8, 0x3A1C) PR_RADIO_TELEPHONE_NUMBER = propTag(PT_TSTRING, 0x3A1D) PR_RADIO_TELEPHONE_NUMBER_W = propTag(PT_UNICODE, 0x3A1D) PR_RADIO_TELEPHONE_NUMBER_A = propTag(PT_STRING8, 0x3A1D) PR_CAR_TELEPHONE_NUMBER = propTag(PT_TSTRING, 0x3A1E) PR_CAR_TELEPHONE_NUMBER_W = propTag(PT_UNICODE, 0x3A1E) PR_CAR_TELEPHONE_NUMBER_A = propTag(PT_STRING8, 0x3A1E) PR_OTHER_TELEPHONE_NUMBER = propTag(PT_TSTRING, 0x3A1F) PR_OTHER_TELEPHONE_NUMBER_W = propTag(PT_UNICODE, 0x3A1F) PR_OTHER_TELEPHONE_NUMBER_A = propTag(PT_STRING8, 0x3A1F) PR_TRANSMITABLE_DISPLAY_NAME = propTag(PT_TSTRING, 0x3A20) PR_TRANSMITABLE_DISPLAY_NAME_W = propTag(PT_UNICODE, 0x3A20) PR_TRANSMITABLE_DISPLAY_NAME_A = propTag(PT_STRING8, 0x3A20) PR_PAGER_TELEPHONE_NUMBER = propTag(PT_TSTRING, 0x3A21) PR_PAGER_TELEPHONE_NUMBER_W = propTag(PT_UNICODE, 0x3A21) PR_PAGER_TELEPHONE_NUMBER_A = propTag(PT_STRING8, 0x3A21) PR_USER_CERTIFICATE = propTag(PT_BINARY, 0x3A22) PR_PRIMARY_FAX_NUMBER = propTag(PT_TSTRING, 0x3A23) PR_PRIMARY_FAX_NUMBER_W = propTag(PT_UNICODE, 0x3A23) PR_PRIMARY_FAX_NUMBER_A = propTag(PT_STRING8, 0x3A23) PR_BUSINESS_FAX_NUMBER = propTag(PT_TSTRING, 0x3A24) PR_BUSINESS_FAX_NUMBER_W = propTag(PT_UNICODE, 0x3A24) PR_BUSINESS_FAX_NUMBER_A = propTag(PT_STRING8, 0x3A24) PR_HOME_FAX_NUMBER = propTag(PT_TSTRING, 0x3A25) PR_HOME_FAX_NUMBER_W = propTag(PT_UNICODE, 0x3A25) PR_HOME_FAX_NUMBER_A = propTag(PT_STRING8, 0x3A25) PR_COUNTRY = propTag(PT_TSTRING, 0x3A26) PR_COUNTRY_W = propTag(PT_UNICODE, 0x3A26) PR_COUNTRY_A = propTag(PT_STRING8, 0x3A26) PR_LOCALITY = propTag(PT_TSTRING, 0x3A27) PR_LOCALITY_W = propTag(PT_UNICODE, 0x3A27) PR_LOCALITY_A = propTag(PT_STRING8, 0x3A27) PR_STATE_OR_PROVINCE = propTag(PT_TSTRING, 0x3A28) PR_STATE_OR_PROVINCE_W = propTag(PT_UNICODE, 0x3A28) PR_STATE_OR_PROVINCE_A = propTag(PT_STRING8, 0x3A28) PR_STREET_ADDRESS = propTag(PT_TSTRING, 0x3A29) PR_STREET_ADDRESS_W = propTag(PT_UNICODE, 0x3A29) PR_STREET_ADDRESS_A = propTag(PT_STRING8, 0x3A29) PR_POSTAL_CODE = propTag(PT_TSTRING, 0x3A2A) PR_POSTAL_CODE_W = propTag(PT_UNICODE, 0x3A2A) PR_POSTAL_CODE_A = propTag(PT_STRING8, 0x3A2A) PR_POST_OFFICE_BOX = propTag(PT_TSTRING, 0x3A2B) PR_POST_OFFICE_BOX_W = propTag(PT_UNICODE, 0x3A2B) PR_POST_OFFICE_BOX_A = propTag(PT_STRING8, 0x3A2B) PR_TELEX_NUMBER = propTag(PT_TSTRING, 0x3A2C) PR_TELEX_NUMBER_W = propTag(PT_UNICODE, 0x3A2C) PR_TELEX_NUMBER_A = propTag(PT_STRING8, 0x3A2C) PR_ISDN_NUMBER = propTag(PT_TSTRING, 0x3A2D) PR_ISDN_NUMBER_W = propTag(PT_UNICODE, 0x3A2D) PR_ISDN_NUMBER_A = propTag(PT_STRING8, 0x3A2D) PR_ASSISTANT_TELEPHONE_NUMBER = propTag(PT_TSTRING, 0x3A2E) PR_ASSISTANT_TELEPHONE_NUMBER_W = propTag(PT_UNICODE, 0x3A2E) PR_ASSISTANT_TELEPHONE_NUMBER_A = propTag(PT_STRING8, 0x3A2E) PR_HOME2_TELEPHONE_NUMBER = propTag(PT_TSTRING, 0x3A2F) PR_HOME2_TELEPHONE_NUMBER_W = propTag(PT_UNICODE, 0x3A2F) PR_HOME2_TELEPHONE_NUMBER_A = propTag(PT_STRING8, 0x3A2F) PR_ASSISTANT = propTag(PT_TSTRING, 0x3A30) PR_ASSISTANT_W = propTag(PT_UNICODE, 0x3A30) PR_ASSISTANT_A = propTag(PT_STRING8, 0x3A30) PR_SEND_RICH_INFO = propTag(PT_BOOLEAN, 0x3A40) PR_WEDDING_ANNIVERSARY = propTag(PT_SYSTIME, 0x3A41) PR_BIRTHDAY = propTag(PT_SYSTIME, 0x3A42) PR_HOBBIES = propTag(PT_TSTRING, 0x3A43) PR_HOBBIES_W = propTag(PT_UNICODE, 0x3A43) PR_HOBBIES_A = propTag(PT_STRING8, 0x3A43) PR_MIDDLE_NAME = propTag(PT_TSTRING, 0x3A44) PR_MIDDLE_NAME_W = propTag(PT_UNICODE, 0x3A44) PR_MIDDLE_NAME_A = propTag(PT_STRING8, 0x3A44) PR_DISPLAY_NAME_PREFIX = propTag(PT_TSTRING, 0x3A45) PR_DISPLAY_NAME_PREFIX_W = propTag(PT_UNICODE, 0x3A45) PR_DISPLAY_NAME_PREFIX_A = propTag(PT_STRING8, 0x3A45) PR_PROFESSION = propTag(PT_TSTRING, 0x3A46) PR_PROFESSION_W = propTag(PT_UNICODE, 0x3A46) PR_PROFESSION_A = propTag(PT_STRING8, 0x3A46) PR_PREFERRED_BY_NAME = propTag(PT_TSTRING, 0x3A47) PR_PREFERRED_BY_NAME_W = propTag(PT_UNICODE, 0x3A47) PR_PREFERRED_BY_NAME_A = propTag(PT_STRING8, 0x3A47) PR_SPOUSE_NAME = propTag(PT_TSTRING, 0x3A48) PR_SPOUSE_NAME_W = propTag(PT_UNICODE, 0x3A48) PR_SPOUSE_NAME_A = propTag(PT_STRING8, 0x3A48) PR_COMPUTER_NETWORK_NAME = propTag(PT_TSTRING, 0x3A49) PR_COMPUTER_NETWORK_NAME_W = propTag(PT_UNICODE, 0x3A49) PR_COMPUTER_NETWORK_NAME_A = propTag(PT_STRING8, 0x3A49) PR_CUSTOMER_ID = propTag(PT_TSTRING, 0x3A4A) PR_CUSTOMER_ID_W = propTag(PT_UNICODE, 0x3A4A) PR_CUSTOMER_ID_A = propTag(PT_STRING8, 0x3A4A) PR_TTYTDD_PHONE_NUMBER = propTag(PT_TSTRING, 0x3A4B) PR_TTYTDD_PHONE_NUMBER_W = propTag(PT_UNICODE, 0x3A4B) PR_TTYTDD_PHONE_NUMBER_A = propTag(PT_STRING8, 0x3A4B) PR_FTP_SITE = propTag(PT_TSTRING, 0x3A4C) PR_FTP_SITE_W = propTag(PT_UNICODE, 0x3A4C) PR_FTP_SITE_A = propTag(PT_STRING8, 0x3A4C) PR_GENDER = propTag(PT_SHORT, 0x3A4D) PR_MANAGER_NAME = propTag(PT_TSTRING, 0x3A4E) PR_MANAGER_NAME_W = propTag(PT_UNICODE, 0x3A4E) PR_MANAGER_NAME_A = propTag(PT_STRING8, 0x3A4E) PR_NICKNAME = propTag(PT_TSTRING, 0x3A4F) PR_NICKNAME_W = propTag(PT_UNICODE, 0x3A4F) PR_NICKNAME_A = propTag(PT_STRING8, 0x3A4F) PR_PERSONAL_HOME_PAGE = propTag(PT_TSTRING, 0x3A50) PR_PERSONAL_HOME_PAGE_W = propTag(PT_UNICODE, 0x3A50) PR_PERSONAL_HOME_PAGE_A = propTag(PT_STRING8, 0x3A50) PR_BUSINESS_HOME_PAGE = propTag(PT_TSTRING, 0x3A51) PR_BUSINESS_HOME_PAGE_W = propTag(PT_UNICODE, 0x3A51) PR_BUSINESS_HOME_PAGE_A = propTag(PT_STRING8, 0x3A51) PR_CONTACT_VERSION = propTag(PT_CLSID, 0x3A52) PR_CONTACT_ENTRYIDS = propTag(PT_MV_BINARY, 0x3A53) PR_CONTACT_ADDRTYPES = propTag(PT_MV_TSTRING, 0x3A54) PR_CONTACT_ADDRTYPES_W = propTag(PT_MV_UNICODE, 0x3A54) PR_CONTACT_ADDRTYPES_A = propTag(PT_MV_STRING8, 0x3A54) PR_CONTACT_DEFAULT_ADDRESS_INDEX = propTag(PT_LONG, 0x3A55) PR_CONTACT_EMAIL_ADDRESSES = propTag(PT_MV_TSTRING, 0x3A56) PR_CONTACT_EMAIL_ADDRESSES_W = propTag(PT_MV_UNICODE, 0x3A56) PR_CONTACT_EMAIL_ADDRESSES_A = propTag(PT_MV_STRING8, 0x3A56) PR_COMPANY_MAIN_PHONE_NUMBER = propTag(PT_TSTRING, 0x3A57) PR_COMPANY_MAIN_PHONE_NUMBER_W = propTag(PT_UNICODE, 0x3A57) PR_COMPANY_MAIN_PHONE_NUMBER_A = propTag(PT_STRING8, 0x3A57) PR_CHILDRENS_NAMES = propTag(PT_MV_TSTRING, 0x3A58) PR_CHILDRENS_NAMES_W = propTag(PT_MV_UNICODE, 0x3A58) PR_CHILDRENS_NAMES_A = propTag(PT_MV_STRING8, 0x3A58) PR_HOME_ADDRESS_CITY = propTag(PT_TSTRING, 0x3A59) PR_HOME_ADDRESS_CITY_W = propTag(PT_UNICODE, 0x3A59) PR_HOME_ADDRESS_CITY_A = propTag(PT_STRING8, 0x3A59) PR_HOME_ADDRESS_COUNTRY = propTag(PT_TSTRING, 0x3A5A) PR_HOME_ADDRESS_COUNTRY_W = propTag(PT_UNICODE, 0x3A5A) PR_HOME_ADDRESS_COUNTRY_A = propTag(PT_STRING8, 0x3A5A) PR_HOME_ADDRESS_POSTAL_CODE = propTag(PT_TSTRING, 0x3A5B) PR_HOME_ADDRESS_POSTAL_CODE_W = propTag(PT_UNICODE, 0x3A5B) PR_HOME_ADDRESS_POSTAL_CODE_A = propTag(PT_STRING8, 0x3A5B) PR_HOME_ADDRESS_STATE_OR_PROVINCE = propTag(PT_TSTRING, 0x3A5C) PR_HOME_ADDRESS_STATE_OR_PROVINCE_W = propTag(PT_UNICODE, 0x3A5C) PR_HOME_ADDRESS_STATE_OR_PROVINCE_A = propTag(PT_STRING8, 0x3A5C) PR_HOME_ADDRESS_STREET = propTag(PT_TSTRING, 0x3A5D) PR_HOME_ADDRESS_STREET_W = propTag(PT_UNICODE, 0x3A5D) PR_HOME_ADDRESS_STREET_A = propTag(PT_STRING8, 0x3A5D) PR_HOME_ADDRESS_POST_OFFICE_BOX = propTag(PT_TSTRING, 0x3A5E) PR_HOME_ADDRESS_POST_OFFICE_BOX_W = propTag(PT_UNICODE, 0x3A5E) PR_HOME_ADDRESS_POST_OFFICE_BOX_A = propTag(PT_STRING8, 0x3A5E) PR_OTHER_ADDRESS_CITY = propTag(PT_TSTRING, 0x3A5F) PR_OTHER_ADDRESS_CITY_W = propTag(PT_UNICODE, 0x3A5F) PR_OTHER_ADDRESS_CITY_A = propTag(PT_STRING8, 0x3A5F) PR_OTHER_ADDRESS_COUNTRY = propTag(PT_TSTRING, 0x3A60) PR_OTHER_ADDRESS_COUNTRY_W = propTag(PT_UNICODE, 0x3A60) PR_OTHER_ADDRESS_COUNTRY_A = propTag(PT_STRING8, 0x3A60) PR_OTHER_ADDRESS_POSTAL_CODE = propTag(PT_TSTRING, 0x3A61) PR_OTHER_ADDRESS_POSTAL_CODE_W = propTag(PT_UNICODE, 0x3A61) PR_OTHER_ADDRESS_POSTAL_CODE_A = propTag(PT_STRING8, 0x3A61) PR_OTHER_ADDRESS_STATE_OR_PROVINCE = propTag(PT_TSTRING, 0x3A62) PR_OTHER_ADDRESS_STATE_OR_PROVINCE_W = propTag(PT_UNICODE, 0x3A62) PR_OTHER_ADDRESS_STATE_OR_PROVINCE_A = propTag(PT_STRING8, 0x3A62) PR_OTHER_ADDRESS_STREET = propTag(PT_TSTRING, 0x3A63) PR_OTHER_ADDRESS_STREET_W = propTag(PT_UNICODE, 0x3A63) PR_OTHER_ADDRESS_STREET_A = propTag(PT_STRING8, 0x3A63) PR_OTHER_ADDRESS_POST_OFFICE_BOX = propTag(PT_TSTRING, 0x3A64) PR_OTHER_ADDRESS_POST_OFFICE_BOX_W = propTag(PT_UNICODE, 0x3A64) PR_OTHER_ADDRESS_POST_OFFICE_BOX_A = propTag(PT_STRING8, 0x3A64) PR_STORE_PROVIDERS = propTag(PT_BINARY, 0x3D00) PR_AB_PROVIDERS = propTag(PT_BINARY, 0x3D01) PR_TRANSPORT_PROVIDERS = propTag(PT_BINARY, 0x3D02) PR_DEFAULT_PROFILE = propTag(PT_BOOLEAN, 0x3D04) PR_AB_SEARCH_PATH = propTag(PT_MV_BINARY, 0x3D05) PR_AB_DEFAULT_DIR = propTag(PT_BINARY, 0x3D06) PR_AB_DEFAULT_PAB = propTag(PT_BINARY, 0x3D07) PR_FILTERING_HOOKS = propTag(PT_BINARY, 0x3D08) PR_SERVICE_NAME = propTag(PT_TSTRING, 0x3D09) PR_SERVICE_NAME_W = propTag(PT_UNICODE, 0x3D09) PR_SERVICE_NAME_A = propTag(PT_STRING8, 0x3D09) PR_SERVICE_DLL_NAME = propTag(PT_TSTRING, 0x3D0A) PR_SERVICE_DLL_NAME_W = propTag(PT_UNICODE, 0x3D0A) PR_SERVICE_DLL_NAME_A = propTag(PT_STRING8, 0x3D0A) PR_SERVICE_ENTRY_NAME = propTag(PT_STRING8, 0x3D0B) PR_SERVICE_UID = propTag(PT_BINARY, 0x3D0C) PR_SERVICE_EXTRA_UIDS = propTag(PT_BINARY, 0x3D0D) PR_SERVICES = propTag(PT_BINARY, 0x3D0E) PR_SERVICE_SUPPORT_FILES = propTag(PT_MV_TSTRING, 0x3D0F) PR_SERVICE_SUPPORT_FILES_W = propTag(PT_MV_UNICODE, 0x3D0F) PR_SERVICE_SUPPORT_FILES_A = propTag(PT_MV_STRING8, 0x3D0F) PR_SERVICE_DELETE_FILES = propTag(PT_MV_TSTRING, 0x3D10) PR_SERVICE_DELETE_FILES_W = propTag(PT_MV_UNICODE, 0x3D10) PR_SERVICE_DELETE_FILES_A = propTag(PT_MV_STRING8, 0x3D10) PR_AB_SEARCH_PATH_UPDATE = propTag(PT_BINARY, 0x3D11) PR_PROFILE_NAME = propTag(PT_TSTRING, 0x3D12) PR_PROFILE_NAME_A = propTag(PT_STRING8, 0x3D12) PR_PROFILE_NAME_W = propTag(PT_UNICODE, 0x3D12) PR_IDENTITY_DISPLAY = propTag(PT_TSTRING, 0x3E00) PR_IDENTITY_DISPLAY_W = propTag(PT_UNICODE, 0x3E00) PR_IDENTITY_DISPLAY_A = propTag(PT_STRING8, 0x3E00) PR_IDENTITY_ENTRYID = propTag(PT_BINARY, 0x3E01) PR_RESOURCE_METHODS = propTag(PT_LONG, 0x3E02) PR_RESOURCE_TYPE = propTag(PT_LONG, 0x3E03) PR_STATUS_CODE = propTag(PT_LONG, 0x3E04) PR_IDENTITY_SEARCH_KEY = propTag(PT_BINARY, 0x3E05) PR_OWN_STORE_ENTRYID = propTag(PT_BINARY, 0x3E06) PR_RESOURCE_PATH = propTag(PT_TSTRING, 0x3E07) PR_RESOURCE_PATH_W = propTag(PT_UNICODE, 0x3E07) PR_RESOURCE_PATH_A = propTag(PT_STRING8, 0x3E07) PR_STATUS_STRING = propTag(PT_TSTRING, 0x3E08) PR_STATUS_STRING_W = propTag(PT_UNICODE, 0x3E08) PR_STATUS_STRING_A = propTag(PT_STRING8, 0x3E08) PR_X400_DEFERRED_DELIVERY_CANCEL = propTag(PT_BOOLEAN, 0x3E09) PR_HEADER_FOLDER_ENTRYID = propTag(PT_BINARY, 0x3E0A) PR_REMOTE_PROGRESS = propTag(PT_LONG, 0x3E0B) PR_REMOTE_PROGRESS_TEXT = propTag(PT_TSTRING, 0x3E0C) PR_REMOTE_PROGRESS_TEXT_W = propTag(PT_UNICODE, 0x3E0C) PR_REMOTE_PROGRESS_TEXT_A = propTag(PT_STRING8, 0x3E0C) PR_REMOTE_VALIDATE_OK = propTag(PT_BOOLEAN, 0x3E0D) PR_CONTROL_FLAGS = propTag(PT_LONG, 0x3F00) PR_CONTROL_STRUCTURE = propTag(PT_BINARY, 0x3F01) PR_CONTROL_TYPE = propTag(PT_LONG, 0x3F02) PR_DELTAX = propTag(PT_LONG, 0x3F03) PR_DELTAY = propTag(PT_LONG, 0x3F04) PR_XPOS = propTag(PT_LONG, 0x3F05) PR_YPOS = propTag(PT_LONG, 0x3F06) PR_CONTROL_ID = propTag(PT_BINARY, 0x3F07) PR_INITIAL_DETAILS_PANE = propTag(PT_LONG, 0x3F08) )
Property names as defined in mapi4linux/include/mapitags.h. This defines all property names independently from kcc-go support.
var ( PR_ATTACH_CONTENT_ID = (propTag(PT_TSTRING, 0x3712)) PR_ATTACH_CONTENT_ID_A = (propTag(PT_STRING8, 0x3712)) PR_ATTACH_CONTENT_ID_W = (propTag(PT_UNICODE, 0x3712)) PR_ATTACH_CONTENT_LOCATION = (propTag(PT_TSTRING, 0x3713)) PR_ATTACH_CONTENT_LOCATION_A = (propTag(PT_STRING8, 0x3713)) PR_ATTACH_CONTENT_LOCATION_W = (propTag(PT_UNICODE, 0x3713)) PR_USER_X509_CERTIFICATE = (propTag(PT_MV_BINARY, 0x3a70)) PR_EMS_AB_X509_CERT = propTag(PT_MV_BINARY, 0x8c6a) PR_NT_SECURITY_DESCRIPTOR = (propTag(PT_BINARY, 0x0E27)) PR_BODY_HTML = (propTag(PT_TSTRING, 0x1013)) PR_INTERNET_MESSAGE_ID = propTag(PT_TSTRING, 0x1035) PR_INTERNET_MESSAGE_ID_A = propTag(PT_STRING8, 0x1035) PR_INTERNET_MESSAGE_ID_W = propTag(PT_UNICODE, 0x1035) PR_SMTP_ADDRESS = propTag(PT_TSTRING, 0x39FE) PR_SMTP_ADDRESS_A = propTag(PT_STRING8, 0x39FE) PR_SMTP_ADDRESS_W = propTag(PT_UNICODE, 0x39FE) PR_DEF_POST_MSGCLASS = propTag(PT_TSTRING, 0x36E5) PR_DEF_POST_MSGCLASS_A = propTag(PT_STRING8, 0x36E5) PR_DEF_POST_MSGCLASS_W = propTag(PT_UNICODE, 0x36E5) PR_DEF_POST_DISPLAYNAME = propTag(PT_TSTRING, 0x36E6) PR_DEF_POST_DISPLAYNAME_A = propTag(PT_STRING8, 0x36E6) PR_DEF_POST_DISPLAYNAME_W = propTag(PT_UNICODE, 0x36E6) PR_INTERNET_ARTICLE_NUMBER = propTag(PT_LONG, 0x0E23) PR_FREEBUSY_ENTRYIDS = propTag(PT_MV_BINARY, 0x36E4) PR_SEND_INTERNET_ENCODING = propTag(PT_LONG, 0x3A71) PR_RECIPIENT_TRACKSTATUS = propTag(PT_LONG, 0x5FFF) PR_RECIPIENT_FLAGS = propTag(PT_LONG, 0x5FFD) PR_RECIPIENT_ENTRYID = propTag(PT_BINARY, 0x5FF7) PR_RECIPIENT_DISPLAY_NAME = propTag(PT_TSTRING, 0x5FF6) PR_RECIPIENT_DISPLAY_NAME_A = propTag(PT_STRING8, 0x5FF6) PR_RECIPIENT_DISPLAY_NAME_W = propTag(PT_UNICODE, 0x5FF6) PR_ICON_INDEX = propTag(PT_LONG, 0x1080) PR_OST_OSTID = propTag(PT_BINARY, 0x7c04) PR_OFFLINE_FOLDER = propTag(PT_BINARY, 0x7c05) PR_FAV_DISPLAY_NAME = propTag(PT_TSTRING, 0x7C00) PR_FAV_DISPLAY_NAME_A = propTag(PT_STRING8, 0x7C00) PR_FAV_DISPLAY_NAME_W = propTag(PT_UNICODE, 0x7C00) PR_FAV_DISPLAY_ALIAS = propTag(PT_TSTRING, 0x7C01) PR_FAV_DISPLAY_ALIAS_A = propTag(PT_STRING8, 0x7C01) PR_FAV_DISPLAY_ALIAS_W = propTag(PT_UNICODE, 0x7C01) PR_FAV_PUBLIC_SOURCE_KEY = propTag(PT_BINARY, 0x7C02) PR_FAV_AUTOSUBFOLDERS = propTag(PT_LONG, 0x7d01) PR_FAV_PARENT_SOURCE_KEY = propTag(PT_BINARY, 0x7d02) PR_FAV_LEVEL_MASK = propTag(PT_LONG, 0x7D03) PR_FAV_KNOWN_SUBS = propTag(PT_BINARY, 0x7D04) PR_FAV_GUID_MAP = propTag(PT_BINARY, 0x7D05) PR_FAV_KNOWN_DELS_OLD = propTag(PT_BINARY, 0x7D06) PR_FAV_INHERIT_AUTO = propTag(PT_LONG, 0x7d07) PR_FAV_DEL_SUBS = propTag(PT_BINARY, 0x7D08) PR_FAV_CONTAINER_CLASS = propTag(PT_TSTRING, 0x7D09) PR_FAV_CONTAINER_CLASS_A = propTag(PT_STRING8, 0x7D09) PR_FAV_CONTAINER_CLASS_W = propTag(PT_UNICODE, 0x7D09) PR_IN_REPLY_TO_ID = propTag(PT_TSTRING, 0x1042) PR_IN_REPLY_TO_ID_A = propTag(PT_STRING8, 0x1042) PR_IN_REPLY_TO_ID_W = propTag(PT_UNICODE, 0x1042) PR_ATTACH_FLAGS = propTag(PT_LONG, 0x3714) PR_ATTACHMENT_LINKID = propTag(PT_LONG, 0x7FFA) PR_EXCEPTION_STARTTIME = propTag(PT_SYSTIME, 0x7FFB) PR_EXCEPTION_ENDTIME = propTag(PT_SYSTIME, 0x7FFC) PR_EXCEPTION_REPLACETIME = propTag(PT_SYSTIME, 0x7FF9) PR_ATTACHMENT_FLAGS = propTag(PT_LONG, 0x7FFD) PR_ATTACHMENT_HIDDEN = propTag(PT_BOOLEAN, 0x7FFE) PR_ATTACHMENT_CONTACTPHOTO = propTag(PT_BOOLEAN, 0x7FFF) PR_CONFLICT_ITEMS = propTag(PT_MV_BINARY, 0x1098) PR_INTERNET_APPROVED = propTag(PT_TSTRING, 0x1030) PR_INTERNET_APPROVED_A = propTag(PT_STRING8, 0x1030) PR_INTERNET_APPROVED_W = propTag(PT_UNICODE, 0x1030) PR_INTERNET_CONTROL = propTag(PT_TSTRING, 0x1031) PR_INTERNET_CONTROL_A = propTag(PT_STRING8, 0x1031) PR_INTERNET_CONTROL_W = propTag(PT_UNICODE, 0x1031) PR_INTERNET_DISTRIBUTION = propTag(PT_TSTRING, 0x1032) PR_INTERNET_DISTRIBUTION_A = propTag(PT_STRING8, 0x1032) PR_INTERNET_DISTRIBUTION_W = propTag(PT_UNICODE, 0x1032) PR_INTERNET_FOLLOWUP_TO = propTag(PT_TSTRING, 0x1033) PR_INTERNET_FOLLOWUP_TO_A = propTag(PT_STRING8, 0x1033) PR_INTERNET_FOLLOWUP_TO_W = propTag(PT_UNICODE, 0x1033) PR_INTERNET_LINES = propTag(PT_LONG, 0x1034) PR_INTERNET_NEWSGROUPS = propTag(PT_TSTRING, 0x1036) PR_INTERNET_NEWSGROUPS_A = propTag(PT_STRING8, 0x1036) PR_INTERNET_NEWSGROUPS_W = propTag(PT_UNICODE, 0x1036) PR_INTERNET_NNTP_PATH = propTag(PT_TSTRING, 0x1038) PR_INTERNET_NNTP_PATH_A = propTag(PT_STRING8, 0x1038) PR_INTERNET_NNTP_PATH_W = propTag(PT_UNICODE, 0x1038) PR_INTERNET_ORGANIZATION = propTag(PT_TSTRING, 0x1037) PR_INTERNET_ORGANIZATION_A = propTag(PT_STRING8, 0x1037) PR_INTERNET_ORGANIZATION_W = propTag(PT_UNICODE, 0x1037) PR_INTERNET_PRECEDENCE = propTag(PT_TSTRING, 0x1041) PR_INTERNET_PRECEDENCE_A = propTag(PT_STRING8, 0x1041) PR_INTERNET_PRECEDENCE_W = propTag(PT_UNICODE, 0x1041) PR_INTERNET_REFERENCES = propTag(PT_TSTRING, 0x1039) PR_INTERNET_REFERENCES_A = propTag(PT_STRING8, 0x1039) PR_INTERNET_REFERENCES_W = propTag(PT_UNICODE, 0x1039) PR_NEWSGROUP_NAME = propTag(PT_TSTRING, 0x0E24) PR_NNTP_XREF = propTag(PT_TSTRING, 0x1040) PR_NNTP_XREF_A = propTag(PT_STRING8, 0x1040) PR_NNTP_XREF_W = propTag(PT_UNICODE, 0x1040) PR_POST_FOLDER_ENTRIES = propTag(PT_BINARY, 0x103B) PR_POST_FOLDER_NAMES = propTag(PT_TSTRING, 0x103C) PR_POST_FOLDER_NAMES_A = propTag(PT_STRING8, 0x103C) PR_POST_FOLDER_NAMES_W = propTag(PT_UNICODE, 0x103C) PR_POST_REPLY_DENIED = propTag(PT_BINARY, 0x103F) PR_POST_REPLY_FOLDER_ENTRIES = propTag(PT_BINARY, 0x103D) PR_POST_REPLY_FOLDER_NAMES = propTag(PT_TSTRING, 0x103E) PR_POST_REPLY_FOLDER_NAMES_A = propTag(PT_STRING8, 0x103E) PR_POST_REPLY_FOLDER_NAMES_W = propTag(PT_UNICODE, 0x103E) PR_SUPERSEDES = propTag(PT_TSTRING, 0x103A) PR_SUPERSEDES_A = propTag(PT_STRING8, 0x103A) PR_SUPERSEDES_W = propTag(PT_UNICODE, 0x103A) PR_ASSOCIATED = propTag(PT_BOOLEAN, 0x67AA) PR_PROCESSED = propTag(PT_BOOLEAN, 0x7D01) PR_IPM_APPOINTMENT_ENTRYID = propTag(PT_BINARY, 0x36D0) PR_IPM_CONTACT_ENTRYID = propTag(PT_BINARY, 0x36D1) PR_IPM_JOURNAL_ENTRYID = propTag(PT_BINARY, 0x36D2) PR_IPM_NOTE_ENTRYID = propTag(PT_BINARY, 0x36D3) PR_IPM_TASK_ENTRYID = propTag(PT_BINARY, 0x36D4) PR_REM_ONLINE_ENTRYID = propTag(PT_BINARY, 0x36D5) PR_REM_OFFLINE_ENTRYID = propTag(PT_BINARY, 0x36D6) PR_IPM_DRAFTS_ENTRYID = propTag(PT_BINARY, 0x36D7) PR_IPM_OL2007_ENTRYIDS = propTag(PT_BINARY, 0x36D9) PR_ADDITIONAL_REN_ENTRYIDS = propTag(PT_MV_BINARY, 0x36D8) PR_MDN_DISPOSITION_TYPE = propTag(PT_STRING8, 0x0080) PR_MDN_DISPOSITION_SENDINGMODE = propTag(PT_STRING8, 0x0081) PR_LAST_VERB_EXECUTED = propTag(PT_LONG, 0x1081) PR_LAST_VERB_EXECUTION_TIME = propTag(PT_SYSTIME, 0x1082) PR_SEARCH_ATTACHMENTS = propTag(PT_TSTRING, 0x0EA5) PR_SEARCH_ATTACHMENTS_A = propTag(PT_STRING8, 0x0EA5) PR_SEARCH_ATTACHMENTS_W = propTag(PT_UNICODE, 0x0EA5) PR_SEARCH_RECIP_EMAIL_TO = propTag(PT_TSTRING, 0x0EA6) PR_SEARCH_RECIP_EMAIL_TO_A = propTag(PT_STRING8, 0x0EA6) PR_SEARCH_RECIP_EMAIL_TO_W = propTag(PT_UNICODE, 0x0EA6) PR_SEARCH_RECIP_EMAIL_CC = propTag(PT_TSTRING, 0x0EA7) PR_SEARCH_RECIP_EMAIL_CC_A = propTag(PT_STRING8, 0x0EA7) PR_SEARCH_RECIP_EMAIL_CC_W = propTag(PT_UNICODE, 0x0EA7) PR_SEARCH_RECIP_EMAIL_BCC = propTag(PT_TSTRING, 0x0EA8) PR_SEARCH_RECIP_EMAIL_BCC_A = propTag(PT_STRING8, 0x0EA8) PR_SEARCH_RECIP_EMAIL_BCC_W = propTag(PT_UNICODE, 0x0EA8) PR_FOLDER_XVIEWINFO_E = propTag(PT_BINARY, 0x36E0) PR_FOLDER_DISPLAY_FLAGS = propTag(PT_BINARY, 0x36DA) PR_NET_FOLDER_FLAGS = propTag(PT_LONG, 0x36DE) PR_FOLDER_WEBVIEWINFO = propTag(PT_BINARY, 0x36DF) PR_FOLDER_VIEWS_ONLY = propTag(PT_LONG, 0x36E1) PR_MANAGED_FOLDER_INFORMATION = propTag(PT_LONG, 0x672D) PR_MANAGED_FOLDER_STORAGE_QUOTA = propTag(PT_LONG, 0x6731) PR_SCHDINFO_DELEGATE_NAMES = propTag(PT_MV_TSTRING, 0x6844) PR_SCHDINFO_DELEGATE_ENTRYIDS = propTag(PT_MV_BINARY, 0x6845) PR_DELEGATE_FLAGS = propTag(PT_MV_LONG, 0x686B) PR_TODO_ITEM_FLAGS = propTag(PT_LONG, 0x0E2B) PR_FOLLOWUP_ICON = propTag(PT_LONG, 0x1095) PR_FLAG_STATUS = propTag(PT_LONG, 0x1090) PR_FLAG_COMPLETE_TIME = propTag(PT_SYSTIME, 0x1091) PR_INETMAIL_OVERRIDE_FORMAT = propTag(PT_LONG, 0x5902) PR_DISPLAY_TYPE_EX = propTag(PT_LONG, 0x3905) PR_EMS_AB_ROOM_CAPACITY = propTag(PT_LONG, 0x0807) PR_EMS_AB_ROOM_DESCRIPTION = propTag(PT_STRING8, 0x0809) PR_ASSOCIATED_SHARING_PROVIDER = propTag(PT_CLSID, 0x0ea0) PR_EMSMDB_SECTION_UID = propTag(PT_BINARY, 0x3d15) PR_EMSMDB_LEGACY = propTag(PT_BOOLEAN, 0x3D18) PR_EMSABP_USER_UID = propTag(PT_BINARY, 0x3D1A) PR_ARCHIVE_TAG = propTag(PT_BINARY, 0x3018) PR_ARCHIVE_PERIOD = propTag(PT_LONG, 0x301e) PR_ARCHIVE_DATE = propTag(PT_SYSTIME, 0x301f) PR_RETENTION_FLAGS = propTag(PT_LONG, 0x301d) PR_RETENTION_DATE = propTag(PT_SYSTIME, 0x301c) PR_POLICY_TAG = propTag(PT_BINARY, 0x3019) PR_ROAMING_DATATYPES = propTag(PT_LONG, 0x7c06) PR_ITEM_TMPFLAGS = propTag(PT_LONG, 0x1097) PR_SECURE_SUBMIT_FLAGS = propTag(PT_LONG, 0x65C6) PR_SECURITY_FLAGS = propTag(PT_LONG, 0x6E01) PR_CONVERSATION_ID = propTag(PT_BINARY, 0x3013) PR_AB_CHOOSE_DIRECTORY_AUTOMATICALLY = propTag(PT_BOOLEAN, 0x3D1C) PR_STORE_UNICODE_MASK = propTag(PT_LONG, 0x340f) PR_PROCESS_MEETING_REQUESTS = propTag(PT_BOOLEAN, 0x686d) PR_DECLINE_CONFLICTING_MEETING_REQUESTS = propTag(PT_BOOLEAN, 0x686f) PR_DECLINE_RECURRING_MEETING_REQUESTS = propTag(PT_BOOLEAN, 0x686e) PR_SCHDINFO_RESOURCE_TYPE = propTag(PT_LONG, 0x6841) PR_SCHDINFO_BOSS_WANTS_COPY = propTag(PT_BOOLEAN, 0x6842) PR_SCHDINFO_DONT_MAIL_DELEGATES = propTag(PT_BOOLEAN, 0x6843) PR_SCHDINFO_BOSS_WANTS_INFO = propTag(PT_BOOLEAN, 0x684B) PR_PROFILE_MDB_DN = propTag(PT_STRING8, 0x7CFF) PR_FORCE_USE_ENTRYID_SERVER = propTag(PT_BOOLEAN, 0x7CFE) )
Property names as defined in m4lcommon/include/kopano/mapiext.h. This defines all property names independently from kcc-go support.
var ( PR_EC_PATH = propTag(PT_STRING8, 0x6700) PR_EC_USERNAME = propTag(PT_TSTRING, 0x6701) PR_EC_USERNAME_A = propTag(PT_STRING8, 0x6701) PR_EC_USERNAME_W = propTag(PT_UNICODE, 0x6701) PR_EC_USERPASSWORD = propTag(PT_TSTRING, 0x6702) PR_EC_USERPASSWORD_A = propTag(PT_STRING8, 0x6702) PR_EC_USERPASSWORD_W = propTag(PT_UNICODE, 0x6702) PR_EC_PORT = propTag(PT_STRING8, 0x6703) PR_EC_FLAGS = propTag(PT_LONG, 0x6704) PR_EC_SSLKEY_FILE = propTag(PT_STRING8, 0x6705) PR_EC_SSLKEY_PASS = propTag(PT_STRING8, 0x6706) PR_EC_LAST_CONNECTIONTYPE = propTag(PT_LONG, 0x6709) PR_EC_CONNECTION_TIMEOUT = propTag(PT_LONG, 0x670A) PR_EC_SERVER_VERSION = propTag(PT_TSTRING, 0x6716) PR_EC_PROXY_HOST = propTag(PT_STRING8, 0x670B) PR_EC_PROXY_PORT = propTag(PT_LONG, 0x670C) PR_EC_PROXY_USERNAME = propTag(PT_STRING8, 0x670D) PR_EC_PROXY_PASSWORD = propTag(PT_STRING8, 0x670E) PR_EC_PROXY_FLAGS = propTag(PT_LONG, 0x670F) PR_EC_SERVERNAME = propTag(PT_TSTRING, 0x6711) PR_EC_SERVERNAME_A = propTag(PT_STRING8, 0x6711) PR_EC_SERVERNAME_W = propTag(PT_UNICODE, 0x6711) PR_EC_IMPERSONATEUSER = propTag(PT_TSTRING, 0x6712) PR_EC_IMPERSONATEUSER_A = propTag(PT_STRING8, 0x6712) PR_EC_IMPERSONATEUSER_W = propTag(PT_UNICODE, 0x6712) PR_ZC_CONTACT_STORE_ENTRYIDS = propTag(PT_MV_BINARY, 0x6711) PR_ZC_CONTACT_FOLDER_ENTRYIDS = propTag(PT_MV_BINARY, 0x6712) PR_ZC_CONTACT_FOLDER_NAMES = propTag(PT_MV_TSTRING, 0x6713) PR_ZC_CONTACT_FOLDER_NAMES_A = propTag(PT_MV_STRING8, 0x6713) PR_ZC_CONTACT_FOLDER_NAMES_W = propTag(PT_MV_UNICODE, 0x6713) PR_ZC_ORIGINAL_ENTRYID = propTag(PT_BINARY, 0x6720) PR_ZC_ORIGINAL_PARENT_ENTRYID = propTag(PT_BINARY, 0x6721) PR_ZC_ORIGINAL_SOURCE_KEY = propTag(PT_BINARY, 0x6722) PR_ZC_ORIGINAL_PARENT_SOURCE_KEY = propTag(PT_BINARY, 0x6723) PR_ZC_ORIGINAL_CHANGE_KEY = propTag(PT_BINARY, 0x6724) PR_EC_CONTACT_ENTRYID = propTag(PT_BINARY, 0x6710) PR_EC_HIERARCHYID = propTag(PT_LONG, 0x6711) PR_EC_STOREGUID = propTag(PT_BINARY, 0x6712) PR_EC_COMPANYID = propTag(PT_LONG, 0x6713) PR_EC_STORETYPE = propTag(PT_LONG, 0x6714) PR_EC_PARENT_HIERARCHYID = propTag(PT_LONG, 0x6715) PR_EC_QUOTA_MAIL_TIME = propTag(PT_SYSTIME, 0x6720) PR_EC_STATSTABLE_SYSTEM = propTag(PT_OBJECT, 0x6730) PR_EC_STATSTABLE_SESSIONS = propTag(PT_OBJECT, 0x6731) PR_EC_STATSTABLE_USERS = propTag(PT_OBJECT, 0x6732) PR_EC_STATSTABLE_COMPANY = propTag(PT_OBJECT, 0x6733) PR_EC_STATSTABLE_SERVERS = propTag(PT_OBJECT, 0x6734) PR_EC_STATS_SYSTEM_DESCRIPTION = propTag(PT_STRING8, 0x6740) PR_EC_STATS_SYSTEM_VALUE = propTag(PT_STRING8, 0x6741) PR_EC_STATS_SESSION_ID = propTag(PT_LONGLONG, 0x6742) PR_EC_STATS_SESSION_IPADDRESS = propTag(PT_STRING8, 0x6743) PR_EC_STATS_SESSION_IDLETIME = propTag(PT_LONG, 0x6744) PR_EC_STATS_SESSION_CAPABILITY = propTag(PT_LONG, 0x6745) PR_EC_STATS_SESSION_LOCKED = propTag(PT_BOOLEAN, 0x6746) PR_EC_STATS_SESSION_BUSYSTATES = propTag(PT_MV_STRING8, 0x6747) PR_EC_STATS_SESSION_PORT = propTag(PT_LONG, 0x6748) PR_EC_STATS_SESSION_PROCSTATES = propTag(PT_MV_STRING8, 0x6749) PR_EC_COMPANY_NAME = propTag(PT_TSTRING, 0x6748) PR_EC_COMPANY_NAME_A = propTag(PT_STRING8, 0x6748) PR_EC_COMPANY_NAME_W = propTag(PT_UNICODE, 0x6748) PR_EC_COMPANY_ADMIN = propTag(PT_TSTRING, 0x6749) PR_EC_COMPANY_ADMIN_A = propTag(PT_STRING8, 0x6749) PR_EC_COMPANY_ADMIN_W = propTag(PT_UNICODE, 0x6749) PR_EC_STATS_SESSION_CPU_USER = propTag(PT_DOUBLE, 0x674A) PR_EC_STATS_SESSION_CPU_SYSTEM = propTag(PT_DOUBLE, 0x674B) PR_EC_STATS_SESSION_CPU_REAL = propTag(PT_DOUBLE, 0x674C) PR_EC_STATS_SESSION_GROUP_ID = propTag(PT_LONGLONG, 0x674D) PR_EC_STATS_SESSION_PEER_PID = propTag(PT_LONG, 0x674E) PR_EC_STATS_SESSION_CLIENT_VERSION = propTag(PT_STRING8, 0x674F) PR_EC_STATS_SESSION_CLIENT_APPLICATION = propTag(PT_STRING8, 0x6750) PR_EC_STATS_SESSION_REQUESTS = propTag(PT_LONG, 0x6751) PR_EC_STATS_SESSION_URL = propTag(PT_STRING8, 0x6752) PR_EC_STATS_SESSION_PROXY = propTag(PT_STRING8, 0x6753) PR_EC_STATS_SESSION_CLIENT_APPLICATION_VERSION = propTag(PT_STRING8, 0x6754) PR_EC_STATS_SESSION_CLIENT_APPLICATION_MISC = propTag(PT_STRING8, 0x6755) PR_EC_OUTOFOFFICE = propTag(PT_BOOLEAN, 0x6760) PR_EC_OUTOFOFFICE_MSG = propTag(PT_TSTRING, 0x6761) PR_EC_OUTOFOFFICE_MSG_A = propTag(PT_STRING8, 0x6761) PR_EC_OUTOFOFFICE_MSG_W = propTag(PT_UNICODE, 0x6761) PR_EC_OUTOFOFFICE_SUBJECT = propTag(PT_TSTRING, 0x6762) PR_EC_OUTOFOFFICE_SUBJECT_A = propTag(PT_STRING8, 0x6762) PR_EC_OUTOFOFFICE_SUBJECT_W = propTag(PT_UNICODE, 0x6762) PR_EC_OUTOFOFFICE_FROM = propTag(PT_SYSTIME, 0x6763) PR_EC_OUTOFOFFICE_UNTIL = propTag(PT_SYSTIME, 0x6764) PR_EC_WEBACCESS_SETTINGS = propTag(PT_TSTRING, 0x6770) PR_EC_WEBACCESS_SETTINGS_A = propTag(PT_STRING8, 0x6770) PR_EC_WEBACCESS_SETTINGS_W = propTag(PT_UNICODE, 0x6770) PR_EC_RECIPIENT_HISTORY = propTag(PT_TSTRING, 0x6771) PR_EC_RECIPIENT_HISTORY_A = propTag(PT_STRING8, 0x6771) PR_EC_RECIPIENT_HISTORY_W = propTag(PT_UNICODE, 0x6771) PR_EC_WEBACCESS_SETTINGS_JSON = propTag(PT_TSTRING, 0x6772) PR_EC_WEBACCESS_SETTINGS_JSON_W = propTag(PT_UNICODE, 0x6772) PR_EC_WEBACCESS_SETTINGS_JSON_A = propTag(PT_STRING8, 0x6772) PR_EC_RECIPIENT_HISTORY_JSON = propTag(PT_TSTRING, 0x6773) PR_EC_RECIPIENT_HISTORY_JSON_W = propTag(PT_UNICODE, 0x6773) PR_EC_RECIPIENT_HISTORY_JSON_A = propTag(PT_STRING8, 0x6773) PR_EC_WEBAPP_PERSISTENT_SETTINGS_JSON = propTag(PT_TSTRING, 0x6774) PR_EC_WEBAPP_PERSISTENT_SETTINGS_JSON_A = propTag(PT_STRING8, 0x6774) PR_EC_WEBAPP_PERSISTENT_SETTINGS_JSON_W = propTag(PT_UNICODE, 0x6774) PR_EC_STATS_SERVER_NAME = propTag(PT_STRING8, 0x67F0) PR_EC_STATS_SERVER_HOST = propTag(PT_STRING8, 0x67F1) PR_EC_STATS_SERVER_HTTPPORT = propTag(PT_LONG, 0x67F2) PR_EC_STATS_SERVER_SSLPORT = propTag(PT_LONG, 0x67F3) PR_EC_STATS_SERVER_FILEPATH = propTag(PT_STRING8, 0x67F4) PR_EC_STATS_SERVER_PROXYURL = propTag(PT_STRING8, 0x67F5) PR_EC_STATS_SERVER_HTTPURL = propTag(PT_STRING8, 0x67F6) PR_EC_STATS_SERVER_HTTPSURL = propTag(PT_STRING8, 0x67F7) PR_EC_STATS_SERVER_FILEURL = propTag(PT_STRING8, 0x67F8) PR_EC_TRANSPORTOBJECT = propTag(PT_OBJECT, 0x677E) PR_EC_OBJECT = propTag(PT_OBJECT, 0x677F) PR_EC_OUTGOING_FLAGS = propTag(PT_LONG, 0x6780) PR_EC_MAILBOX_OWNER_ACCOUNT = propTag(PT_TSTRING, 0x6781) PR_EC_MAILBOX_OWNER_ACCOUNT_A = propTag(PT_STRING8, 0x6781) PR_EC_MAILBOX_OWNER_ACCOUNT_W = propTag(PT_UNICODE, 0x6781) PR_EC_IMAP_ID = propTag(PT_LONG, 0x6782) PR_EC_IMAP_SUBSCRIBED = propTag(PT_BINARY, 0x6784) PR_EC_IMAP_MAX_ID = propTag(PT_LONG, 0x6785) PR_EC_CLIENT_SUBMIT_DATE = propTag(PT_SYSTIME, 0x6786) PR_EC_MESSAGE_DELIVERY_DATE = propTag(PT_SYSTIME, 0x6787) PR_EC_MESSAGE_BCC_ME = propTag(PT_BOOLEAN, 0x6725) PR_EC_IMAP_EMAIL = propTag(PT_BINARY, 0x678C) PR_EC_IMAP_EMAIL_SIZE = propTag(PT_LONG, 0x678D) PR_EC_IMAP_BODY = propTag(PT_STRING8, 0x678E) PR_EC_IMAP_BODYSTRUCTURE = propTag(PT_STRING8, 0x678F) PR_EC_SENDAS_USER_ENTRYIDS = propTag(PT_MV_BINARY, 0x6783) PR_EC_EXCHANGE_DN = propTag(PT_TSTRING, 0x6788) PR_EC_EXCHANGE_DN_A = propTag(PT_STRING8, 0x6788) PR_EC_EXCHANGE_DN_W = propTag(PT_UNICODE, 0x6788) PR_EC_CHANGE_ADVISOR = propTag(PT_OBJECT, 0x6789) PR_EC_HOMESERVER_NAME = propTag(PT_TSTRING, 0x67C1) PR_EC_HOMESERVER_NAME_A = propTag(PT_STRING8, 0x67C1) PR_EC_HOMESERVER_NAME_W = propTag(PT_UNICODE, 0x67C1) PR_EC_SERVER_UID = propTag(PT_BINARY, 0x67C2) PR_EC_DELETED_STORE = propTag(PT_BOOLEAN, 0x67C3) PR_EC_ARCHIVE_SERVERS = propTag(PT_MV_TSTRING, 0x67C4) PR_EC_ARCHIVE_SERVERS_A = propTag(PT_MV_STRING8, 0x67C4) PR_EC_ARCHIVE_SERVERS_W = propTag(PT_MV_UNICODE, 0x67C4) PR_EC_ARCHIVE_COUPLINGS = propTag(PT_MV_TSTRING, 0x67C5) PR_EC_ARCHIVE_COUPLINGS_A = propTag(PT_MV_STRING8, 0x67C5) PR_EC_ARCHIVE_COUPLINGS_W = propTag(PT_MV_UNICODE, 0x67C5) PR_EC_SEARCHFOLDER_STATUS = propTag(PT_LONG, 0x6790) PR_EC_BODY_FILTERED = propTag(PT_BINARY, 0x6791) PR_EC_RESYNC_ID = propTag(PT_LONG, 0x67A5) PR_EC_STORED_SERVER_UID = propTag(PT_BINARY, 0x67A6) PR_EC_AB_HIDDEN = propTag(PT_BOOLEAN, 0x67A7) PR_EC_NONACTIVE = propTag(PT_BOOLEAN, 0x67B0) PR_EC_ADMINISTRATOR = propTag(PT_LONG, 0x67B1) PR_EC_ENABLED_FEATURES = propTag(PT_MV_TSTRING, 0x67B3) PR_EC_ENABLED_FEATURES_A = propTag(PT_MV_STRING8, 0x67B3) PR_EC_ENABLED_FEATURES_W = propTag(PT_MV_UNICODE, 0x67B3) PR_EC_DISABLED_FEATURES = propTag(PT_MV_TSTRING, 0x67B4) PR_EC_DISABLED_FEATURES_A = propTag(PT_MV_STRING8, 0x67B4) PR_EC_DISABLED_FEATURES_W = propTag(PT_MV_UNICODE, 0x67B4) PR_EC_PUBLIC_IPM_SUBTREE_ENTRYID = propTag(PT_BINARY, 0x67D0) PR_EC_BACKUP_SOURCE_KEY = propTag(PT_BINARY, 0x67D1) )
Property names as defined in m4lcommon/include/kopano/ECTags.h. This defines all property names independently from kcc-go support.
var ( // SessionAutorefreshInterval defines the interval when sessions are auto // refreshed automatically. SessionAutorefreshInterval = 4 * time.Minute // SessionExpirationGrace defines the duration after SessionAutorefreshInterval // when a session was not refreshed and can be considerd non active. SessionExpirationGrace = 2 * time.Minute )
var DefaultClientCapabilities = KOPANO_CAP_UNICODE | KOPANO_CAP_LARGE_SESSIONID | KOPANO_CAP_MULTI_SERVER | KOPANO_CAP_ENHANCED_ICS
DefaultClientCapabilities groups the default client caps sent by kcc.
DefaultHTTPClient is the default Client as used by KCC for HTTP SOAP requests.
DefaultHTTPTransport is the default Transpart as used by KCC for HTTP SOAP requests.
var DefaultSOAPClientConfig = &SOAPClientConfig{}
DefaultSOAPClientConfig is the default SOAP client config which is used when constructing SOAP clients with default settings.
DefaultUnixDialer is the default Dialer as used by KSS for Unix socket SOAP request.
var DefaultUnixMaxConnections = 20
DefaultUnixMaxConnections is the default maximum number of connections which will be created to handle parallel SOAP requests to Unix sockets.
var KCErrorNameMap = map[KCError]string{ KCERR_UNKNOWN: "KCERR_UNKNOWN", KCERR_NOT_FOUND: "KCERR_NOT_FOUND:", KCERR_NO_ACCESS: "KCERR_NO_ACCESS", KCERR_NETWORK_ERROR: "KCERR_NETWORK_ERROR", KCERR_SERVER_NOT_RESPONDING: "KCERR_SERVER_NOT_RESPONDING", KCERR_INVALID_TYPE: "KCERR_INVALID_TYPE", KCERR_DATABASE_ERROR: "KCERR_DATABASE_ERROR", KCERR_COLLISION: "KCERR_COLLISION", KCERR_LOGON_FAILED: "KCERR_LOGON_FAILED", KCERR_HAS_MESSAGES: "KCERR_HAS_MESSAGE", KCERR_HAS_FOLDERS: "KCERR_HAS_FOLDERS", KCERR_HAS_RECIPIENTS: "KCERR_HAS_RECIPIENTS", KCERR_HAS_ATTACHMENTS: "KCERR_HAS_ATTACHMENTS", KCERR_NOT_ENOUGH_MEMORY: "KCERR_NOT_ENOUGH_MEMORY", KCERR_TOO_COMPLEX: "KCERR_TOO_COMPLEX", KCERR_END_OF_SESSION: "KCERR_END_OF_SESSION", KCWARN_CALL_KEEPALIVE: "KCWARN_CALL_KEEPALIVE", KCERR_UNABLE_TO_ABORT: "KCERR_UNABLE_TO_ABORT", KCERR_NOT_IN_QUEUE: "KCERR_NOT_IN_QUEUE", KCERR_INVALID_PARAMETER: "KCERR_INVALID_PARAMETER", KCWARN_PARTIAL_COMPLETION: "KCWARN_PARTIAL_COMPLETION", KCERR_INVALID_ENTRYID: "KCERR_INVALID_ENTRYID", KCERR_BAD_VALUE: "KCERR_BAD_VALUE", KCERR_NO_SUPPORT: "KCERR_NO_SUPPORT", KCERR_TOO_BIG: "KCERR_TOO_BIG", KCWARN_POSITION_CHANGED: "KCWARN_POSITION_CHANGED", KCERR_FOLDER_CYCLE: "KCERR_FOLDER_CYCLE", KCERR_STORE_FULL: "KCERR_STORE_FULL", KCERR_PLUGIN_ERROR: "KCERR_PLUGIN_ERROR", KCERR_UNKNOWN_OBJECT: "KCERR_UNKNOWN_OBJECT", KCERR_NOT_IMPLEMENTED: "KCERR_NOT_IMPLEMENTED", KCERR_DATABASE_NOT_FOUND: "KCERR_DATABASE_NOT_FOUND", KCERR_INVALID_VERSION: "KCERR_INVALID_VERSION", KCERR_UNKNOWN_DATABASE: "KCERR_UNKNOWN_DATABASE", KCERR_NOT_INITIALIZED: "KCERR_NOT_INITIALIZED", KCERR_CALL_FAILED: "KCERR_CALL_FAILED", KCERR_SSO_CONTINUE: "KCERR_SSO_CONTINUE", KCERR_TIMEOUT: "KCERR_TIMEOUT", KCERR_INVALID_BOOKMARK: "KCERR_INVALID_BOOKMARK", KCERR_UNABLE_TO_COMPLETE: "KCERR_UNABLE_TO_COMPLETE", KCERR_UNKNOWN_INSTANCE_ID: "KCERR_UNKNOWN_INSTANCE_ID", KCERR_IGNORE_ME: "KCERR_IGNORE_ME", KCERR_BUSY: "KCERR_BUSY", KCERR_OBJECT_DELETED: "KCERR_OBJECT_DELETED", KCERR_USER_CANCEL: "KCERR_USER_CANCEL", KCERR_UNKNOWN_FLAGS: "KCERR_UNKNOWN_FLAGS", KCERR_SUBMITTED: "KCERR_SUBMITTED", }
KCErrorNameMap maps the KCErrors to their string names.
var KCErrorTextMap = map[KCError]string{ KCERR_UNKNOWN: "Unknown", KCERR_NOT_FOUND: "Not Found", KCERR_NO_ACCESS: "No Access", KCERR_NETWORK_ERROR: "Network Error", KCERR_SERVER_NOT_RESPONDING: "Server Not Responding", KCERR_INVALID_TYPE: "Invalid Type", KCERR_DATABASE_ERROR: "Database Error", KCERR_COLLISION: "Object Collission", KCERR_LOGON_FAILED: "Logon Failed", KCERR_HAS_MESSAGES: "Object With Message Children", KCERR_HAS_FOLDERS: "Object With Folder Children", KCERR_HAS_RECIPIENTS: "Object With Recipient Children", KCERR_HAS_ATTACHMENTS: "Object With Attachment Children", KCERR_NOT_ENOUGH_MEMORY: "Not Enough Memory", KCERR_TOO_COMPLEX: "Too Complex To Be Processed", KCERR_END_OF_SESSION: "End Of Session", KCWARN_CALL_KEEPALIVE: "", KCERR_UNABLE_TO_ABORT: "Unable To Abort", KCERR_NOT_IN_QUEUE: "", KCERR_INVALID_PARAMETER: "Invalid Parameter", KCWARN_PARTIAL_COMPLETION: "Partially Completed Operation", KCERR_INVALID_ENTRYID: "Invalid EntryID", KCERR_BAD_VALUE: "Type Error", KCERR_NO_SUPPORT: "Not Supported", KCERR_TOO_BIG: "Request Too Large", KCWARN_POSITION_CHANGED: "", KCERR_FOLDER_CYCLE: "", KCERR_STORE_FULL: "Store Full Quota Reached", KCERR_PLUGIN_ERROR: "Plugin Failed To Start", KCERR_UNKNOWN_OBJECT: "", KCERR_NOT_IMPLEMENTED: "Not Implemented", KCERR_DATABASE_NOT_FOUND: "Database Not Found", KCERR_INVALID_VERSION: "Database Version Unexpected", KCERR_UNKNOWN_DATABASE: "", KCERR_NOT_INITIALIZED: "", KCERR_CALL_FAILED: "", KCERR_SSO_CONTINUE: "SSO Success", KCERR_TIMEOUT: "Timeout", KCERR_INVALID_BOOKMARK: "", KCERR_UNABLE_TO_COMPLETE: "", KCERR_UNKNOWN_INSTANCE_ID: "", KCERR_IGNORE_ME: "", KCERR_BUSY: "Task Already In Progress", KCERR_OBJECT_DELETED: "Object Deleted", KCERR_USER_CANCEL: "User Cancelled Operation", KCERR_UNKNOWN_FLAGS: "", KCERR_SUBMITTED: "", }
KCErrorTextMap maps the KCErrors to textual description.
var ( // MUIDECSAB is the GUID used in AB EntryIDs (ABEID). Definition copied // from kopanocore/common/include/kopano/ECGuid.h MUIDECSAB = DEFINE_GUID(0x50a921ac, 0xd340, 0x48ee, [8]byte{0xb3, 0x19, 0xfb, 0xa7, 0x53, 0x30, 0x44, 0x25}) )
Functions ¶
func ABEIDEqual ¶
ABEIDEqual returns true if the provided btwo ABEID refer to the same entry considering all relevant fields, ignoring the not relevant (like ID).
func DEFINE_GUID ¶
DEFINE_GUID is a helper to define byte representations of GUIDs.
func KCErrorText ¶
KCErrorText returns a text for the KC error. It returns the empty string if the code is unknown.
func SetX509KeyPairToTLSConfig ¶
SetX509KeyPairToTLSConfig reads and parses a public/private key pair from a pair of files and adds the resulting certificate to the provided TLs config. If the provided TLS config is nil, a new empty one will be created and returned.
Types ¶
type ABEID ¶
type ABEID interface { ABFlags() byte GUID() [16]byte Type() MAPIType ID() uint32 ExID() []byte String() string Hex() string }
ABEID defines the public interface for Kopano AB EntryIDs.
func NewABEIDFromBase64 ¶
NewABEIDFromBase64 takes a base64Std encoded byte value and returns the ABEID represented by those bytes.
func NewABEIDFromBytes ¶
NewABEIDFromBytes takes a byte value and returns the ABEID represented by those bytes.
func NewABEIDFromHex ¶
NewABEIDFromHex takes a hex encoded byte value and returns the ABEID represented by those bytes.
type ABFlag ¶
type ABFlag uint64
ABFlag is the type representing flags known to Kopano Core for AB.
type ABResolveNamesResponse ¶
type ABResolveNamesResponse struct { Er KCError `xml:"er"` RowSet []*PropTagRowSet `xml:"sRowSet>item"` Flags []ABFlag `xml:"aFlags>item"` }
ABResolveNamesResponse holds the returned data of a SOAP request which resolves names.
type GetUserResponse ¶
A GetUserResponse holds the returned data of a SOAP request which fetches user detail meta data.
type KCC ¶
type KCC struct { Client SOAPClient Capabilities KCFlag // contains filtered or unexported fields }
A KCC is the client implementation base object containing the HTTP connection pool and other references to interface with a Kopano server via SOAP.
func NewKCC ¶
NewKCC constructs a KCC instance with the provided URI. If no URI is passed, the current DefaultURI value will tbe used
func NewKCCWithClient ¶
func NewKCCWithClient(client SOAPClient) *KCC
NewKCCWithClient constructs a KCC instance using the provided SOAPClient. Use this function if you need specific SOAPClient settings.
func (*KCC) ABResolveNames ¶
func (c *KCC) ABResolveNames(ctx context.Context, props []PT, request map[PT]interface{}, requestFlags ABFlag, sessionID KCSessionID, resolveNamesFlags KCFlag) (*ABResolveNamesResponse, error)
ABResolveNames searches the AB for the provided props using the provided request data and flags.
func (*KCC) GetUser ¶
func (c *KCC) GetUser(ctx context.Context, userEntryID string, sessionID KCSessionID) (*GetUserResponse, error)
GetUser fetches a user's detail meta data of the provided user Entry ID using the provided session.
func (*KCC) Logoff ¶
func (c *KCC) Logoff(ctx context.Context, sessionID KCSessionID) (*LogoffResponse, error)
Logoff terminates the provided session with the Kopano server.
func (*KCC) Logon ¶
func (c *KCC) Logon(ctx context.Context, username, password string, logonFlags KCFlag) (*LogonResponse, error)
Logon creates a session with the Kopano server using the provided credentials.
func (*KCC) ResolveUsername ¶
func (c *KCC) ResolveUsername(ctx context.Context, username string, sessionID KCSessionID) (*ResolveUserResponse, error)
ResolveUsername looks up the user ID of the provided username using the provided session.
func (*KCC) SSOLogon ¶
func (c *KCC) SSOLogon(ctx context.Context, prefix SSOType, username string, input []byte, sessionID KCSessionID, logonFlags KCFlag) (*LogonResponse, error)
SSOLogon creates a session with the Kopano server using the provided credentials.
func (*KCC) SetClientApp ¶
SetClientApp sets the clients app details as sent with requests to the accociated server.
type KCError ¶
type KCError uint64
KCError is an error as returned by Kopano core.
const ( KCERR_NONE = iota KCERR_UNKNOWN KCError = (1 << 31) | iota KCERR_NOT_FOUND KCERR_NO_ACCESS KCERR_NETWORK_ERROR KCERR_SERVER_NOT_RESPONDING KCERR_INVALID_TYPE KCERR_DATABASE_ERROR KCERR_COLLISION KCERR_LOGON_FAILED KCERR_HAS_MESSAGES KCERR_HAS_FOLDERS KCERR_HAS_RECIPIENTS KCERR_HAS_ATTACHMENTS KCERR_NOT_ENOUGH_MEMORY KCERR_TOO_COMPLEX KCERR_END_OF_SESSION KCWARN_CALL_KEEPALIVE KCERR_UNABLE_TO_ABORT KCERR_NOT_IN_QUEUE KCERR_INVALID_PARAMETER KCWARN_PARTIAL_COMPLETION KCERR_INVALID_ENTRYID KCERR_BAD_VALUE KCERR_NO_SUPPORT KCERR_TOO_BIG KCWARN_POSITION_CHANGED KCERR_FOLDER_CYCLE KCERR_STORE_FULL KCERR_PLUGIN_ERROR KCERR_UNKNOWN_OBJECT KCERR_NOT_IMPLEMENTED KCERR_DATABASE_NOT_FOUND KCERR_INVALID_VERSION KCERR_UNKNOWN_DATABASE KCERR_NOT_INITIALIZED KCERR_CALL_FAILED KCERR_SSO_CONTINUE KCERR_TIMEOUT KCERR_INVALID_BOOKMARK KCERR_UNABLE_TO_COMPLETE KCERR_UNKNOWN_INSTANCE_ID KCERR_IGNORE_ME KCERR_BUSY KCERR_OBJECT_DELETED KCERR_USER_CANCEL KCERR_UNKNOWN_FLAGS KCERR_SUBMITTED )
Kopano Core error codes as defined in common/include/kopano/kcodes.h.
type KCFlag ¶
type KCFlag uint64
KCFlag is the type representing flags known to Kopano Core.
const ( KOPANO_CAP_LARGE_SESSIONID KCFlag = 0x0010 KOPANO_CAP_MULTI_SERVER KCFlag = 0x0040 KOPANO_CAP_ENHANCED_ICS KCFlag = 0x0100 KOPANO_CAP_UNICODE KCFlag = 0x0200 )
Kopano capability flags as defined in provider/include/kcore.hpp. This only defines the flags actually used or understood by kcc-go.
Kopano logon flags as defined in provider/include/kcore.hpp. This only defines the flags actually used or understood by kcc-go.
type KCSessionID ¶
type KCSessionID uint64
KCSessionID is the type for Kopano Core session IDs.
const KCNoSessionID KCSessionID = 0
KCNoSessionID define the value to use for KCSessionID when there is no session.
func (KCSessionID) String ¶
func (sid KCSessionID) String() string
type LogoffResponse ¶
type LogoffResponse struct {
Er KCError `xml:"er"`
}
A LogoffResponse holds the returned data of a SOAP logoff request.
type LogonResponse ¶
type LogonResponse struct { Er KCError `xml:"er" json:"-"` SessionID KCSessionID `xml:"ulSessionId" json:"ulSessionId"` ServerGUID string `xml:"sServerGuid" json:"sServerGuid"` }
A LogonResponse holds tthe returned data of a SOAP logon request.
type MAPIType ¶
type MAPIType uint32
MAPIType is the type representing MAPI types as used by Kopano Core.
const (
MAPI_MAILUSER MAPIType = 0x00000006
)
Possibe type values as defined in mapi4linux/include/mapidefs.h. We only define the ones know and understood by kcc-go.
type MVPropMap ¶
type MVPropMap []*MVPropMapValue
A MVPropMap is a mapping of properties to a array of values.
type MVPropMapValue ¶
type MVPropMapValue struct { ID PT `xml:"ulPropId" json:"ulPropId"` StringValues []string `xml:"sValues>item" json:"sValues"` }
A MVPropMapValue represents a set of string values with an ID.
type PropMapValue ¶
type PropMapValue struct { ID PT `xml:"ulPropId" json:"ulPropId"` StringValue string `xml:"lpszValue" json:"lpszValue"` }
A PropMapValue represents a single string Value with an ID.
type PropTagRowSet ¶
type PropTagRowSet struct {
PropTagValues []*PropTagRowSetValue `xml:"item,omitempty" json:"items"`
}
A PropTagRowSet represents a row set of array type with prop tag items.
type PropTagRowSetValue ¶
type PropTagRowSetValue struct { PropTag PT `xml:"ulPropTag" json:"ulPropTag"` AStringValue string `xml:"lpszA" json:"lpszA,omitempty"` ULValue uint64 `xml:"ul" json:"ul,omitempty"` BinValue []byte `xml:"bin" json:"bin,omitempty"` BinValues [][][]byte `xml:"mvbin>item" json:"mvbin,omitempty"` }
A PropTagRowSetValue represents a prop tag row set value item.
type ResolveUserResponse ¶
type ResolveUserResponse struct { Er KCError `xml:"er"` ID uint64 `xml:"ulUserId"` UserEntryID string `xml:"sUserId"` }
A ResolveUserResponse holds the returned data of a SOAP request which retruns a user's ID details.
type SOAPClient ¶
A SOAPClient is a network client which sends SOAP requests.
func NewSOAPClient ¶
func NewSOAPClient(uri *url.URL) (SOAPClient, error)
NewSOAPClient creates a new SOAP client for the protocol matching the provided URL using default connection settings. If the protocol is unsupported, an error is returned.
func NewSOAPClientWithConfig ¶
func NewSOAPClientWithConfig(uri *url.URL, config *SOAPClientConfig) (SOAPClient, error)
NewSOAPClientWithConfig create new SOAP client for the protocol matching the provided URL using defaulft uri and config if nil is providedl. If the protocol is unsupported, an error is returned.
type SOAPClientConfig ¶
A SOAPClientConfig is a collection of configuration settings used when constructing SOAP clients.
type SOAPHTTPClient ¶
A SOAPHTTPClient implements a SOAP client using the HTTP protocol.
func NewSOAPHTTPClient ¶
NewSOAPHTTPClient creates a new SOAP HTTP client for the protocol matching the provided URL. A http.Client can be provided to futher customize the behavior of the client instead of using the defaults. If the protocol is unsupported, an error is returned.
func (*SOAPHTTPClient) DoRequest ¶
func (sc *SOAPHTTPClient) DoRequest(ctx context.Context, payload *string, v interface{}) error
DoRequest sends the provided payload data as SOAP through the means of the accociated client. Connections are automatically reused according to keep-alive configuration provided by the http.Client attached to the SOAPHTTPClient.
func (*SOAPHTTPClient) String ¶
func (sc *SOAPHTTPClient) String() string
type SOAPSocketClient ¶
A SOAPSocketClient implements a SOAP client connecting to a unix socket.
func NewSOAPSocketClient ¶
NewSOAPSocketClient creates a new SOAP socket client for the protocol matching the provided URL. A net.Dialer can be provided to further customize the behavior of the client instead of using the defaults. If the protocol is
unsupported, an error is returned.
func (*SOAPSocketClient) DoRequest ¶
func (sc *SOAPSocketClient) DoRequest(ctx context.Context, payload *string, v interface{}) error
DoRequest sends the provided payload data as SOAP through the means of the accociated client.
func (*SOAPSocketClient) String ¶
func (sc *SOAPSocketClient) String() string
type SSOType ¶
type SSOType string
SSOType is the type of SSO to use with single sign on.
type Session ¶
type Session struct {
// contains filtered or unexported fields
}
Session holds the data structures to keep a session open on the accociated Kopano server.
func CreateSession ¶
func CreateSession(ctx context.Context, c *KCC, id KCSessionID, serverGUID string, active bool) (*Session, error)
CreateSession creates a new Session without the server using the provided data.
func NewSSOSession ¶
func NewSSOSession(ctx context.Context, c *KCC, prefix SSOType, username string, input []byte, sessionID KCSessionID) (*Session, error)
NewSSOSession connects to the provided server with the provided parameters, creates a new Session which will be automatically refreshed until detroyed.
func NewSession ¶
NewSession connects to the provided server with the provided parameters, creates a new Session which will be automatically refreshed until detroyed.
func (*Session) Context ¶
Context returns the accociated Session's context.
func (*Session) Destroy ¶
Destroy logs off the accociated Session at the accociated Server and stops auto refreshing by cancelling the accociated Session's Context. An error is retruned if the logoff request fails.
func (*Session) IsActive ¶
IsActive retruns true when the accociated Session is not destroyed, if the last refresh was successfull and if the last activity is recent enough.
func (*Session) Refresh ¶
Refresh triggers a server call to let the server know that the accociated session is still active.
func (*Session) StartAutoRefresh ¶
StartAutoRefresh enables auto refresh of the accociated session.
func (*Session) StopAutoRefresh ¶
StopAutoRefresh stops a running auto refresh of the accociated session.
type User ¶
type User struct { ID uint64 `xml:"ulUserId" json:"ulUserID"` Username string `xml:"lpszUsername" json:"lpszUsername"` MailAddress string `xml:"lpszMailAddress" json:"lpszMailAddress"` FullName string `xml:"lpszFullName" json:"lpszFullName"` IsAdmin uint64 `xml:"ulIsAdmin" json:"ulIsAdmin"` IsNonActive uint64 `xml:"ulIsNonActive" json:"ulIsNonActive"` UserEntryID string `xml:"sUserId" json:"sUserId"` Props *PropMap `xml:"lpsPropmap>item" json:"lpsPropmap"` MVProps *MVPropMap `xml:"lpsMVPropmap>item" json:"lpsMVPropmap"` }
A User represents the meta data of a user as stored by Kopano server.