Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

62 lines
3.3 KiB

  1. // --------------------------------------------------------------------------------
  2. // AddressX.h
  3. // Copyright (c)1993-1995 Microsoft Corporation, All Rights Reserved
  4. // --------------------------------------------------------------------------------
  5. #ifndef __ADDRESSX_H
  6. #define __ADDRESSX_H
  7. // -------------------------------------------------------------------------------
  8. // Forward Decls
  9. // -------------------------------------------------------------------------------
  10. typedef struct tagADDRESSGROUP *LPADDRESSGROUP;
  11. // -------------------------------------------------------------------------------
  12. // ADDRESSTOKENW
  13. // -------------------------------------------------------------------------------
  14. typedef struct tagADDRESSTOKENW {
  15. ULONG cbAlloc; // Allocated Size
  16. ULONG cch; // Number of Characters
  17. LPWSTR psz; // Pointer to data
  18. BYTE rgbScratch[256]; // Scratch Buffer
  19. } ADDRESSTOKENW, *LPADDRESSTOKENW;
  20. // -------------------------------------------------------------------------------
  21. // ADDRESSTOKENA
  22. // -------------------------------------------------------------------------------
  23. typedef struct tagADDRESSTOKENA {
  24. ULONG cbAlloc; // Allocated Size
  25. ULONG cch; // Number of Characters
  26. LPSTR psz; // Pointer to data
  27. BYTE rgbScratch[256]; // Scratch Buffer
  28. } ADDRESSTOKENA, *LPADDRESSTOKENA;
  29. // --------------------------------------------------------------------------------
  30. // MIMEADDRESS
  31. // --------------------------------------------------------------------------------
  32. typedef struct tagMIMEADDRESS *LPMIMEADDRESS;
  33. typedef struct tagMIMEADDRESS {
  34. DWORD dwAdrType; // IAP_ADRTYPE: Address Type
  35. HADDRESS hThis; // IAP_HADDRESS: Handle of this address
  36. ADDRESSTOKENW rFriendly; // IAP_FRIENDLYW: Friendly Name (Unicode)
  37. ADDRESSTOKENW rEmail; // IAP_EMAIL: Email Address
  38. LPINETCSETINFO pCharset; // IAP_HCHARSET: Charset used to encode pszFriendly
  39. CERTSTATE certstate; // IAP_CERTSTATE: Certificate State
  40. THUMBBLOB tbSigning; // IAP_SIGNING_PRINT: Thumbprint to be used for signing
  41. THUMBBLOB tbEncryption; // IAP_ENCRYPTION_PRINT: Thumbprint to be used for signing
  42. DWORD dwCookie; // IAP_COOKIE: User-defined cookie
  43. LPADDRESSGROUP pGroup; // Address group
  44. LPMIMEADDRESS pPrev; // Linked List
  45. LPMIMEADDRESS pNext; // Linked List
  46. } MIMEADDRESS;
  47. // --------------------------------------------------------------------------------
  48. // MIMEADDRESS Prototypes
  49. // --------------------------------------------------------------------------------
  50. void MimeAddressFree(LPMIMEADDRESS pAddress);
  51. HRESULT HrMimeAddressCopy(LPMIMEADDRESS pSource, LPMIMEADDRESS pDest);
  52. HRESULT HrCopyAddressProps(LPADDRESSPROPS pSource, LPADDRESSPROPS pDest);
  53. void EmptyAddressTokenW(LPADDRESSTOKENW pToken);
  54. void FreeAddressTokenW(LPADDRESSTOKENA pToken);
  55. HRESULT HrSetAddressTokenW(LPCWSTR psz, ULONG cch, LPADDRESSTOKENW pToken);
  56. #endif // __ADDRESSX_H