Author: jelmer Date: 2004-11-02 19:52:51 +0000 (Tue, 02 Nov 2004) New Revision: 3490
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=3490 Log: All tests work against NT4 now Modified: branches/SAMBA_4_0/source/librpc/idl/dcom.idl branches/SAMBA_4_0/source/librpc/idl/oxidresolver.idl branches/SAMBA_4_0/source/torture/rpc/oxidresolve.c branches/SAMBA_4_0/source/utils/ndrdump.c Changeset: Modified: branches/SAMBA_4_0/source/librpc/idl/dcom.idl =================================================================== --- branches/SAMBA_4_0/source/librpc/idl/dcom.idl 2004-11-02 17:38:11 UTC (rev 3489) +++ branches/SAMBA_4_0/source/librpc/idl/dcom.idl 2004-11-02 19:52:51 UTC (rev 3490) @@ -262,7 +262,8 @@ typedef [public] struct { uint32 size; - [subcontext(4)] OBJREF obj; + uint32 sizex; + [subcontext(4),align(1)] OBJREF obj; } MInterfacePointer; } @@ -504,3 +505,19 @@ [helpstring("method MakeCoffee")] HRESULT MakeCoffee(BSTR *flavor); } } + +[ + object, + uuid("0000000C-0000-0000-C000-000000000046"), + helpstring("Stream") +] +interface IStream : IUnknown +{ + WERROR Read([in] uint32 num_requested, + [out,size_is(*num_read)] uint8 *data, + [out] uint32 *num_read); + + WERROR Write([in,size_is(num_requested)] uint8 *data, + [in] uint32 num_requested, + [out] uint32 *num_written); +} Modified: branches/SAMBA_4_0/source/librpc/idl/oxidresolver.idl =================================================================== --- branches/SAMBA_4_0/source/librpc/idl/oxidresolver.idl 2004-11-02 17:38:11 UTC (rev 3489) +++ branches/SAMBA_4_0/source/librpc/idl/oxidresolver.idl 2004-11-02 19:52:51 UTC (rev 3490) @@ -29,17 +29,13 @@ /* Method to get the protocol sequences, string bindings */ /* and machine id for an object server given its OXID. */ - typedef [public] struct { - DUALSTRINGARRAY *ppdsaOxidBindings; - } ppdsaOxidBindingsArray; - [idempotent] WERROR ResolveOxid ( - [in] OXID *pOxid, + [in] OXID pOxid, [in] uint16 cRequestedProtseqs, [in, size_is(cRequestedProtseqs)] uint16 arRequestedProtseqs[], - [out, ref] ppdsaOxidBindingsArray *ppdsaOxidBindings, - [out, ref] IPID *pipidRemUnknown, - [out, ref] uint32 *pAuthnHint + [out] DUALSTRINGARRAY *ppdsaOxidBindings, + [out] IPID pipidRemUnknown, + [out] uint32 pAuthnHint ); /* Simple ping is used to ping a Set. Client machines use this */ @@ -55,15 +51,16 @@ /* whole set can subsequently be pinged using SimplePing, */ /* thus reducing network traffic. */ [idempotent] WERROR ComplexPing ( - [in, out, ref] SETID *SetId, /* In of 0 on first call for new set. */ - [in] uint16 SequenceNum, - [in] uint16 cAddToSet, - [in] uint16 cDelFromSet, + [in] SETID *SetId, /* In of 0 on first call for new set. */ + [out] SETID SetId, + [in] uint16 SequenceNum, + [in] uint16 cAddToSet, + [in] uint16 cDelFromSet, /* add these OIDs to the set */ - [in, size_is(cAddToSet)] OID AddToSet[], + [in, size_is(cAddToSet)] OID AddToSet[], /*remove these OIDs from the set */ - [in, size_is(cDelFromSet)] OID DelFromSet[], - [out] uint16 pPingBackoffFactor/* 2^factor = multipler */ + [in, size_is(cDelFromSet)] OID DelFromSet[], + [out] uint16 PingBackoffFactor/* 2^factor = multipler */ ); /* In some cases the client maybe unsure that a particular */ @@ -79,16 +76,15 @@ /* version 5.2 and above. Looks like that means * Windows 2003/XP and above */ [idempotent] WERROR ResolveOxid2 ( - [in] OXID *pOxid, + [in] OXID pOxid, [in] uint16 cRequestedProtseqs, - [in, size_is(cRequestedProtseqs)] - uint16 arRequestedProtseqs[], - [out, ref] ppdsaOxidBindingsArray *ppdsaOxidBindings, - [out, ref] IPID *pipidRemUnknown, - [out, ref] uint32 *pAuthnHint, - [out, ref] COMVERSION *pComVersion + [in, size_is(cRequestedProtseqs)] uint16 arRequestedProtseqs[], + [out] DUALSTRINGARRAY *pdsaOxidBindings, + [out] IPID ipidRemUnknown, + [out] uint32 AuthnHint, + [out] COMVERSION ComVersion ); - typedef struct { + typedef struct { COMVERSION version; uint32 unknown1; } COMINFO; Modified: branches/SAMBA_4_0/source/torture/rpc/oxidresolve.c =================================================================== --- branches/SAMBA_4_0/source/torture/rpc/oxidresolve.c 2004-11-02 17:38:11 UTC (rev 3489) +++ branches/SAMBA_4_0/source/torture/rpc/oxidresolve.c 2004-11-02 19:52:51 UTC (rev 3490) @@ -150,7 +150,7 @@ NTSTATUS status; uint16 protseq[2] = { EPM_PROTOCOL_TCP, EPM_PROTOCOL_SMB }; - r.in.pOxid = &oxid; + r.in.pOxid = oxid; r.in.cRequestedProtseqs = 2; r.in.arRequestedProtseqs = protseq; @@ -189,7 +189,7 @@ return 0; } - printf("Remote server versions: %d, %d\n", r.out.pComVersion->MajorVersion, r.out.pComVersion->MinorVersion); + printf("Remote server versions: %d, %d\n", r.out.ComVersion.MajorVersion, r.out.ComVersion.MinorVersion); return 1; } Modified: branches/SAMBA_4_0/source/utils/ndrdump.c =================================================================== --- branches/SAMBA_4_0/source/utils/ndrdump.c 2004-11-02 17:38:11 UTC (rev 3489) +++ branches/SAMBA_4_0/source/utils/ndrdump.c 2004-11-02 19:52:51 UTC (rev 3490) @@ -216,7 +216,7 @@ pr = talloc_p(NULL, struct ndr_print); pr->print = ndr_print_debug_helper; pr->depth = 1; - f->ndr_print(pr, function, flags | NDR_IN, st); + f->ndr_print(pr, function, flags, st); if (!NT_STATUS_IS_OK(status) || ndr->offset != ndr->data_size) {