| 1 | #pragma once |
| 2 | // Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. |
| 3 | |
| 4 | |
| 5 | #include "scauser.h" |
| 6 | |
| 7 | // structs |
| 8 | // Structure used to hold and extra user/permission pairs from the Wix4FileSharePermissions Table |
| 9 | struct SCA_SMB_EX_USER_PERMS |
| 10 | { |
| 11 | int nPermissions; |
| 12 | ACCESS_MODE accessMode; |
| 13 | SCA_USER scau; |
| 14 | SCA_SMB_EX_USER_PERMS* pExUserPermsNext; |
| 15 | }; |
| 16 | |
| 17 | struct SCA_SMB // hungarian ss |
| 18 | { |
| 19 | WCHAR wzId[MAX_DARWIN_KEY + 1]; |
| 20 | WCHAR wzShareName[MAX_DARWIN_KEY + 1]; |
| 21 | WCHAR wzDescription[MAX_DARWIN_COLUMN + 1]; |
| 22 | WCHAR wzComponent[MAX_DARWIN_KEY + 1]; |
| 23 | WCHAR wzDirectory[MAX_PATH + 1]; |
| 24 | |
| 25 | int nUserPermissionCount; |
| 26 | SCA_SMB_EX_USER_PERMS* pExUserPerms; |
| 27 | |
| 28 | INSTALLSTATE isInstalled, isAction; |
| 29 | |
| 30 | BOOL fUseIntegratedAuth; |
| 31 | |
| 32 | struct SCA_SMB* pssNext; |
| 33 | }; |
| 34 | |
| 35 | |
| 36 | #define RESERVED 0 |
| 37 | |
| 38 | // schedule prototypes |
| 39 | HRESULT ScaSmbRead(SCA_SMB** ppssList); |
| 40 | HRESULT ScaSmbExPermsRead(SCA_SMB* pss); |
| 41 | HRESULT ScaSmbUninstall(SCA_SMB* pssList); |
| 42 | HRESULT ScaSmbInstall(SCA_SMB* pssList); |
| 43 | void ScaSmbFreeList(SCA_SMB* pssList); |