150 lines
6.6 KiB
C
150 lines
6.6 KiB
C
|
#ifndef _MDENTRY_H_
|
||
|
#define _MDENTRY_H_
|
||
|
|
||
|
#define METABASE_USE_DEFAULT 0xFFFFFFFF
|
||
|
|
||
|
class CDWord : public CObject
|
||
|
{
|
||
|
protected:
|
||
|
DWORD m_dwData;
|
||
|
|
||
|
public:
|
||
|
CDWord(DWORD dwData) { m_dwData = dwData; }
|
||
|
~CDWord() {};
|
||
|
|
||
|
operator DWORD () { return m_dwData; }
|
||
|
};
|
||
|
|
||
|
// fMigrate, fKeepOldReg, hRegRootKey, szRegSubKey, szRegValueName,
|
||
|
// szMDPath, dwMDId, dwMDAttr, dwMDuType, dwMDdType, dwMDDataLen, szMDData
|
||
|
|
||
|
typedef struct _MDEntry {
|
||
|
LPTSTR szMDPath;
|
||
|
DWORD dwMDIdentifier;
|
||
|
DWORD dwMDAttributes;
|
||
|
DWORD dwMDUserType;
|
||
|
DWORD dwMDDataType;
|
||
|
DWORD dwMDDataLen;
|
||
|
LPBYTE pbMDData;
|
||
|
} MDEntry;
|
||
|
|
||
|
DWORD atodw(LPCTSTR lpszData);
|
||
|
BOOL SplitLine(LPTSTR szLine, INT iExpectedNumOfFields);
|
||
|
INT GetMDEntryFromInfLine(LPTSTR szLine, MDEntry *pMDEntry);
|
||
|
int WWW_Upgrade_RegToMetabase(HINF hInf);
|
||
|
int FTP_Upgrade_RegToMetabase(HINF hInf);
|
||
|
void CreateWWWVRMap(CMapStringToOb *pMap);
|
||
|
void CreateFTPVRMap(CMapStringToOb *pMap);
|
||
|
void EmptyMap(CMapStringToOb *pMap);
|
||
|
void AddVRootsToMD(LPCTSTR szSvcName);
|
||
|
void AddVRMapToMD(LPCTSTR szSvcName, CMapStringToOb *pMap);
|
||
|
int GetPortNum(LPCTSTR szSvcName);
|
||
|
void ApplyGlobalToMDVRootTree(CString csKeyPath, CMapStringToString *pGlobalObj);
|
||
|
|
||
|
void AddMDVRootTree(CString csKeyPath, CString csName, CString csValue, LPCTSTR pszIP, UINT nProgressBarTextWebInstance);
|
||
|
void CreateMDVRootTree(CString csKeyPath, CString csName, CString csValue, LPCTSTR pszIP);
|
||
|
void SplitVRString(CString csValue, LPTSTR szPath, LPTSTR szUserName, DWORD *pdwPerm);
|
||
|
UINT GetInstNumber(LPCTSTR szMDPath, UINT i);
|
||
|
int MigrateInfSectionToMD(HINF hInf, LPCTSTR szSection);
|
||
|
|
||
|
BOOL CreateMimeMapFromRegistry(CMapStringToString *pMap);
|
||
|
BOOL CreateMimeMapFromInfSection(CMapStringToString *pMap, HINF hFile, LPCTSTR szSection);
|
||
|
void ReadMimeMapFromInfSection(CMapStringToString *pMap, HINF hFile, LPCTSTR szSection, BOOL fAction);
|
||
|
|
||
|
void SetLogPlugInOrder(LPCTSTR lpszSvc);
|
||
|
|
||
|
DWORD GetSizeBasedOnMetaType(DWORD dwDataType,LPTSTR szString);
|
||
|
BOOL MDEntry_MoveValue(LPTSTR szLine);
|
||
|
|
||
|
void ReadMultiSZFromInfSection(CString *pcsMultiSZ, HINF hFile, LPCTSTR szSection);
|
||
|
void ReadMimeMapFromMetabase(CMapStringToString *pMap);
|
||
|
void IntegrateNewErrorsOnUpgrade( IN HINF hFile, IN LPCTSTR szSection );
|
||
|
|
||
|
BOOL ConfirmLocalHost(LPCTSTR lpszVirtServer);
|
||
|
void RemoveCannotDeleteVR( LPCTSTR pszService );
|
||
|
|
||
|
void UpdateVDCustomErrors();
|
||
|
DWORD UpgradeCryptoKeys(void);
|
||
|
|
||
|
DWORD SetMDEntry(MDEntry *pMDEntry);
|
||
|
DWORD SetMDEntry_NoOverWrite(MDEntry *pMDEntry);
|
||
|
DWORD SetMDEntry_Wrap(MDEntry *pMDEntry);
|
||
|
|
||
|
void UpgradeFilters(CString csTheSection);
|
||
|
DWORD VerifyMD_Filters_WWW(TSTR &strTheSection);
|
||
|
DWORD WriteToMD_Filters_WWW(TSTR &strTheSection);
|
||
|
DWORD WriteToMD_Filters_List_Entry(CString csOrder);
|
||
|
|
||
|
DWORD WriteToMD_Filter_Entry(CString csFilter_Name, CString csFilter_Path);
|
||
|
|
||
|
BOOL VerifyMD_InProcessISAPIApps_WWW(IN LPCTSTR szSection);
|
||
|
DWORD WriteToMD_InProcessISAPIApps_WWW(IN LPCTSTR szSection);
|
||
|
DWORD WriteToMD_ISAPI_Entry( TSTR_MSZ &mstrInprocIsapiList );
|
||
|
|
||
|
|
||
|
DWORD WriteToMD_NTAuthenticationProviders_WWW(void);
|
||
|
DWORD VerifyMD_NTAuthenticationProviders_WWW(void);
|
||
|
DWORD WriteToMD_NTAuthenticationProviders_WWW(CString);
|
||
|
DWORD WriteToMD_Capabilities(LPCTSTR lpszSvc);
|
||
|
|
||
|
UINT AddVirtualServer( LPCTSTR szSvcName, UINT i, CMapStringToString *pObj, CString& csRoot, CString& csIP);
|
||
|
void CreateMDVRootTree(CString csKeyPath, CString csName, CString csValue, LPCTSTR pszIP, UINT nProgressBarTextWebInstance);
|
||
|
int VerifyVRoots(LPCTSTR szSvcName);
|
||
|
DWORD WriteToMD_CertMapper(CString csKeyPath);
|
||
|
DWORD WriteToMD_AdminInstance(CString csKeyPath,CString& csInstNumber);
|
||
|
DWORD WriteToMD_Authorization(CString csKeyPath, DWORD dwValue);
|
||
|
DWORD WriteToMD_IIsWebServerInstance_WWW(CString csKeyPath);
|
||
|
DWORD WriteToMD_NotDeleteAble(CString csKeyPath);
|
||
|
DWORD WriteToMD_ServerSize(CString csKeyPath);
|
||
|
DWORD WriteToMD_ServerComment(CString csKeyPath, UINT iCommentID);
|
||
|
DWORD WriteToMD_ServerBindings_HTMLA(CString csKeyPath, UINT iPort);
|
||
|
DWORD HandleSecurityTemplates(LPCTSTR szSvcName);
|
||
|
DWORD WriteToMD_IPsec_GrantByDefault(CString csKeyPath);
|
||
|
DWORD WriteToMD_HttpExpires(CString csData);
|
||
|
DWORD WriteToMD_AnonymousOnly_FTP(CString csKeyPath);
|
||
|
DWORD WriteToMD_AllowAnonymous_FTP(CString csKeyPath);
|
||
|
|
||
|
DWORD WriteToMD_AnonymousUserName_FTP(int iUpgradeScenarioSoOnlyOverWriteIfAlreadyThere);
|
||
|
DWORD WriteToMD_AnonymousUserName_WWW(int iUpgradeScenarioSoOnlyOverWriteIfAlreadyThere);
|
||
|
|
||
|
int AddRequiredISAPI(CStringArray& arrayName,CStringArray& arrayPath,IN LPCTSTR szSection);
|
||
|
|
||
|
BOOL ChkMdEntry_Exist(MDEntry *pMDEntry);
|
||
|
DWORD WriteToMD_IWamUserName_WWW(void);
|
||
|
DWORD WriteToMD_CustomError_Entry(CString csKeyPath, CString csCustomErrorDelimitedList);
|
||
|
BOOL VerifyCustomErrors_WWW(CString csKeyPath);
|
||
|
void MoveOldHelpFilesToNewLocation(void);
|
||
|
DWORD DeleteMDEntry(MDEntry *pMDEntry);
|
||
|
void WriteToMD_ForceMetabaseToWriteToDisk(void);
|
||
|
void VerifyMD_DefaultLoadFile_WWW(IN LPCTSTR szSection, CString csKeyPath);
|
||
|
INT Register_iis_www_handleScriptMap(void);
|
||
|
DWORD DoesAdminACLExist(CString csKeyPath);
|
||
|
|
||
|
int ReOrderFiltersSpecial(int nArrayItems, CStringArray& arrayName, CString& csOrder);
|
||
|
void AddFilter1ToFirstPosition(CString& csOrder,LPTSTR szFilter1);
|
||
|
void AddFilter1AfterFilter2(CString& csOrder,LPTSTR szFilter1,LPTSTR szFilter2);
|
||
|
void GetScriptMapListFromClean(ScriptMapNode *pList, IN LPCTSTR szSection);
|
||
|
int RemoveMetabaseFilter(TCHAR * szFilterName, int iRemoveMetabaseNodes);
|
||
|
|
||
|
DWORD WriteToMD_IDRegistration(CString csKeyPath);
|
||
|
DWORD WriteToMD_AspCodepage(CString csKeyPath, DWORD dwValue, int iOverWriteAlways);
|
||
|
DWORD WriteToMD_HttpCustom(CString csKeyPath, CString csData, int iOverWriteAlways);
|
||
|
DWORD WriteToMD_EnableParentPaths_WWW(CString csKeyPath, BOOL bEnableFlag);
|
||
|
|
||
|
void EnforceMaxConnections(void);
|
||
|
DWORD WriteToMD_DwordEntry(CString csKeyPath,DWORD dwID,DWORD dwAttrib,DWORD dwUserType,DWORD dwTheData,INT iOverwriteFlag);
|
||
|
int RemoveIncompatibleMetabaseFilters(LPTSTR szSectionName,int iRemoveMetabaseNodes);
|
||
|
|
||
|
DWORD WriteToMD_RootKeyType(void);
|
||
|
DWORD MDDumpAdminACL(CString csKeyPath);
|
||
|
|
||
|
int DoesAppIsolatedExist(CString csKeyPath);
|
||
|
HRESULT WINAPI Add_WWW_VDirW(WCHAR * pwszMetabasePath, WCHAR * pwszVDirName,WCHAR * pwszPhysicalPath, DWORD dwPermissions, DWORD iApplicationType);
|
||
|
HRESULT WINAPI Add_WWW_VDirA(CHAR * pwszMetabasePath, CHAR * pwszVDirName,CHAR * pwszPhysicalPath, DWORD dwPermissions, DWORD iApplicationType);
|
||
|
HRESULT WINAPI Remove_WWW_VDirW(WCHAR * pwszMetabasePath, WCHAR * pwszVDirName);
|
||
|
HRESULT WINAPI Remove_WWW_VDirA(CHAR * pwszMetabasePath, CHAR * pwszVDirName);
|
||
|
HRESULT AddVirtualDir(IMSAdminBase *pIMSAdminBase,WCHAR * pwszMetabasePath,WCHAR * pwszVDir,WCHAR * pwszPhysicalPath, DWORD dwPermissions, INT iApplicationType);
|
||
|
HRESULT RemoveVirtualDir(IMSAdminBase *pIMSAdminBase,WCHAR * wszMetabaseKey,WCHAR * wszVDir);
|
||
|
|
||
|
#endif // _MDENTRY_H_
|