[SCM] Samba Shared Repository - branch v4-0-test updated -
release-4-0-0alpha2-843-g96f1ad6
Stefan Metzmacher
metze at samba.org
Fri Feb 15 07:54:59 GMT 2008
The branch, v4-0-test has been updated
via 96f1ad6d27fdfecd3a07a05052c8085d66472106 (commit)
via b5c0a6c114b5c832f742bd84179e5e9a5aed3698 (commit)
via 47447f60bc8e5dd1021752e9b011f22762e45eed (commit)
via ae6976eb4a8ddafc40ce91f68c9bca861502093b (commit)
via 70c7faace76a84d2fe15accf4f8a1ca0ad905bd4 (commit)
via 30657ae0ebdb85ae995a3dfe3ce123851fd92e0f (commit)
from 096eafd34778dde222bce4b0a5c0fc38b7de0359 (commit)
http://gitweb.samba.org/?samba.git;a=shortlog;h=v4-0-test
- Log -----------------------------------------------------------------
commit 96f1ad6d27fdfecd3a07a05052c8085d66472106
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Feb 14 16:08:17 2008 +0100
epmapper.idl: don't use ascstr2 anymore
metze
commit b5c0a6c114b5c832f742bd84179e5e9a5aed3698
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Feb 14 16:07:49 2008 +0100
epmapper.idl: add link to official IDL
metze
commit 47447f60bc8e5dd1021752e9b011f22762e45eed
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Feb 14 15:01:23 2008 +0100
dcerpc.idl: use charset() instead of ascstr3
metze
commit ae6976eb4a8ddafc40ce91f68c9bca861502093b
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Feb 14 15:03:37 2008 +0100
ndr_sec_helper: create a completely zero sid, so that ndr_size_dom_sid28 can return 0
metze
commit 70c7faace76a84d2fe15accf4f8a1ca0ad905bd4
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Feb 14 15:02:11 2008 +0100
drsuapi.idl: use charset() instead of the exotic flags() and string
metze
commit 30657ae0ebdb85ae995a3dfe3ce123851fd92e0f
Author: Stefan Metzmacher <metze at samba.org>
Date: Wed Feb 13 17:31:17 2008 +0100
krb5pac.idl: use charset() instead of string type with flags
metze
-----------------------------------------------------------------------
Summary of changes:
source/librpc/idl/dcerpc.idl | 3 ++-
source/librpc/idl/drsuapi.idl | 9 ++++++---
source/librpc/idl/epmapper.idl | 12 +++++++++++-
source/librpc/idl/krb5pac.idl | 3 ++-
source/librpc/ndr/ndr_sec_helper.c | 3 +++
5 files changed, 24 insertions(+), 6 deletions(-)
Changeset truncated at 500 lines:
diff --git a/source/librpc/idl/dcerpc.idl b/source/librpc/idl/dcerpc.idl
index fcb0be4..b2c6754 100644
--- a/source/librpc/idl/dcerpc.idl
+++ b/source/librpc/idl/dcerpc.idl
@@ -64,7 +64,8 @@ interface dcerpc
uint16 max_xmit_frag;
uint16 max_recv_frag;
uint32 assoc_group_id;
- ascstr3 secondary_address;
+ [value(strlen(secondary_address)+1)] uint16 secondary_address_size;
+ [charset(DOS)] uint8 secondary_address[secondary_address_size];
[flag(NDR_ALIGN4)] DATA_BLOB _pad1;
uint8 num_results;
dcerpc_ack_ctx ctx_list[num_results];
diff --git a/source/librpc/idl/drsuapi.idl b/source/librpc/idl/drsuapi.idl
index f298b7e..fb24122 100644
--- a/source/librpc/idl/drsuapi.idl
+++ b/source/librpc/idl/drsuapi.idl
@@ -130,7 +130,8 @@ interface drsuapi
[value(ndr_size_dom_sid28(&sid, ndr->flags))] uint32 __ndr_size_sid;
GUID guid;
dom_sid28 sid;
- [flag(STR_SIZE4|STR_CHARLEN|STR_CONFORMANT)] string dn;
+ [value(strlen_m(dn))] uint32 __ndr_size_dn;
+ [charset(UTF16),size_is(__ndr_size_dn+1)] uint16 dn[];
} drsuapi_DsReplicaObjectIdentifier;
typedef [public] bitmap {
@@ -451,7 +452,8 @@ interface drsuapi
[value(ndr_size_dom_sid28(&sid,ndr->flags))] uint32 __ndr_size_sid;
GUID guid;
dom_sid28 sid;
- [flag(STR_SIZE4|STR_CHARLEN)] string dn;
+ [value(strlen_m(dn))] uint32 __ndr_size_dn;
+ [charset(UTF16)] uint16 dn[__ndr_size_dn+1];
} drsuapi_DsReplicaObjectIdentifier3;
typedef [public,gensize] struct {
@@ -459,7 +461,8 @@ interface drsuapi
[value(ndr_size_dom_sid28(&sid,ndr->flags))] uint32 __ndr_size_sid;
GUID guid;
dom_sid28 sid;
- [flag(STR_SIZE4|STR_CHARLEN)] string dn;
+ [value(strlen_m(dn))] uint32 __ndr_size_dn;
+ [charset(UTF16)] uint16 dn[__ndr_size_dn+1];
[value(binary.length + 4)] uint32 __ndr_size_binary;
[flag(NDR_REMAINING)] DATA_BLOB binary;
} drsuapi_DsReplicaObjectIdentifier3Binary;
diff --git a/source/librpc/idl/epmapper.idl b/source/librpc/idl/epmapper.idl
index baf9f23..60ff338 100644
--- a/source/librpc/idl/epmapper.idl
+++ b/source/librpc/idl/epmapper.idl
@@ -3,6 +3,7 @@
/*
endpoint mapper interface
Related links:
+ http://www.opengroup.org/onlinepubs/9629399/apdxo.htm : The official IDL for this pipe
http://www.opengroup.org/onlinepubs/9629399/apdxl.htm : Details on towers
http://www.opengroup.org/onlinepubs/9629399/chap6.htm#tagcjh_11_02_03_01: binding strings
@@ -222,7 +223,16 @@ interface epmapper
typedef struct {
GUID object;
epm_twr_t *tower;
- ascstr2 annotation;
+ /*
+ * In theory this should be:
+ * [charset(DOS),string] uint8 annotation[64]
+ * But midl treats this as:
+ * [charset(DOS),string] uint8 annotation[]
+ * and pidl doesn't support this yet
+ */
+ [value(0)] uint32 __annotation_offset;
+ [value(strlen(annotation)+1)] uint32 __annotation_length;
+ [charset(DOS)] uint8 annotation[__annotation_length];
} epm_entry_t;
typedef struct {
diff --git a/source/librpc/idl/krb5pac.idl b/source/librpc/idl/krb5pac.idl
index fa6bf51..efd4aa8 100644
--- a/source/librpc/idl/krb5pac.idl
+++ b/source/librpc/idl/krb5pac.idl
@@ -16,7 +16,8 @@ interface krb5pac
{
typedef struct {
NTTIME logon_time;
- [flag(STR_SIZE2|STR_NOTERM|STR_BYTESIZE)] string account_name;
+ [value(2*strlen_m(account_name))] uint16 size;
+ [charset(UTF16)] uint8 account_name[size];
} PAC_LOGON_NAME;
typedef [public,flag(NDR_PAHEX)] struct {
diff --git a/source/librpc/ndr/ndr_sec_helper.c b/source/librpc/ndr/ndr_sec_helper.c
index 30eaf9c..5a0178b 100644
--- a/source/librpc/ndr/ndr_sec_helper.c
+++ b/source/librpc/ndr/ndr_sec_helper.c
@@ -187,6 +187,9 @@ enum ndr_err_code ndr_pull_dom_sid28(struct ndr_pull *ndr, int ndr_flags, struct
if (!NDR_ERR_CODE_IS_SUCCESS(status)) {
/* handle a w2k bug which send random data in the buffer */
ZERO_STRUCTP(sid);
+ } else if (sid->num_auths == 0 && sid->sub_auths) {
+ talloc_free(sid->sub_auths);
+ sid->sub_auths = NULL;
}
return NDR_ERR_SUCCESS;
--
Samba Shared Repository
More information about the samba-cvs
mailing list