43#error NON WINDOWS PLATFORM
64 WCHAR wszUserName[256];
67 LPLOCALGROUP_USERS_INFO_0 pBuf =
NULL;
68 LPLOCALGROUP_USERS_INFO_0 pTmpBuf;
70 DWORD dwFlags = LG_INCLUDE_INDIRECT;
71 DWORD dwPrefMaxLen = -1;
72 DWORD dwEntriesRead = 0;
73 DWORD dwTotalEntries = 0;
74 NET_API_STATUS nStatus;
76 DWORD dwTotalCount = 0;
80 MultiByteToWideChar(CP_ACP, 0, UserName,
81 strlen(UserName) + 1, wszUserName,
82 sizeof(wszUserName) /
sizeof(wszUserName[0]));
83 MultiByteToWideChar(CP_ACP, 0, Group,
84 strlen(Group) + 1, wszGroup,
sizeof(wszGroup) /
sizeof(wszGroup[0]));
94 nStatus = NetUserGetLocalGroups(
NULL,
98 (LPBYTE *) & pBuf, dwPrefMaxLen, &dwEntriesRead, &dwTotalEntries);
102 if (nStatus == NERR_Success) {
103 if ((pTmpBuf = pBuf) !=
NULL) {
104 for (i = 0; i < dwEntriesRead; ++i) {
105 if (pTmpBuf ==
NULL) {
109 if (wcscmp(pTmpBuf->lgrui0_name, wszGroup) == 0) {
123 NetApiBufferFree(pBuf);
133 char *domain_qualify =
NULL;
134 char DomainUser[256];
138 strncpy(NTDomain, UserName,
sizeof(NTDomain));
144 if (domain_qualify ==
NULL) {
145 strcpy(User, NTDomain);
148 strcpy(User, domain_qualify + 1);
149 domain_qualify[0] =
'\0';
159 strcpy(DomainUser, User);
161 strcpy(DomainUser, NTDomain);
162 strcat(DomainUser,
"\\");
163 strcat(DomainUser, User);
int Valid_User(char *USERNAME, char *PASSWORD, const char *SERVER, char *, const char *DOMAIN)
const char NTV_LOGON_ERROR_MSG[]
const char NTV_GROUP_ERROR_MSG[]
const char NTV_VALID_DOMAIN_SEPARATOR[]
const char NTV_SERVER_ERROR_MSG[]
int Valid_Group(char *UserName, char *Group)
char Default_NTDomain[DNLEN+1]
#define NTV_DEFAULT_DOMAIN
void debug(const char *format,...)
BOOL WINAPI SSP_LogonUser(PTSTR szUser, PTSTR szPassword, PTSTR szDomain)