Microsoft Internet Security and Acceleration Server 2000 |
The function _CloseSockets is used by the data pump in the step Perform Data Pumping; _CloseSockets requires the function _GetSockets.
Implement _CloseSockets in SMTPDataFilter.cpp:
void CSMTPDataFilter::_CloseSockets(BOOL fAbortive) { CComPtr <IFWXSocket> spExternalSocket; CComPtr <IFWXSocket> spInternalSocket; OutputDebugString("\tCSMTPDataFilter::_CloseSockets\n"); _GetSockets(&spInternalSocket,&spExternalSocket); if (spInternalSocket) spInternalSocket->Close(fAbortive); spInternalSocket.Release(); if (spExternalSocket) spExternalSocket->Close(fAbortive); spExternalSocket.Release(); }
Add the definition of the _CloseSockets function
void CSMTPDataFilter::_CloseSockets(BOOL fAbortive);
to the header file SMTPDataFilter.h in the private portion of the CSMTPDataFilter class.
Add the function _GetSockets to SMTPDataFilter.cpp:
void CSMTPDataFilter::_GetSockets(IFWXSocket **ppInternalSocket, IFWXSocket **ppExternalSocket) { Lock(); //Get internal socket *ppInternalSocket= m_spInternalSocket; if (*ppInternalSocket) (*ppInternalSocket)->AddRef(); //Get external socket *ppExternalSocket= m_spExternalSocket; if (*ppExternalSocket) (*ppExternalSocket)->AddRef(); Unlock(); }
Add the definition of the _GetSockets function
void CSMTPDataFilter::_GetSockets(IFWXSocket **ppInternalSocket, IFWXSocket **ppExternalSocket);
to the header file SMTPDataFilter.h in the private portion of the CSMTPDataFilter class.