ReactOS  0.4.13-dev-79-gcd489d8
apps.c
Go to the documentation of this file.
1 /*
2  * Copyright 2009 Hans Leidekker for CodeWeavers
3  *
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Lesser General Public
6  * License as published by the Free Software Foundation; either
7  * version 2.1 of the License, or (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12  * Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public
15  * License along with this library; if not, write to the Free Software
16  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17  */
18 
19 #include "config.h"
20 #include <stdarg.h>
21 #include <stdio.h>
22 
23 #define COBJMACROS
24 
25 #include "windef.h"
26 #include "winbase.h"
27 #include "winuser.h"
28 #include "ole2.h"
29 #include "netfw.h"
30 
31 #include "wine/debug.h"
32 #include "wine/unicode.h"
33 #include "hnetcfg_private.h"
34 
36 
37 typedef struct fw_app
38 {
42 } fw_app;
43 
45 {
46  return CONTAINING_RECORD(iface, fw_app, INetFwAuthorizedApplication_iface);
47 }
48 
51 {
53  return InterlockedIncrement( &fw_app->refs );
54 }
55 
58 {
61  if (!refs)
62  {
63  TRACE("destroying %p\n", fw_app);
66  }
67  return refs;
68 }
69 
72  REFIID riid,
73  void **ppvObject )
74 {
76 
77  TRACE("%p %s %p\n", This, debugstr_guid( riid ), ppvObject );
78 
79  if ( IsEqualGUID( riid, &IID_INetFwAuthorizedApplication ) ||
82  {
83  *ppvObject = iface;
84  }
85  else
86  {
87  FIXME("interface %s not implemented\n", debugstr_guid(riid));
88  return E_NOINTERFACE;
89  }
90  INetFwAuthorizedApplication_AddRef( iface );
91  return S_OK;
92 }
93 
96  UINT *pctinfo )
97 {
99 
100  TRACE("%p %p\n", This, pctinfo);
101  *pctinfo = 1;
102  return S_OK;
103 }
104 
107 
108 static REFIID tid_id[] =
109 {
110  &IID_INetFwAuthorizedApplication,
111  &IID_INetFwAuthorizedApplications,
112  &IID_INetFwMgr,
113  &IID_INetFwOpenPort,
114  &IID_INetFwOpenPorts,
115  &IID_INetFwPolicy,
116  &IID_INetFwPolicy2,
117  &IID_INetFwProfile
118 };
119 
121 {
122  HRESULT hr;
123 
124  if (!typelib)
125  {
126  ITypeLib *lib;
127 
128  hr = LoadRegTypeLib( &LIBID_NetFwPublicTypeLib, 1, 0, LOCALE_SYSTEM_DEFAULT, &lib );
129  if (FAILED(hr))
130  {
131  ERR("LoadRegTypeLib failed: %08x\n", hr);
132  return hr;
133  }
134  if (InterlockedCompareExchangePointer( (void **)&typelib, lib, NULL ))
135  ITypeLib_Release( lib );
136  }
137  if (!typeinfo[tid])
138  {
139  ITypeInfo *info;
140 
141  hr = ITypeLib_GetTypeInfoOfGuid( typelib, tid_id[tid], &info );
142  if (FAILED(hr))
143  {
144  ERR("GetTypeInfoOfGuid(%s) failed: %08x\n", debugstr_guid(tid_id[tid]), hr);
145  return hr;
146  }
148  ITypeInfo_Release( info );
149  }
150  *ret = typeinfo[tid];
151  ITypeInfo_AddRef(typeinfo[tid]);
152  return S_OK;
153 }
154 
155 void release_typelib(void)
156 {
157  unsigned i;
158 
159  for (i = 0; i < sizeof(typeinfo)/sizeof(*typeinfo); i++)
160  if (typeinfo[i])
161  ITypeInfo_Release(typeinfo[i]);
162 
163  if (typelib)
164  ITypeLib_Release(typelib);
165 }
166 
169  UINT iTInfo,
170  LCID lcid,
171  ITypeInfo **ppTInfo )
172 {
174 
175  TRACE("%p %u %u %p\n", This, iTInfo, lcid, ppTInfo);
177 }
178 
181  REFIID riid,
182  LPOLESTR *rgszNames,
183  UINT cNames,
184  LCID lcid,
185  DISPID *rgDispId )
186 {
189  HRESULT hr;
190 
191  TRACE("%p %s %p %u %u %p\n", This, debugstr_guid(riid), rgszNames, cNames, lcid, rgDispId);
192 
194  if (SUCCEEDED(hr))
195  {
196  hr = ITypeInfo_GetIDsOfNames( typeinfo, rgszNames, cNames, rgDispId );
197  ITypeInfo_Release( typeinfo );
198  }
199  return hr;
200 }
201 
204  DISPID dispIdMember,
205  REFIID riid,
206  LCID lcid,
207  WORD wFlags,
208  DISPPARAMS *pDispParams,
209  VARIANT *pVarResult,
210  EXCEPINFO *pExcepInfo,
211  UINT *puArgErr )
212 {
215  HRESULT hr;
216 
217  TRACE("%p %d %s %d %d %p %p %p %p\n", This, dispIdMember, debugstr_guid(riid),
218  lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr);
219 
221  if (SUCCEEDED(hr))
222  {
223  hr = ITypeInfo_Invoke( typeinfo, &This->INetFwAuthorizedApplication_iface, dispIdMember,
224  wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr );
225  ITypeInfo_Release( typeinfo );
226  }
227  return hr;
228 }
229 
232  BSTR *name )
233 {
235 
236  FIXME("%p, %p\n", This, name);
237  return E_NOTIMPL;
238 }
239 
242  BSTR name )
243 {
245 
246  FIXME("%p, %s\n", This, debugstr_w(name));
247  return S_OK;
248 }
249 
252  BSTR *imageFileName )
253 {
255 
256  FIXME("%p, %p\n", This, imageFileName);
257 
258  if (!imageFileName)
259  return E_POINTER;
260 
261  *imageFileName = SysAllocString( This->filename );
262  return *imageFileName || !This->filename ? S_OK : E_OUTOFMEMORY;
263 }
264 
267  BSTR imageFileName )
268 {
270 
271  FIXME("%p, %s\n", This, debugstr_w(imageFileName));
272 
273  if (!imageFileName || !imageFileName[0])
274  return E_INVALIDARG;
275 
276  SysFreeString( This->filename );
277  This->filename = SysAllocString( imageFileName );
278  return This->filename ? S_OK : E_OUTOFMEMORY;
279 }
280 
283  NET_FW_IP_VERSION *ipVersion )
284 {
286 
287  TRACE("%p, %p\n", This, ipVersion);
288 
289  if (!ipVersion)
290  return E_POINTER;
291  *ipVersion = NET_FW_IP_VERSION_ANY;
292  return S_OK;
293 }
294 
297  NET_FW_IP_VERSION ipVersion )
298 {
300 
301  TRACE("%p, %u\n", This, ipVersion);
302  return S_OK;
303 }
304 
307  NET_FW_SCOPE *scope )
308 {
310 
311  FIXME("%p, %p\n", This, scope);
312  return E_NOTIMPL;
313 }
314 
317  NET_FW_SCOPE scope )
318 {
320 
321  FIXME("%p, %u\n", This, scope);
322  return S_OK;
323 }
324 
327  BSTR *remoteAddrs )
328 {
330 
331  FIXME("%p, %p\n", This, remoteAddrs);
332  return E_NOTIMPL;
333 }
334 
337  BSTR remoteAddrs )
338 {
340 
341  FIXME("%p, %s\n", This, debugstr_w(remoteAddrs));
342  return E_NOTIMPL;
343 }
344 
348 {
350 
351  FIXME("%p, %p\n", This, enabled);
352 
353  *enabled = VARIANT_FALSE;
354  return S_OK;
355 }
356 
360 {
362 
363  FIXME("%p, %d\n", This, enabled);
364  return S_OK;
365 }
366 
367 static const struct INetFwAuthorizedApplicationVtbl fw_app_vtbl =
368 {
388 };
389 
391 {
392  fw_app *fa;
393 
394  TRACE("(%p,%p)\n", pUnkOuter, ppObj);
395 
396  fa = HeapAlloc( GetProcessHeap(), 0, sizeof(*fa) );
397  if (!fa) return E_OUTOFMEMORY;
398 
399  fa->INetFwAuthorizedApplication_iface.lpVtbl = &fw_app_vtbl;
400  fa->refs = 1;
401  fa->filename = NULL;
402 
403  *ppObj = &fa->INetFwAuthorizedApplication_iface;
404 
405  TRACE("returning iface %p\n", *ppObj);
406  return S_OK;
407 }
408 typedef struct fw_apps
409 {
412 } fw_apps;
413 
415 {
416  return CONTAINING_RECORD(iface, fw_apps, INetFwAuthorizedApplications_iface);
417 }
418 
421 {
423  return InterlockedIncrement( &fw_apps->refs );
424 }
425 
428 {
431  if (!refs)
432  {
433  TRACE("destroying %p\n", fw_apps);
435  }
436  return refs;
437 }
438 
441  REFIID riid,
442  void **ppvObject )
443 {
445 
446  TRACE("%p %s %p\n", This, debugstr_guid( riid ), ppvObject );
447 
448  if ( IsEqualGUID( riid, &IID_INetFwAuthorizedApplications ) ||
451  {
452  *ppvObject = iface;
453  }
454  else
455  {
456  FIXME("interface %s not implemented\n", debugstr_guid(riid));
457  return E_NOINTERFACE;
458  }
459  INetFwAuthorizedApplications_AddRef( iface );
460  return S_OK;
461 }
462 
465  UINT *pctinfo )
466 {
468 
469  FIXME("%p %p\n", This, pctinfo);
470  return E_NOTIMPL;
471 }
472 
475  UINT iTInfo,
476  LCID lcid,
477  ITypeInfo **ppTInfo )
478 {
480 
481  TRACE("%p %u %u %p\n", This, iTInfo, lcid, ppTInfo);
483 }
484 
487  REFIID riid,
488  LPOLESTR *rgszNames,
489  UINT cNames,
490  LCID lcid,
491  DISPID *rgDispId )
492 {
495  HRESULT hr;
496 
497  TRACE("%p %s %p %u %u %p\n", This, debugstr_guid(riid), rgszNames, cNames, lcid, rgDispId);
498 
500  if (SUCCEEDED(hr))
501  {
502  hr = ITypeInfo_GetIDsOfNames( typeinfo, rgszNames, cNames, rgDispId );
503  ITypeInfo_Release( typeinfo );
504  }
505  return hr;
506 }
507 
510  DISPID dispIdMember,
511  REFIID riid,
512  LCID lcid,
513  WORD wFlags,
514  DISPPARAMS *pDispParams,
515  VARIANT *pVarResult,
516  EXCEPINFO *pExcepInfo,
517  UINT *puArgErr )
518 {
521  HRESULT hr;
522 
523  TRACE("%p %d %s %d %d %p %p %p %p\n", This, dispIdMember, debugstr_guid(riid),
524  lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr);
525 
527  if (SUCCEEDED(hr))
528  {
529  hr = ITypeInfo_Invoke( typeinfo, &This->INetFwAuthorizedApplications_iface, dispIdMember,
530  wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr );
531  ITypeInfo_Release( typeinfo );
532  }
533  return hr;
534 }
535 
538  LONG *count )
539 {
541 
542  FIXME("%p, %p\n", This, count);
543  return E_NOTIMPL;
544 }
545 
549 {
551 
552  FIXME("%p, %p\n", This, app);
553  return S_OK;
554 }
555 
558  BSTR imageFileName )
559 {
561 
562  FIXME("%p, %s\n", This, debugstr_w(imageFileName));
563  return S_OK;
564 }
565 
568  BSTR imageFileName,
570 {
572 
573  TRACE("%p, %s, %p\n", This, debugstr_w(imageFileName), app);
574  return NetFwAuthorizedApplication_create( NULL, (void **)app );
575 }
576 
579  IUnknown **newEnum )
580 {
582 
583  FIXME("%p, %p\n", This, newEnum);
584  return E_NOTIMPL;
585 }
586 
587 static const struct INetFwAuthorizedApplicationsVtbl fw_apps_vtbl =
588 {
597  fw_apps_Add,
599  fw_apps_Item,
601 };
602 
604 {
605  fw_apps *fa;
606 
607  TRACE("(%p,%p)\n", pUnkOuter, ppObj);
608 
609  fa = HeapAlloc( GetProcessHeap(), 0, sizeof(*fa) );
610  if (!fa) return E_OUTOFMEMORY;
611 
612  fa->INetFwAuthorizedApplications_iface.lpVtbl = &fw_apps_vtbl;
613  fa->refs = 1;
614 
615  *ppObj = &fa->INetFwAuthorizedApplications_iface;
616 
617  TRACE("returning iface %p\n", *ppObj);
618  return S_OK;
619 }
LONG refs
Definition: apps.c:411
static REFIID tid_id[]
Definition: apps.c:108
static ULONG WINAPI fw_app_AddRef(INetFwAuthorizedApplication *iface)
Definition: apps.c:49
static HRESULT WINAPI fw_app_put_Name(INetFwAuthorizedApplication *iface, BSTR name)
Definition: apps.c:240
#define REFIID
Definition: guiddef.h:113
#define E_NOINTERFACE
Definition: winerror.h:2364
static const struct INetFwAuthorizedApplicationsVtbl fw_apps_vtbl
Definition: apps.c:587
HRESULT hr
Definition: shlfolder.c:183
static HRESULT WINAPI fw_app_GetTypeInfoCount(INetFwAuthorizedApplication *iface, UINT *pctinfo)
Definition: apps.c:94
REFIID riid
Definition: precomp.h:44
static HRESULT WINAPI fw_app_Invoke(INetFwAuthorizedApplication *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
Definition: apps.c:202
GLuint GLuint GLsizei count
Definition: gl.h:1545
HRESULT NetFwAuthorizedApplication_create(IUnknown *pUnkOuter, LPVOID *ppObj)
Definition: apps.c:390
static HRESULT WINAPI fw_apps_get_Count(INetFwAuthorizedApplications *iface, LONG *count)
Definition: apps.c:536
static ITypeLib * typelib
Definition: apps.c:105
LONG refs
Definition: apps.c:40
static HRESULT WINAPI fw_app_get_Enabled(INetFwAuthorizedApplication *iface, VARIANT_BOOL *enabled)
Definition: apps.c:345
static HRESULT WINAPI fw_app_put_IpVersion(INetFwAuthorizedApplication *iface, NET_FW_IP_VERSION ipVersion)
Definition: apps.c:295
DWORD LCID
Definition: nls.h:13
OLECHAR * BSTR
Definition: compat.h:1934
static LPOLESTR
Definition: stg_prop.c:27
enum NET_FW_IP_VERSION_ NET_FW_IP_VERSION
GLenum GLenum GLsizei const GLuint GLboolean enabled
Definition: glext.h:7750
short VARIANT_BOOL
Definition: compat.h:1931
INetFwAuthorizedApplications INetFwAuthorizedApplications_iface
Definition: apps.c:410
struct _test_info info[]
Definition: SetCursorPos.c:19
static HRESULT WINAPI fw_app_get_RemoteAddresses(INetFwAuthorizedApplication *iface, BSTR *remoteAddrs)
Definition: apps.c:325
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
Definition: glfuncs.h:248
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
long LONG
Definition: pedump.c:60
enum NET_FW_SCOPE_ NET_FW_SCOPE
#define debugstr_w
Definition: kernel32.h:32
#define FIXME(fmt,...)
Definition: debug.h:110
WINE_DEFAULT_DEBUG_CHANNEL(hnetcfg)
#define InterlockedCompareExchangePointer
Definition: interlocked.h:129
static HRESULT WINAPI fw_app_GetIDsOfNames(INetFwAuthorizedApplication *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
Definition: apps.c:179
#define E_INVALIDARG
Definition: ddrawi.h:101
smooth NULL
Definition: ftsmooth.c:416
BSTR WINAPI SysAllocString(LPCOLESTR str)
Definition: oleaut.c:241
HRESULT get_typeinfo(enum type_id tid, ITypeInfo **ret)
Definition: apps.c:120
static HRESULT WINAPI fw_apps_Item(INetFwAuthorizedApplications *iface, BSTR imageFileName, INetFwAuthorizedApplication **app)
Definition: apps.c:566
#define debugstr_guid
Definition: kernel32.h:35
PFLT_MESSAGE_WAITER_QUEUE CONTAINING_RECORD(Csq, DEVICE_EXTENSION, IrpQueue)) -> WaiterQ.mLock) _IRQL_raises_(DISPATCH_LEVEL) VOID NTAPI FltpAcquireMessageWaiterLock(_In_ PIO_CSQ Csq, _Out_ PKIRQL Irql)
Definition: Messaging.c:560
Definition: apps.c:408
static HRESULT WINAPI fw_apps_QueryInterface(INetFwAuthorizedApplications *iface, REFIID riid, void **ppvObject)
Definition: apps.c:439
static HRESULT WINAPI fw_app_get_ProcessImageFileName(INetFwAuthorizedApplication *iface, BSTR *imageFileName)
Definition: apps.c:250
static HRESULT WINAPI fw_app_get_IpVersion(INetFwAuthorizedApplication *iface, NET_FW_IP_VERSION *ipVersion)
Definition: apps.c:281
#define TRACE(s)
Definition: solgame.cpp:4
Definition: apps.c:37
#define GetProcessHeap()
Definition: compat.h:395
PVOID WINAPI HeapAlloc(HANDLE, DWORD, SIZE_T)
static const struct INetFwAuthorizedApplicationVtbl fw_app_vtbl
Definition: apps.c:367
LONG HRESULT
Definition: typedefs.h:77
const GUID IID_IUnknown
BSTR filename
Definition: apps.c:41
#define WINAPI
Definition: msvc.h:8
#define LOCALE_SYSTEM_DEFAULT
unsigned short WORD
Definition: ntddk_ex.h:93
static fw_app * impl_from_INetFwAuthorizedApplication(INetFwAuthorizedApplication *iface)
Definition: apps.c:44
type_id
void release_typelib(void)
Definition: apps.c:155
struct fw_app fw_app
const GUID IID_IDispatch
static HRESULT WINAPI fw_apps_GetIDsOfNames(INetFwAuthorizedApplications *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
Definition: apps.c:485
static ULONG WINAPI fw_apps_Release(INetFwAuthorizedApplications *iface)
Definition: apps.c:426
int ret
static ITypeInfo * typeinfo[last_tid]
Definition: apps.c:106
#define InterlockedDecrement
Definition: armddk.h:52
HRESULT NetFwAuthorizedApplications_create(IUnknown *pUnkOuter, LPVOID *ppObj)
Definition: apps.c:603
static fw_apps * impl_from_INetFwAuthorizedApplications(INetFwAuthorizedApplications *iface)
Definition: apps.c:414
static HRESULT WINAPI fw_app_GetTypeInfo(INetFwAuthorizedApplication *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
Definition: apps.c:167
REFIID LPVOID * ppvObject
Definition: precomp.h:44
INetFwAuthorizedApplication INetFwAuthorizedApplication_iface
Definition: apps.c:39
static HRESULT WINAPI fw_apps_GetTypeInfoCount(INetFwAuthorizedApplications *iface, UINT *pctinfo)
Definition: apps.c:463
static HRESULT WINAPI fw_apps_Invoke(INetFwAuthorizedApplications *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
Definition: apps.c:508
static HRESULT WINAPI fw_app_put_Enabled(INetFwAuthorizedApplication *iface, VARIANT_BOOL enabled)
Definition: apps.c:357
static HRESULT WINAPI fw_app_put_Scope(INetFwAuthorizedApplication *iface, NET_FW_SCOPE scope)
Definition: apps.c:315
_In_ DWORD _Out_ _In_ WORD wFlags
Definition: wincon.h:519
#define ERR(fmt,...)
Definition: debug.h:109
struct stdole::EXCEPINFO EXCEPINFO
static VARIANTARG static DISPID
Definition: ordinal.c:49
#define S_OK
Definition: intsafe.h:59
HRESULT WINAPI LoadRegTypeLib(REFGUID rguid, WORD wVerMajor, WORD wVerMinor, LCID lcid, ITypeLib **ppTLib)
Definition: typelib.c:534
#define InterlockedIncrement
Definition: armddk.h:53
static HRESULT WINAPI fw_app_put_RemoteAddresses(INetFwAuthorizedApplication *iface, BSTR remoteAddrs)
Definition: apps.c:335
#define E_NOTIMPL
Definition: ddrawi.h:99
void WINAPI DECLSPEC_HOTPATCH SysFreeString(BSTR str)
Definition: oleaut.c:274
unsigned int UINT
Definition: ndis.h:50
BOOL WINAPI IsEqualGUID(REFGUID rguid1, REFGUID rguid2)
Definition: compobj.c:4021
static HRESULT WINAPI fw_apps_Remove(INetFwAuthorizedApplications *iface, BSTR imageFileName)
Definition: apps.c:556
Definition: name.c:36
struct stdole::DISPPARAMS DISPPARAMS
unsigned int ULONG
Definition: retypes.h:1
static HRESULT WINAPI fw_app_put_ProcessImageFileName(INetFwAuthorizedApplication *iface, BSTR imageFileName)
Definition: apps.c:265
static HRESULT WINAPI fw_app_QueryInterface(INetFwAuthorizedApplication *iface, REFIID riid, void **ppvObject)
Definition: apps.c:70
static ULONG WINAPI fw_app_Release(INetFwAuthorizedApplication *iface)
Definition: apps.c:56
static HRESULT WINAPI fw_app_get_Name(INetFwAuthorizedApplication *iface, BSTR *name)
Definition: apps.c:230
static HRESULT WINAPI fw_apps_GetTypeInfo(INetFwAuthorizedApplications *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
Definition: apps.c:473
#define E_POINTER
Definition: winerror.h:2365
struct fw_apps fw_apps
static HRESULT WINAPI fw_apps_get__NewEnum(INetFwAuthorizedApplications *iface, IUnknown **newEnum)
Definition: apps.c:577
static HRESULT WINAPI fw_app_get_Scope(INetFwAuthorizedApplication *iface, NET_FW_SCOPE *scope)
Definition: apps.c:305
static TfClientId tid
#define HeapFree(x, y, z)
Definition: compat.h:394
static HRESULT WINAPI fw_apps_Add(INetFwAuthorizedApplications *iface, INetFwAuthorizedApplication *app)
Definition: apps.c:546
#define SUCCEEDED(hr)
Definition: intsafe.h:57
static ULONG WINAPI fw_apps_AddRef(INetFwAuthorizedApplications *iface)
Definition: apps.c:419
f_args fa
Definition: format.c:280