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.
114 lines
2.1 KiB
114 lines
2.1 KiB
|
|
/*++
|
|
|
|
Copyright (c) 1995-1997 Microsoft Corporation
|
|
|
|
Module Name:
|
|
|
|
surrogat.hxx
|
|
|
|
Abstract:
|
|
|
|
|
|
Author:
|
|
|
|
DKays
|
|
|
|
Revision History:
|
|
|
|
--*/
|
|
|
|
#ifndef __SURROGAT_HXX__
|
|
#define __SURROGAT_HXX__
|
|
|
|
class CSurrogateList;
|
|
class CSurrogateListEntry;
|
|
|
|
extern CSurrogateList * gpSurrogateList;
|
|
|
|
//
|
|
// CSurrogateList
|
|
//
|
|
class CSurrogateList : public CList
|
|
{
|
|
public:
|
|
CSurrogateListEntry *
|
|
Lookup(
|
|
IN CToken * pToken,
|
|
IN BOOL bRemoteActivation,
|
|
IN BOOL bClientImpersonating,
|
|
IN WCHAR * pwszWinstaDesktop,
|
|
IN WCHAR * pwszAppid
|
|
);
|
|
|
|
CSurrogateListEntry *
|
|
Lookup(
|
|
IN const CProcess * pProcess
|
|
);
|
|
|
|
void
|
|
Insert(
|
|
IN CSurrogateListEntry * pServerListEntry
|
|
);
|
|
|
|
BOOL
|
|
InList(
|
|
IN CSurrogateListEntry * pSurrogateListEntry
|
|
);
|
|
|
|
BOOL
|
|
RemoveMatchingEntry(
|
|
IN CServerListEntry* pServerListEntry
|
|
);
|
|
|
|
};
|
|
|
|
//
|
|
// CSurrogateListEntry
|
|
//
|
|
class CSurrogateListEntry : public CListElement, public CReferencedObject
|
|
{
|
|
friend class CSurrogateList;
|
|
|
|
public:
|
|
CSurrogateListEntry(
|
|
IN WCHAR * pwszAppid,
|
|
IN CServerListEntry * pServerListEntry
|
|
);
|
|
~CSurrogateListEntry();
|
|
|
|
BOOL
|
|
Match(
|
|
IN CToken * pToken,
|
|
IN BOOL bRemoteActivation,
|
|
IN BOOL bClientImpersonating,
|
|
IN WCHAR * pwszWinstaDesktop,
|
|
IN WCHAR * pwszAppid
|
|
);
|
|
|
|
BOOL
|
|
LoadDll(
|
|
IN ACTIVATION_PARAMS * pActParams,
|
|
OUT HRESULT * phr
|
|
);
|
|
|
|
inline CServerListEntry *
|
|
ServerListEntry()
|
|
{
|
|
_pServerListEntry->Reference();
|
|
return _pServerListEntry;
|
|
}
|
|
|
|
inline CProcess *
|
|
Process()
|
|
{
|
|
return _pServerListEntry->_pServerProcess;
|
|
}
|
|
|
|
private:
|
|
CServerListEntry * _pServerListEntry;
|
|
WCHAR _wszAppid[40];
|
|
|
|
};
|
|
|
|
#endif
|