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.
327 lines
6.7 KiB
327 lines
6.7 KiB
/*++
|
|
|
|
Copyright (c) 1996 Microsoft Corporation
|
|
|
|
Module Name:
|
|
|
|
pfp.h
|
|
|
|
Abstract:
|
|
|
|
Headers of jet database read/write
|
|
|
|
Author:
|
|
|
|
Jin Huang (jinhuang) 09-Dec-1996
|
|
|
|
Revision History:
|
|
|
|
--*/
|
|
|
|
#ifndef _pfp_
|
|
#define _pfp_
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
SCESTATUS
|
|
ScepStartANewSection(
|
|
IN PSCECONTEXT hProfile,
|
|
IN OUT PSCESECTION *hSection,
|
|
IN SCEJET_TABLE_TYPE ProfileType,
|
|
IN PCWSTR SectionName
|
|
);
|
|
|
|
SCESTATUS
|
|
ScepOpenSectionForName(
|
|
IN PSCECONTEXT hProfile,
|
|
IN SCETYPE ProfileType,
|
|
IN PCWSTR SectionName,
|
|
OUT PSCESECTION *phSection
|
|
);
|
|
|
|
SCESTATUS
|
|
ScepGetPrivileges(
|
|
IN PSCECONTEXT hProfile,
|
|
IN SCETYPE ProfileType,
|
|
IN DWORD dwAccountFormat,
|
|
OUT PVOID *pPrivileges,
|
|
OUT PSCE_ERROR_LOG_INFO *Errlog OPTIONAL
|
|
);
|
|
|
|
SCESTATUS
|
|
ScepAddToPrivList(
|
|
IN PSCE_NAME_STATUS_LIST *pPrivList,
|
|
IN DWORD Rights,
|
|
IN PWSTR Name,
|
|
IN DWORD Len
|
|
);
|
|
|
|
SCESTATUS
|
|
ScepAddSidToPrivilegeList(
|
|
OUT PSCE_PRIVILEGE_VALUE_LIST *pPrivilegeList,
|
|
IN PSID pSid,
|
|
IN BOOL bReuseBuffer,
|
|
IN DWORD PrivValue,
|
|
OUT BOOL *pbBufferUsed
|
|
);
|
|
|
|
SCESTATUS
|
|
ScepCompareAndSaveIntValue(
|
|
IN PSCESECTION hSection,
|
|
IN PWSTR Name,
|
|
IN BOOL bReplaceExistOnly,
|
|
IN DWORD BaseValue,
|
|
IN DWORD CurrentValue
|
|
);
|
|
|
|
SCESTATUS
|
|
ScepCompareAndSaveStringValue(
|
|
IN PSCESECTION hSection,
|
|
IN PWSTR Name,
|
|
IN PWSTR BaseValue,
|
|
IN PWSTR CurrentValue,
|
|
IN DWORD CurrentLen
|
|
);
|
|
|
|
SCESTATUS
|
|
ScepSaveObjectString(
|
|
IN PSCESECTION hSection,
|
|
IN PWSTR Name,
|
|
IN BOOL IsContainer,
|
|
IN BYTE Flag,
|
|
IN PWSTR Value,
|
|
IN DWORD ValueLen
|
|
);
|
|
|
|
SCESTATUS
|
|
ScepWriteAUserSetting(
|
|
IN PSCESECTION hSectionList,
|
|
IN PWSTR UserName,
|
|
IN PSCESECTION hSection,
|
|
IN PSCE_USER_SETTING pPerUserSetting
|
|
);
|
|
|
|
#define SCE_WRITE_EMPTY_LIST 0x1
|
|
#define SCE_WRITE_CONVERT 0x2
|
|
#define SCE_WRITE_LOCAL_TABLE 0x4
|
|
|
|
SCESTATUS
|
|
ScepWriteNameListValue(
|
|
IN LSA_HANDLE LsaPolicy OPTIONAL,
|
|
IN PSCESECTION hSection,
|
|
IN PWSTR Name,
|
|
IN PSCE_NAME_LIST NameList,
|
|
IN DWORD dwWriteOption,
|
|
IN INT Status
|
|
);
|
|
|
|
SCESTATUS
|
|
ScepWriteNameStatusListValue(
|
|
IN PSCESECTION hSection,
|
|
IN PWSTR Name,
|
|
IN PSCE_NAME_STATUS_LIST NameList,
|
|
IN BOOL SaveEmptyList,
|
|
IN INT Status
|
|
);
|
|
|
|
SCESTATUS
|
|
ScepWriteSecurityDescriptorValue(
|
|
IN PSCESECTION hSection,
|
|
IN PWSTR Name,
|
|
IN PSECURITY_DESCRIPTOR pSD,
|
|
IN SECURITY_INFORMATION SeInfo
|
|
);
|
|
|
|
#define SCE_LOCAL_POLICY_MIGRATE 1L
|
|
#define SCE_LOCAL_POLICY_DC 2L
|
|
|
|
SCESTATUS
|
|
ScepCopyLocalToMergeTable(
|
|
IN PSCECONTEXT hProfile,
|
|
IN DWORD Options,
|
|
IN DWORD CopyOptions,
|
|
OUT PSCE_ERROR_LOG_INFO *pErrlog
|
|
);
|
|
|
|
SCESTATUS
|
|
ScepGetSingleServiceSetting(
|
|
IN PSCESECTION hSection,
|
|
IN PWSTR ServiceName,
|
|
OUT PSCE_SERVICES *pOneService
|
|
);
|
|
|
|
SCESTATUS
|
|
ScepSetSingleServiceSetting(
|
|
IN PSCESECTION hSection,
|
|
IN PSCE_SERVICES pOneService
|
|
);
|
|
|
|
SCESTATUS
|
|
ScepCompareSingleServiceSetting(
|
|
IN PSCE_SERVICES pNode1,
|
|
IN PSCE_SERVICES pNode2,
|
|
OUT PBOOL pIsDifferent
|
|
);
|
|
|
|
SCESTATUS
|
|
ScepCopyObjects(
|
|
IN PSCECONTEXT hProfile,
|
|
IN SCETYPE ProfileType,
|
|
IN PWSTR InfFile,
|
|
IN PCWSTR SectionName,
|
|
IN AREA_INFORMATION Area,
|
|
IN OUT PSCE_ERROR_LOG_INFO *Errlog OPTIONAL
|
|
);
|
|
|
|
SCESTATUS
|
|
ScepGetFixValueSection(
|
|
IN PSCECONTEXT hProfile,
|
|
IN PCWSTR SectionName,
|
|
IN SCE_KEY_LOOKUP *Keys,
|
|
IN DWORD cKeys,
|
|
IN SCETYPE ProfileType,
|
|
OUT PVOID pProfileInfo,
|
|
OUT PSCESECTION *phSection,
|
|
OUT PSCE_ERROR_LOG_INFO *Errlog OPTIONAL
|
|
);
|
|
|
|
#define SCEBROWSE_DOMAIN_POLICY 0x1
|
|
#define SCEBROWSE_MULTI_SZ 0x2
|
|
|
|
SCESTATUS
|
|
ScepBrowseTableSection(
|
|
IN PSCECONTEXT hProfile,
|
|
IN SCETYPE ProfileType,
|
|
IN PCWSTR SectionName,
|
|
IN DWORD Options
|
|
);
|
|
|
|
#define SCE_ERROR_STRING TEXT("$#?Error?#$")
|
|
|
|
SCESTATUS
|
|
ScepTattooCheckAndUpdateArray(
|
|
IN OUT SCE_TATTOO_KEYS *pTattooKeys,
|
|
IN OUT DWORD *pcTattooKeys,
|
|
IN PWSTR KeyName,
|
|
IN DWORD ConfigOptions,
|
|
IN DWORD dwValue
|
|
);
|
|
|
|
SCESTATUS
|
|
ScepTattooOpenPolicySections(
|
|
IN PSCECONTEXT hProfile,
|
|
IN PCWSTR SectionName,
|
|
OUT PSCESECTION *phSectionDomain,
|
|
OUT PSCESECTION *phSectionTattoo
|
|
);
|
|
|
|
SCESTATUS
|
|
ScepTattooManageOneStringValue(
|
|
IN PSCESECTION hSectionDomain,
|
|
IN PSCESECTION hSectionTattoo,
|
|
IN PWSTR KeyName,
|
|
IN DWORD KeyLen OPTIONAL,
|
|
IN PWSTR Value,
|
|
IN DWORD ValueLen,
|
|
IN DWORD rc
|
|
);
|
|
|
|
SCESTATUS
|
|
ScepTattooManageOneIntValue(
|
|
IN PSCESECTION hSectionDomain,
|
|
IN PSCESECTION hSectionTattoo,
|
|
IN PWSTR KeyName,
|
|
IN DWORD KeyLen OPTIONAL,
|
|
IN DWORD Value,
|
|
IN DWORD rc
|
|
);
|
|
|
|
SCESTATUS
|
|
ScepTattooManageOneIntValueWithDependency(
|
|
IN PSCESECTION hSectionDomain,
|
|
IN PSCESECTION hSectionTattoo,
|
|
IN PWSTR DependentKeyName,
|
|
IN DWORD DependentKeyLen OPTIONAL,
|
|
IN PWSTR SaveKeyName,
|
|
IN DWORD Value,
|
|
IN DWORD rc
|
|
);
|
|
|
|
SCESTATUS
|
|
ScepTattooManageOneRegistryValue(
|
|
IN PSCESECTION hSectionDomain,
|
|
IN PSCESECTION hSectionTattoo,
|
|
IN PWSTR KeyName,
|
|
IN DWORD KeyLen OPTIONAL,
|
|
IN PSCE_REGISTRY_VALUE_INFO pOneRegValue,
|
|
IN DWORD rc
|
|
);
|
|
|
|
SCESTATUS
|
|
ScepTattooManageOneMemberListValue(
|
|
IN PSCESECTION hSectionDomain,
|
|
IN PSCESECTION hSectionTattoo,
|
|
IN PWSTR GroupName,
|
|
IN DWORD GroupLen OPTIONAL,
|
|
IN PSCE_NAME_LIST pNameList,
|
|
IN BOOL bDeleteOnly,
|
|
IN DWORD rc
|
|
);
|
|
|
|
SCESTATUS
|
|
ScepTattooManageOneServiceValue(
|
|
IN PSCESECTION hSectionDomain,
|
|
IN PSCESECTION hSectionTattoo,
|
|
IN PWSTR ServiceName,
|
|
IN DWORD ServiceLen OPTIONAL,
|
|
IN PSCE_SERVICES pServiceNode,
|
|
IN DWORD rc
|
|
);
|
|
|
|
SCESTATUS
|
|
ScepTattooManageValues(
|
|
IN PSCESECTION hSectionDomain,
|
|
IN PSCESECTION hSectionTattoo,
|
|
IN SCE_TATTOO_KEYS *pTattooKeys,
|
|
IN DWORD cTattooKeys,
|
|
IN DWORD rc
|
|
);
|
|
|
|
BOOL
|
|
ScepTattooIfQueryNeeded(
|
|
IN PSCESECTION hSectionDomain,
|
|
IN PSCESECTION hSectionTattoo,
|
|
IN PWSTR KeyName,
|
|
IN DWORD Len,
|
|
OUT BOOL *pbDomainExist,
|
|
OUT BOOL *pbTattooExist
|
|
);
|
|
|
|
SCESTATUS
|
|
ScepDeleteOneSection(
|
|
IN PSCECONTEXT hProfile,
|
|
IN SCETYPE tblType,
|
|
IN PCWSTR SectionName
|
|
);
|
|
|
|
SCESTATUS
|
|
ScepTattooReadOneMemberOfListValue(
|
|
IN PSCESECTION hSectionTattoo,
|
|
IN PSID pGroupSid,
|
|
OUT PSCE_NAME_LIST *ppTattooList
|
|
);
|
|
|
|
SCESTATUS
|
|
ScepTattooWriteOneMemberOfListValue(
|
|
IN PSCESECTION hSectionTattoo,
|
|
IN PSID pGroupSid,
|
|
IN PSCE_NAME_LIST pNameList
|
|
);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|