summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--librpc/idl/wmi.idl27
-rw-r--r--librpc/ndr/ndr_wmi.c15
-rw-r--r--librpc/ndr/ndr_wmi.h3
-rw-r--r--pidl/lib/Parse/Pidl/Samba4/NDR/Parser.pm4
4 files changed, 20 insertions, 29 deletions
diff --git a/librpc/idl/wmi.idl b/librpc/idl/wmi.idl
index 3ae5a4595b..4d428a8c91 100644
--- a/librpc/idl/wmi.idl
+++ b/librpc/idl/wmi.idl
@@ -8,7 +8,6 @@ import "dcom.idl";
import "misc.idl";
[
- helper("librpc/ndr/ndr_wmi.h"),
uuid("8BC3F05E-D86B-11d0-A075-00C04FB68820")
] coclass WbemLevel1Login
{
@@ -17,8 +16,8 @@ import "misc.idl";
};
[
- local,
- object,
+ local,
+ object,
uuid("dc12a681-737f-11cf-884d-00aa004b2e24")
]
interface IWbemClassObject : IUnknown
@@ -203,7 +202,7 @@ coclass WbemClassObject
WBEM_E_PROVIDER_DISABLED = 0x8004108a
} WBEMSTATUS;
- typedef [public,noprint] enum
+ typedef [public] bitmap
{
WBEM_FLAG_RETURN_WBEM_COMPLETE = 0,
WBEM_FLAG_BIDIRECTIONAL = 0,
@@ -225,7 +224,7 @@ coclass WbemClassObject
WBEM_MASK_RESERVED_FLAGS = 0x001F000
} WBEM_GENERIC_FLAG_TYPE;
- typedef [public,noprint,v1_enum] enum tag_WBEM_TIMEOUT_TYPE
+ typedef [public,v1_enum] enum tag_WBEM_TIMEOUT_TYPE
{
WBEM_NO_WAIT = 0,
WBEM_INFINITE = 0xFFFFFFFF
@@ -300,18 +299,18 @@ coclass WbemClassObject
WCF_CLASS = 4,
WCF_CLASS_PART_INTERNAL = 8
/* WCF_CLASS_PART_SHARED = 0x104 */
- } WCO_FLAGS;
+ } WCO_FLAGS;
- typedef [public,nopull,nopush] struct
- {
+ typedef struct
+ {
uint32 count;
[ref,charset(UTF16)] uint16 *item[count];
- } CIMSTRINGS;
+ } CIMSTRINGS;
- typedef [public,bitmap8bit] bitmap {
- DEFAULT_FLAG_EMPTY = 1,
- DEFAULT_FLAG_INHERITED = 2
- } DEFAULT_FLAGS;
+ typedef [public,bitmap8bit] bitmap {
+ DEFAULT_FLAG_EMPTY = 1,
+ DEFAULT_FLAG_INHERITED = 2
+ } DEFAULT_FLAGS;
WERROR OpenNamespace(
[in] BSTR strNamespace,
@@ -653,7 +652,7 @@ coclass WbemClassObject
[in,ref] GUID *gWCO,
[out,ref] uint32 *puReturned,
[out,ref] uint32 *pSize,
- [out,ref,noprint,size_is(,*pSize)] uint8 **pData
+ [out,ref,size_is(,*pSize)] uint8 **pData
);
}
diff --git a/librpc/ndr/ndr_wmi.c b/librpc/ndr/ndr_wmi.c
index 2c122decf4..87f3e9690a 100644
--- a/librpc/ndr/ndr_wmi.c
+++ b/librpc/ndr/ndr_wmi.c
@@ -23,7 +23,6 @@
#include "includes.h"
#include "librpc/gen_ndr/ndr_dcom.h"
#include "librpc/gen_ndr/ndr_wmi.h"
-#include "librpc/ndr/ndr_wmi.h"
// Just for debugging
int NDR_CHECK_depth = 0;
@@ -35,18 +34,18 @@ enum ndr_err_code ndr_push_BSTR(struct ndr_push *ndr, int ndr_flags, const struc
uint32_t flags;
enum ndr_err_code status;
len = strlen(r->data);
- if (ndr_flags & NDR_SCALARS) {
- NDR_CHECK(ndr_push_align(ndr, 4));
- NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0x72657355));
- NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, len));
- NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 2*len));
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0x72657355));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, len));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 2*len));
flags = ndr->flags;
ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NOTERM | LIBNDR_FLAG_STR_SIZE4);
status = ndr_push_string(ndr, NDR_SCALARS, r->data);
ndr->flags = flags;
return status;
- }
- return NDR_ERR_SUCCESS;
+ }
+ return NDR_ERR_SUCCESS;
}
enum ndr_err_code ndr_pull_BSTR(struct ndr_pull *ndr, int ndr_flags, struct BSTR *r)
diff --git a/librpc/ndr/ndr_wmi.h b/librpc/ndr/ndr_wmi.h
deleted file mode 100644
index 539b9e882b..0000000000
--- a/librpc/ndr/ndr_wmi.h
+++ /dev/null
@@ -1,3 +0,0 @@
-typedef const char *CIMSTRING;
-enum ndr_err_code ndr_pull_CIMSTRING(struct ndr_pull *ndr, int ndr_flags, CIMSTRING *r);
-enum ndr_err_code ndr_push_CIMSTRING(struct ndr_push *ndr, int ndr_flags, const CIMSTRING *r);
diff --git a/pidl/lib/Parse/Pidl/Samba4/NDR/Parser.pm b/pidl/lib/Parse/Pidl/Samba4/NDR/Parser.pm
index 09518f7cee..732aa981dc 100644
--- a/pidl/lib/Parse/Pidl/Samba4/NDR/Parser.pm
+++ b/pidl/lib/Parse/Pidl/Samba4/NDR/Parser.pm
@@ -2623,10 +2623,6 @@ sub ParseInterface($$$)
($needed->{"ndr_push_$d->{NAME}"}) && $self->ParseFunctionPush($d);
($needed->{"ndr_pull_$d->{NAME}"}) && $self->ParseFunctionPull($d);
($needed->{"ndr_print_$d->{NAME}"}) && $self->ParseFunctionPrint($d);
-
- # Make sure we don't generate a function twice...
- $needed->{"ndr_push_$d->{NAME}"} = $needed->{"ndr_pull_$d->{NAME}"} =
- $needed->{"ndr_print_$d->{NAME}"} = 0;
}
$self->FunctionTable($interface);