aboutsummaryrefslogtreecommitdiffstats
path: root/complus/ignupg.c
diff options
context:
space:
mode:
Diffstat (limited to 'complus/ignupg.c')
-rw-r--r--complus/ignupg.c202
1 files changed, 0 insertions, 202 deletions
diff --git a/complus/ignupg.c b/complus/ignupg.c
deleted file mode 100644
index 009d5db1..00000000
--- a/complus/ignupg.c
+++ /dev/null
@@ -1,202 +0,0 @@
-/* ignupg.c - COM+ class IGnuPG
- * Copyright (C) 2000 Werner Koch (dd9jn)
- *
- * This file is part of GPGME.
- *
- * GPGME is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * GPGME is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
- */
-
-
-#include <config.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <errno.h>
-#include <assert.h>
-#include <time.h>
-#include <windows.h>
-
-#define INITGUID
-#include "ignupg.h"
-
-/*
- * Declare the interface implementation structures
- */
-typedef struct IGnuPGImpl IGnuPGImpl;
-typedef struct IClassFactoryImpl IClassFactoryImpl;
-
-
-struct IGnuPGImpl {
- /* IUnknown required stuff */
- ICOM_VFIELD (IGnuPG);
- DWORD ref;
- /* Our stuff */
- int foo;
-};
-
-
-struct IClassFactoryImpl {
- /* IUnknown fields */
- ICOM_VFIELD(IClassFactory);
- DWORD ref;
-};
-
-
-
-/**********************************************************
- ************** IGnuPG Implementation *******************
- **********************************************************/
-
-static HRESULT WINAPI
-IGnuPGImpl_QueryInterface (IGnuPG *iface, REFIID refiid, LPVOID *obj)
-{
- ICOM_THIS (IGnuPGImpl,iface);
-
- fprintf (stderr,"(%p)->QueryInterface(%s,%p)\n",
- This, "debugstr_guid(refiid)", obj);
- if ( IsEqualGUID (&IID_IUnknown, refiid)
- || !IsEqualGUID (&IID_IGnuPG, refiid) ) {
- *obj = iface;
- return 0;
- }
- *obj = NULL;
- return E_NOINTERFACE;
-}
-
-
-static ULONG WINAPI
-IGnuPGImpl_AddRef (IGnuPG *iface)
-{
- ICOM_THIS (IGnuPGImpl,iface);
-
- return ++This->ref;
-}
-
-
-static ULONG WINAPI
-IGnuPGImpl_Release (IGnuPG *iface)
-{
- ICOM_THIS (IGnuPGImpl,iface);
-
- if (--This->ref)
- return This->ref;
-
- HeapFree(GetProcessHeap(),0,iface);
- return 0;
-}
-
-
-
-
-static ICOM_VTABLE(IGnuPG) gnupg_vtbl =
-{
- /* IUnknow methods */
- ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
- IGnuPGImpl_QueryInterface,
- IGnuPGImpl_AddRef,
- IGnuPGImpl_Release,
- /* Our methods */
-
-};
-
-
-
-/***************************************************************
- ****************** GnuPG Factory ****************************
- ***************************************************************/
-
-static HRESULT WINAPI
-GnuPGFactory_QueryInterface (IClassFactory *iface, REFIID refiid, LPVOID *obj)
-{
- /*ICOM_THIS(IClassFactoryImpl,iface);*/
- return E_NOINTERFACE;
-}
-
-static ULONG WINAPI
-GnuPGFactory_AddRef (IClassFactory *iface)
-{
- ICOM_THIS(IClassFactoryImpl,iface);
- return ++(This->ref);
-}
-
-static ULONG WINAPI
-GnuPGFactory_Release (IClassFactory *iface)
-{
- ICOM_THIS(IClassFactoryImpl,iface);
- return --(This->ref);
-}
-
-static HRESULT WINAPI
-GnuPGFactory_CreateInstance (IClassFactory *iface, IUnknown *outer,
- REFIID refiid, LPVOID *r_obj )
-{
- /*ICOM_THIS(IClassFactoryImpl,iface);*/
-
- if ( IsEqualGUID (&IID_IGnuPG, refiid) ) {
- IGnuPGImpl *obj;
-
- obj = HeapAlloc (GetProcessHeap(), 0, sizeof *obj );
- if ( !obj)
- return E_OUTOFMEMORY;
-
- ICOM_VTBL(obj) = &gnupg_vtbl;
- obj->ref = 1;
- *r_obj = obj;
- return 0;
- }
- *r_obj = NULL;
- return E_NOINTERFACE;
-}
-
-static HRESULT WINAPI
-GnuPGFactory_LockServer (IClassFactory *iface, BOOL dolock )
-{
- /*ICOM_THIS(IClassFactoryImpl,iface);*/
- return 0;
-}
-
-static ICOM_VTABLE(IClassFactory) gnupg_factory_vtbl = {
- ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
- GnuPGFactory_QueryInterface,
- GnuPGFactory_AddRef,
- GnuPGFactory_Release,
- GnuPGFactory_CreateInstance,
- GnuPGFactory_LockServer
-};
-static IClassFactoryImpl GnuPG_CF = {&gnupg_factory_vtbl, 1 };
-
-
-IClassFactory *
-gnupg_factory_new ( CLSID *r_clsid )
-{
- *r_clsid = CLSID_GnuPG;
- IClassFactory_AddRef((IClassFactory*)&GnuPG_CF);
- return (IClassFactory*)&GnuPG_CF;
-}
-
-void
-gnupg_factory_release ( IClassFactory *factory )
-{
- /* it's static - nothing to do */
-}
-
-
-
-
-
-
-
-
-