diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2005-03-07 02:14:38 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 13:10:59 -0500 |
commit | d892500e733fa2c85f950b69f11546c0f037a25a (patch) | |
tree | d6fc1108c26b0f7fdfaf709393d8e2aaf0f188ef /source4 | |
parent | dd2aefd56b0968da8b1c4d055bc8c2f30382fb23 (diff) | |
download | samba-d892500e733fa2c85f950b69f11546c0f037a25a.tar.gz samba-d892500e733fa2c85f950b69f11546c0f037a25a.tar.bz2 samba-d892500e733fa2c85f950b69f11546c0f037a25a.zip |
r5676: Fix some alignment issues and IRemoteActivation
(This used to be commit a9b13f67012d235d98920e639f59411d57a79bd7)
Diffstat (limited to 'source4')
-rw-r--r-- | source4/lib/com/dcom/main.c | 10 | ||||
-rw-r--r-- | source4/librpc/idl/orpc.idl | 5 | ||||
-rw-r--r-- | source4/librpc/idl/remact.idl | 8 | ||||
-rw-r--r-- | source4/torture/com/simple.c | 1 |
4 files changed, 20 insertions, 4 deletions
diff --git a/source4/lib/com/dcom/main.c b/source4/lib/com/dcom/main.c index 853af4c739..7c9c3b4394 100644 --- a/source4/lib/com/dcom/main.c +++ b/source4/lib/com/dcom/main.c @@ -30,6 +30,16 @@ #define DCOM_NEGOTIATED_PROTOCOLS { EPM_PROTOCOL_TCP, EPM_PROTOCOL_SMB, EPM_PROTOCOL_NCALRPC } +struct dcom_client_context *dcom_client_init(struct com_context *ctx, const char *domain, const char *user, const char *password) +{ + ctx->dcom = talloc(ctx, struct dcom_client_context); + ctx->dcom->domain = domain; + ctx->dcom->user = user; + ctx->dcom->password = password; + + return ctx->dcom; +} + static NTSTATUS dcerpc_binding_from_STRINGBINDING(TALLOC_CTX *mem_ctx, struct dcerpc_binding *b, struct STRINGBINDING *bd) { char *host, *endpoint; diff --git a/source4/librpc/idl/orpc.idl b/source4/librpc/idl/orpc.idl index 34ef41377b..0e407a4d13 100644 --- a/source4/librpc/idl/orpc.idl +++ b/source4/librpc/idl/orpc.idl @@ -99,7 +99,7 @@ interface ObjectRpcBaseTypes /* DUALSTRINGARRAYS are the return type for arrays of network addresses, */ /* arrays of endpoints and arrays of both used in many ORPC interfaces */ - typedef [public] struct + typedef [public,flag(NDR_NOALIGN)] struct { uint16 wTowerId; /* Cannot be zero. */ nstring NetworkAddr; @@ -107,9 +107,10 @@ interface ObjectRpcBaseTypes const uint16 COM_C_AUTHZ_NONE = 0xffff; - typedef [public] struct + typedef [public,flag(NDR_NOALIGN)] struct { uint16 wAuthnSvc; /* Cannot be zero. */ + uint16 wAuthzSvc; nstring PrincName; } SECURITYBINDING; diff --git a/source4/librpc/idl/remact.idl b/source4/librpc/idl/remact.idl index ca1b228d4c..7a879e717f 100644 --- a/source4/librpc/idl/remact.idl +++ b/source4/librpc/idl/remact.idl @@ -21,7 +21,11 @@ interface IRemoteActivation RPC_C_IMP_LEVEL_IMPERSONATE = 3, RPC_C_IMP_LEVEL_DELEGATE = 4 } imp_levels; - + + typedef struct { + MInterfacePointer *ip; + } pMInterfacePointer; + const uint32 MODE_GET_CLASS_OBJECT = 0xffffffff; WERROR RemoteActivation ( [in] ORPCTHIS this, @@ -41,7 +45,7 @@ interface IRemoteActivation [out] uint32 AuthnHint, [out] COMVERSION ServerVersion, [out] WERROR hr, - [out,size_is(Interfaces)] MInterfacePointer *ifaces[], + [out,size_is(Interfaces)] pMInterfacePointer ifaces[], [out,size_is(Interfaces)] WERROR results[] ); } diff --git a/source4/torture/com/simple.c b/source4/torture/com/simple.c index 4eceb6a948..dfc3beff4e 100644 --- a/source4/torture/com/simple.c +++ b/source4/torture/com/simple.c @@ -39,6 +39,7 @@ static BOOL test_readwrite(TALLOC_CTX *mem_ctx, const char *host) int i; com_init(&ctx); + dcom_client_init(ctx, lp_parm_string(-1, "torture", "userdomain"), lp_parm_string(-1, "torture", "username"), lp_parm_string(-1, "torture", "password")); GUID_from_string(COM_ISTREAM_UUID, &IID[0]); GUID_from_string(COM_IUNKNOWN_UUID, &IID[1]); |