118 IWbemPathKeyList_AddRef( iface );
129 TRACE(
"%p, %p\n", iface, puKeyCount);
135 *puKeyCount =
parent->num_keys;
167 ULONG *puNameBufSize,
169 ULONG *puKeyValBufSize,
171 ULONG *puApparentCimType )
173 FIXME(
"%p, %u, 0x%x, %p, %p, %p, %p, %p\n", iface, uKeyIx,
uFlags, puNameBufSize,
174 pszKeyName, puKeyValBufSize, pKeyVal, puApparentCimType);
182 ULONG *puNameBufSize,
185 ULONG *puApparentCimType )
187 FIXME(
"%p, %u, 0x%x, %p, %p, %p, %p\n", iface, uKeyIx,
uFlags, puNameBufSize,
188 pszKeyName, pKeyValue, puApparentCimType);
238 FIXME(
"%p, %d\n", iface, bSet);
244 ULONG uRequestedInfo,
247 FIXME(
"%p, %u, %p\n", iface, uRequestedInfo, puResponse);
257 FIXME(
"%p, 0x%x, %p, %p\n", iface, lFlags, puBuffLength, pszText);
282 TRACE(
"%p\n", ppObj);
293 TRACE(
"returning iface %p\n", *ppObj);
369 IWbemPath_AddRef( iface );
379 while (*
q && *
q !=
'=')
393 while (*
q && *
q !=
',')
q++;
401 if (*
q ==
',') (*ret_len)++;
412 if ((
p[0] ==
'\\' &&
p[1] ==
'\\') || (
p[0] ==
'/' &&
p[1] ==
'/'))
416 while (*
q && *
q !=
'\\' && *
q !=
'/')
q++;
427 if (*
q !=
'\\' && *
q !=
'/' && *
q !=
':')
432 while (*
q && *
q !=
':')
445 if (*
q && *
q !=
'\\' && *
q !=
'/' && *
q !=
':')
448 while (*
p && *
p !=
'\\' && *
p !=
'/' && *
p !=
':')
p++;
457 while (*
q && *
q !=
':')
459 if (*
q ==
'\\' || *
q ==
'/')
462 while (*
p && *
p !=
'\\' && *
p !=
'/' && *
p !=
':')
p++;
475 while (*
q && *
q !=
'.')
q++;
498 if (
hr !=
S_OK)
goto done;
527 if (!pszPath[0])
goto done;
553 if (
i > 0 || leading_slash) *
len += 1;
559 if (
i > 0 || leading_slash) *
p++ =
'\\';
597 if (
i > 0) *
len += 1;
603 if (
i > 0) *
p++ =
',';
621 int len_namespace, len_keylist;
631 *
len = len_namespace;
646 ret[len_namespace] =
':';
685 int len_namespace, len_server, len_keylist;
697 *
len = len_namespace + len_server;
731 int len_namespace, len_server;
735 if (!
namespace || !
server)
741 *
len = len_namespace + len_server;
764 ERR(
"unhandled flags 0x%x\n",
flags);
772 ULONG *puBufferLength,
780 TRACE(
"%p, 0x%x, %p, %p\n", iface, lFlags, puBufferLength, pszText);
787 if (*puBufferLength <
len + 1)
789 *puBufferLength =
len + 1;
799 *puBufferLength =
len + 1;
816 TRACE(
"%p, %u, %p\n", iface,
info, response);
820 FIXME(
"some flags are not implemented\n");
914 TRACE(
"%p, %p\n", iface, puCount);
1043 TRACE(
"%p\n", iface);
1062 FIXME(
"%p, %p\n", iface, puCount);
1087 ULONG *puClassNameBufSize,
1091 FIXME(
"%p, %u, %p, %p, %p\n", iface, uIndex, puClassNameBufSize, pszClass, pKeyList);
1098 ULONG *puTextBufSize,
1101 FIXME(
"%p, %u, %p, %p\n", iface, uIndex, puTextBufSize, pszText);
1109 FIXME(
"%p, %u\n", iface, uIndex);
1116 FIXME(
"%p\n", iface);
1175 TRACE(
"%p, %p\n", iface, pOut);
1203 FIXME(
"%p, 0x%x\n", iface, lFlags);
1279 TRACE(
"%p\n", ppObj);
1291 TRACE(
"returning iface %p\n", *ppObj);
static void * heap_alloc(size_t len)
static BOOL heap_free(void *mem)
static void * heap_realloc(void *mem, size_t len)
#define InterlockedIncrement
#define InterlockedDecrement
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
static WCHAR * strdupW(const WCHAR *src)
static BSTR build_namespace(void)
static const struct IWbemPathVtbl path_vtbl
static HRESULT parse_key(struct key *key, const WCHAR *str, unsigned int *ret_len)
static HRESULT WINAPI keylist_SetKey(IWbemPathKeyList *iface, LPCWSTR wszName, ULONG uFlags, ULONG uCimType, LPVOID pKeyVal)
static HRESULT WINAPI path_RemoveAllScopes(IWbemPath *iface)
static HRESULT WINAPI path_SetServer(IWbemPath *iface, LPCWSTR name)
static WCHAR * build_keylist(struct path *path, int *len)
static HRESULT WINAPI path_GetNamespaceAt(IWbemPath *iface, ULONG idx, ULONG *len, LPWSTR name)
static void free_keys(struct key *keys, unsigned int count)
static BOOL WINAPI path_IsSameClassName(IWbemPath *iface, LPCWSTR wszClass)
static ULONG WINAPI path_Release(IWbemPath *iface)
static ULONG WINAPI path_AddRef(IWbemPath *iface)
static HRESULT WINAPI keylist_QueryInterface(IWbemPathKeyList *iface, REFIID riid, void **ppvObject)
static HRESULT WINAPI keylist_RemoveAllKeys(IWbemPathKeyList *iface, ULONG uFlags)
static HRESULT WINAPI keylist_GetInfo(IWbemPathKeyList *iface, ULONG uRequestedInfo, ULONGLONG *puResponse)
static HRESULT WINAPI path_GetInfo(IWbemPath *iface, ULONG info, ULONGLONG *response)
static const struct IWbemPathKeyListVtbl keylist_vtbl
static HRESULT WINAPI keylist_RemoveKey(IWbemPathKeyList *iface, LPCWSTR wszName, ULONG uFlags)
static HRESULT WINAPI path_SetNamespaceAt(IWbemPath *iface, ULONG idx, LPCWSTR name)
static HRESULT WINAPI keylist_MakeSingleton(IWbemPathKeyList *iface, boolean bSet)
static HRESULT WbemPathKeyList_create(IWbemPath *parent, LPVOID *ppObj)
static BOOL WINAPI path_IsRelative(IWbemPath *iface, LPWSTR wszMachine, LPWSTR wszNamespace)
static HRESULT WINAPI path_GetNamespaceCount(IWbemPath *iface, ULONG *puCount)
static HRESULT WINAPI path_SetScopeFromText(IWbemPath *iface, ULONG uIndex, LPWSTR pszText)
static struct path * impl_from_IWbemPath(IWbemPath *iface)
static struct keylist * impl_from_IWbemPathKeyList(IWbemPathKeyList *iface)
static HRESULT WINAPI path_GetKeyList(IWbemPath *iface, IWbemPathKeyList **pOut)
static HRESULT WINAPI path_RemoveAllNamespaces(IWbemPath *iface)
HRESULT WbemPath_create(LPVOID *ppObj)
static HRESULT WINAPI path_GetServer(IWbemPath *iface, ULONG *len, LPWSTR name)
static HRESULT WINAPI keylist_GetKey2(IWbemPathKeyList *iface, ULONG uKeyIx, ULONG uFlags, ULONG *puNameBufSize, LPWSTR pszKeyName, VARIANT *pKeyValue, ULONG *puApparentCimType)
static HRESULT WINAPI path_DeleteClassPart(IWbemPath *iface, LONG lFlags)
static HRESULT WINAPI path_GetClassName(IWbemPath *iface, ULONG *len, LPWSTR name)
static WCHAR * build_server(struct path *path, int *len)
static HRESULT WINAPI path_QueryInterface(IWbemPath *iface, REFIID riid, void **ppvObject)
static HRESULT WINAPI path_GetScopeAsText(IWbemPath *iface, ULONG uIndex, ULONG *puTextBufSize, LPWSTR pszText)
static WCHAR * build_path(struct path *path, LONG flags, int *len)
static HRESULT WINAPI path_GetText(IWbemPath *iface, LONG lFlags, ULONG *puBufferLength, LPWSTR pszText)
static HRESULT WINAPI path_RemoveScope(IWbemPath *iface, ULONG uIndex)
static HRESULT WINAPI keylist_SetKey2(IWbemPathKeyList *iface, LPCWSTR wszName, ULONG uFlags, ULONG uCimType, VARIANT *pKeyVal)
static HRESULT WINAPI path_GetScopeCount(IWbemPath *iface, ULONG *puCount)
static BOOL WINAPI path_IsLocal(IWbemPath *iface, LPCWSTR wszMachine)
static void init_path(struct path *path)
static HRESULT WINAPI path_CreateClassPart(IWbemPath *iface, LONG lFlags, LPCWSTR Name)
static HRESULT WINAPI path_SetText(IWbemPath *iface, ULONG uMode, LPCWSTR pszPath)
static HRESULT WINAPI path_GetScope(IWbemPath *iface, ULONG uIndex, ULONG *puClassNameBufSize, LPWSTR pszClass, IWbemPathKeyList **pKeyList)
static HRESULT WINAPI path_SetScope(IWbemPath *iface, ULONG uIndex, LPWSTR pszClass)
static HRESULT WINAPI keylist_GetText(IWbemPathKeyList *iface, LONG lFlags, ULONG *puBuffLength, LPWSTR pszText)
static HRESULT parse_text(struct path *path, ULONG mode, const WCHAR *text)
static HRESULT WINAPI path_RemoveNamespaceAt(IWbemPath *iface, ULONG idx)
static HRESULT WINAPI keylist_GetCount(IWbemPathKeyList *iface, ULONG *puKeyCount)
static ULONG WINAPI keylist_AddRef(IWbemPathKeyList *iface)
static HRESULT WINAPI keylist_GetKey(IWbemPathKeyList *iface, ULONG uKeyIx, ULONG uFlags, ULONG *puNameBufSize, LPWSTR pszKeyName, ULONG *puKeyValBufSize, LPVOID pKeyVal, ULONG *puApparentCimType)
static void clear_path(struct path *path)
static ULONG WINAPI keylist_Release(IWbemPathKeyList *iface)
static BOOL WINAPI path_IsRelativeOrChild(IWbemPath *iface, LPWSTR wszMachine, LPWSTR wszNamespace, LONG lFlags)
static HRESULT WINAPI path_SetClassName(IWbemPath *iface, LPCWSTR name)
GLuint GLuint GLsizei count
GLdouble GLdouble GLdouble GLdouble q
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
#define memcpy(s1, s2, n)
static JOBOBJECTINFOCLASS LPVOID DWORD LPDWORD ret_len
#define IsEqualGUID(rguid1, rguid2)
DWORD_PTR Spare[8/sizeof(DWORD_PTR)]
PCRITICAL_SECTION_DEBUG DebugInfo
IWbemPathKeyList IWbemPathKeyList_iface
IWbemPath IWbemPath_iface
VOID WINAPI InitializeCriticalSection(OUT LPCRITICAL_SECTION lpCriticalSection)
#define CONTAINING_RECORD(address, type, field)
static rfbScreenInfoPtr server
@ WBEM_E_INVALID_PARAMETER
@ WBEM_E_INVALID_OBJECT_PATH
void WINAPI LeaveCriticalSection(LPCRITICAL_SECTION)
void WINAPI EnterCriticalSection(LPCRITICAL_SECTION)
void WINAPI DeleteCriticalSection(PCRITICAL_SECTION)
_In_ void _In_ PCCERT_CONTEXT _In_opt_ LPFILETIME _In_ DWORD _In_ DWORD _Outptr_opt_ void ** ppvObject
@ WBEMPATH_GET_RELATIVE_ONLY
@ WBEMPATH_GET_SERVER_AND_NAMESPACE_ONLY
@ WBEMPATH_GET_SERVER_TOO
@ WBEMPATH_GET_NAMESPACE_ONLY
@ WBEMPATH_INFO_IS_CLASS_REF
@ WBEMPATH_INFO_HAS_MACHINE_NAME
@ WBEMPATH_INFO_V2_COMPLIANT
@ WBEMPATH_INFO_HAS_SUBSCOPES
@ WBEMPATH_INFO_PATH_HAD_SERVER
@ WBEMPATH_INFO_IS_INST_REF
@ WBEMPATH_INFO_SERVER_NAMESPACE_ONLY
@ WBEMPATH_INFO_CIM_COMPLIANT
@ WBEMPATH_INFO_ANON_LOCAL_MACHINE
@ WBEMPATH_INFO_V1_COMPLIANT