2 * Copyright 2006 Robert Reif
4 * netapi32 local group functions
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
24 #define WIN32_NO_STATUS
34 #include "wine/debug.h"
35 #include "wine/unicode.h"
37 WINE_DEFAULT_DEBUG_CHANNEL(netapi32);
39 /************************************************************
40 * NetLocalGroupAdd (NETAPI32.@)
42 NET_API_STATUS WINAPI NetLocalGroupAdd(
48 FIXME("(%s %d %p %p) stub!\n", debugstr_w(servername), level, buf,
53 /************************************************************
54 * NetLocalGroupAddMember (NETAPI32.@)
56 NET_API_STATUS WINAPI NetLocalGroupAddMember(
61 FIXME("(%s %s %p) stub!\n", debugstr_w(servername),
62 debugstr_w(groupname), membersid);
66 /************************************************************
67 * NetLocalGroupAddMembers (NETAPI32.@)
69 NET_API_STATUS WINAPI NetLocalGroupAddMembers(
76 FIXME("(%s %s %d %p %d) stub!\n", debugstr_w(servername),
77 debugstr_w(groupname), level, buf, totalentries);
81 /************************************************************
82 * NetLocalGroupDel (NETAPI32.@)
84 NET_API_STATUS WINAPI NetLocalGroupDel(
88 FIXME("(%s %s) stub!\n", debugstr_w(servername), debugstr_w(groupname));
92 /************************************************************
93 * NetLocalGroupDelMember (NETAPI32.@)
95 NET_API_STATUS WINAPI NetLocalGroupDelMember(
100 FIXME("(%s %s %p) stub!\n", debugstr_w(servername),
101 debugstr_w(groupname), membersid);
105 /************************************************************
106 * NetLocalGroupDelMembers (NETAPI32.@)
108 NET_API_STATUS WINAPI NetLocalGroupDelMembers(
115 FIXME("(%s %s %d %p %d) stub!\n", debugstr_w(servername),
116 debugstr_w(groupname), level, buf, totalentries);
120 /************************************************************
121 * NetLocalGroupEnum (NETAPI32.@)
123 NET_API_STATUS WINAPI NetLocalGroupEnum(
129 LPDWORD totalentries,
130 PDWORD_PTR resumehandle)
132 FIXME("(%s %d %p %d %p %p %p) stub!\n", debugstr_w(servername),
133 level, bufptr, prefmaxlen, entriesread, totalentries, resumehandle);
139 /************************************************************
140 * NetLocalGroupGetInfo (NETAPI32.@)
142 NET_API_STATUS WINAPI NetLocalGroupGetInfo(
148 FIXME("(%s %s %d %p) stub!\n", debugstr_w(servername),
149 debugstr_w(groupname), level, bufptr);
153 /************************************************************
154 * NetLocalGroupGetMembers (NETAPI32.@)
156 NET_API_STATUS WINAPI NetLocalGroupGetMembers(
158 LPCWSTR localgroupname,
163 LPDWORD totalentries,
164 PDWORD_PTR resumehandle)
166 FIXME("(%s %s %d %p %d, %p %p %p) stub!\n", debugstr_w(servername),
167 debugstr_w(localgroupname), level, bufptr, prefmaxlen, entriesread,
168 totalentries, resumehandle);
172 WCHAR userName[MAX_COMPUTERNAME_LENGTH + 1];
175 PLOCALGROUP_MEMBERS_INFO_3 ptr;
177 /* still a stub, current user is belonging to all groups */
182 userNameLen = MAX_COMPUTERNAME_LENGTH + 1;
183 GetUserNameW(userName,&userNameLen);
184 needlen = sizeof(LOCALGROUP_MEMBERS_INFO_3) +
185 (userNameLen+2) * sizeof(WCHAR);
186 if (prefmaxlen != MAX_PREFERRED_LENGTH)
187 len = min(prefmaxlen,needlen);
191 NetApiBufferAllocate(len, (LPVOID *) bufptr);
193 return ERROR_MORE_DATA;
195 ptr = (PLOCALGROUP_MEMBERS_INFO_3)*bufptr;
196 ptr->lgrmi3_domainandname = (LPWSTR)(*bufptr+sizeof(LOCALGROUP_MEMBERS_INFO_3));
197 lstrcpyW(ptr->lgrmi3_domainandname,userName);
205 /************************************************************
206 * NetLocalGroupSetInfo (NETAPI32.@)
208 NET_API_STATUS WINAPI NetLocalGroupSetInfo(
215 FIXME("(%s %s %d %p %p) stub!\n", debugstr_w(servername),
216 debugstr_w(groupname), level, buf, parm_err);
220 /************************************************************
221 * NetLocalGroupSetMember (NETAPI32.@)
223 NET_API_STATUS WINAPI NetLocalGroupSetMembers(
230 FIXME("(%s %s %d %p %d) stub!\n", debugstr_w(servername),
231 debugstr_w(groupname), level, buf, totalentries);