From 6d3c74a67b935f348777feb3fac7653a9c4277a8 Mon Sep 17 00:00:00 2001 From: Jelmer Vernooij Date: Wed, 3 Nov 2004 20:32:28 +0000 Subject: r3513: Add (the infrastructure for) DCOM support. Contents: - Support for sending over the object UUID in DCERPC calls - Simple torture test for the DCOM "Simple" object - Generate extra argument for "object" interfaces in pidl - Some stubs for common DCOM functions (This used to be commit c052f2e1edd816206d8974af3140cec7ef97a70c) --- source4/rpc_server/dcom/dcom.h | 51 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 source4/rpc_server/dcom/dcom.h (limited to 'source4/rpc_server/dcom/dcom.h') diff --git a/source4/rpc_server/dcom/dcom.h b/source4/rpc_server/dcom/dcom.h new file mode 100644 index 0000000000..4fdcd0e0e6 --- /dev/null +++ b/source4/rpc_server/dcom/dcom.h @@ -0,0 +1,51 @@ +/* + Unix SMB/CIFS implementation. + DCOM standard objects + Copyright (C) Jelmer Vernooij 2004. + + This program 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. + + This program 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., 675 Mass Ave, Cambridge, MA 02139, USA. +*/ + +#ifndef _DCOM_H /* _DCOM_H */ +#define _DCOM_H + +struct dcom_class +{ + const char *name; + struct GUID CLSID; + + /* List of IID's implemented */ + uint32 cIIDs; + struct GUID *IID; + + /* Pointers to functions this class implements */ +}; + +struct dcom_object +{ + struct dcom_class *class; + struct GUID oid; + HYPER_T OXID; + struct dcom_interface_pointer *interfaces; + void *private_data; +}; + +struct dcom_interface_pointer +{ + struct dcom_object *object; + struct GUID ipid; +}; + +#endif /* _DCOM_H */ -- cgit