diff options
Diffstat (limited to 'source4')
-rw-r--r-- | source4/build/pidl/Parse/Pidl/Typelist.pm | 8 | ||||
-rw-r--r-- | source4/librpc/idl/orpc.idl | 14 | ||||
-rw-r--r-- | source4/librpc/ndr/ndr_orpc.h | 2 |
3 files changed, 23 insertions, 1 deletions
diff --git a/source4/build/pidl/Parse/Pidl/Typelist.pm b/source4/build/pidl/Parse/Pidl/Typelist.pm index 60b6e7905b..ab5df0fc52 100644 --- a/source4/build/pidl/Parse/Pidl/Typelist.pm +++ b/source4/build/pidl/Parse/Pidl/Typelist.pm @@ -137,6 +137,11 @@ my $scalars = { IS_REFERENCE => 0, NDR_ALIGN => 4 }, + "COMRESULT" => { + "C_TYPE" => "COMRESULT", + IS_REFERENCE => 0, + NDR_ALIGN => 4 + }, # special types "nbt_string" => { @@ -244,7 +249,8 @@ my $aliases = { "char" => "uint8", "long" => "int32", "short" => "int16", - "HYPER_T" => "hyper" + "HYPER_T" => "hyper", + "HRESULT" => "COMRESULT", }; sub RegisterAliases() diff --git a/source4/librpc/idl/orpc.idl b/source4/librpc/idl/orpc.idl index 1934a3cbed..377f71b34f 100644 --- a/source4/librpc/idl/orpc.idl +++ b/source4/librpc/idl/orpc.idl @@ -200,4 +200,18 @@ interface ObjectRpcBaseTypes uint32 size; [subcontext(4)] OBJREF obj; } MInterfacePointer; + + typedef [v1_enum,public] enum + { + COM_OK = 0x00000000, + COM_OUTOFMEMORY = 0x80000002, + COM_INVALIDARG = 0x80000003, + COM_NOINTERFACE = 0x80000004, + COM_ACCESSDENIED = 0x80000005, + COM_INVALID_OXID = 0x80070776, + COM_INVALID_OID = 0x80070777, + COM_INVALID_SET = 0x80070778, + COM_UNEXPECTED = 0x8000FFFF, + COM_CLSNOTFOUND = 0x80040154 + } COMRESULT; } diff --git a/source4/librpc/ndr/ndr_orpc.h b/source4/librpc/ndr/ndr_orpc.h index d1817969a4..ab91432aec 100644 --- a/source4/librpc/ndr/ndr_orpc.h +++ b/source4/librpc/ndr/ndr_orpc.h @@ -23,6 +23,8 @@ #ifndef __NDR_ORPC_H__ #define __NDR_ORPC_H__ +typedef enum COMRESULT COMRESULT; + struct STRINGARRAY { struct STRINGBINDING **stringbindings; |