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.

65 lines
1.5 KiB

  1. //--------------------------------------------------------------------------------------------
  2. //
  3. // Copyright (c) Microsoft Corporation, 1996
  4. //
  5. // Description:
  6. //
  7. // Microsoft Internet LDAP Client Xaction Data class.
  8. //
  9. // History:
  10. // davidsan 04/29/96 Created
  11. //
  12. //--------------------------------------------------------------------------------------------
  13. #ifndef _LCLIXD_H
  14. #define _LCLIXD_H
  15. typedef struct _xactionbuffer
  16. {
  17. struct _xactionbuffer *pxbNext;
  18. BYTE *pbData;
  19. int cbData;
  20. } XB, *PXB;
  21. // transaction data
  22. class CXactionData
  23. {
  24. public:
  25. CXactionData();
  26. ~CXactionData();
  27. BOOL FInit(XID xid, DWORD xtype);
  28. BOOL FGetBuffer(BYTE **ppb, int *pcb);
  29. BOOL FAddBuffer(BYTE *pb, int cb);
  30. BOOL FHasData();
  31. // accessors:
  32. XID Xid() {return m_xid;};
  33. PXD PxdNext() {return m_pxdNext;};
  34. HANDLE HsemSignal() {return m_hsemSignal;};
  35. DWORD Xtype() {return m_xtype;};
  36. BOOL FCancelled() {return m_fCancelled;};
  37. BOOL FOOM() {return m_fOOM;};
  38. void SetPxdNext(PXD pxdNext) {m_pxdNext = pxdNext;};
  39. void SetFOOM(BOOL fOOM) {m_fOOM = fOOM;};
  40. void SetFCancelled(BOOL fCan) {m_fCancelled = fCan;};
  41. private:
  42. void DeletePxbChain(PXB pxb);
  43. CRITICAL_SECTION m_cs;
  44. XID m_xid;
  45. PXD m_pxdNext;
  46. HANDLE m_hsemSignal;
  47. DWORD m_xtype;
  48. BOOL m_fCancelled;
  49. BOOL m_fOOM;
  50. PXB m_pxb;
  51. };
  52. #endif // _LCLIXD_H