From 0d10efe1fdec2a621bd6580e3e120287c1682d07 Mon Sep 17 00:00:00 2001 From: Volker Lendecke Date: Mon, 14 Dec 2009 16:48:38 +0100 Subject: s3: Allow up to 20480 entries in LookupSids, as mandated by the official IDL Seen in the wild by putting >1000 users into BUILTIN\Users --- librpc/gen_ndr/lsa.h | 4 ++-- librpc/gen_ndr/ndr_lsa.c | 4 ++-- librpc/idl/lsa.idl | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) (limited to 'librpc') diff --git a/librpc/gen_ndr/lsa.h b/librpc/gen_ndr/lsa.h index a0af571283..4a4a95d77a 100644 --- a/librpc/gen_ndr/lsa.h +++ b/librpc/gen_ndr/lsa.h @@ -312,7 +312,7 @@ struct lsa_SidPtr { }; struct lsa_SidArray { - uint32_t num_sids;/* [range(0,1000)] */ + uint32_t num_sids;/* [range(0,20480)] */ struct lsa_SidPtr *sids;/* [unique,size_is(num_sids)] */ }/* [public] */; @@ -397,7 +397,7 @@ struct lsa_TranslatedName { }; struct lsa_TransNameArray { - uint32_t count;/* [range(0,1000)] */ + uint32_t count;/* [range(0,20480)] */ struct lsa_TranslatedName *names;/* [unique,size_is(count)] */ }; diff --git a/librpc/gen_ndr/ndr_lsa.c b/librpc/gen_ndr/ndr_lsa.c index ad7b2be32e..b198350b2d 100644 --- a/librpc/gen_ndr/ndr_lsa.c +++ b/librpc/gen_ndr/ndr_lsa.c @@ -1945,7 +1945,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_lsa_SidArray(struct ndr_pull *ndr, int ndr_f if (ndr_flags & NDR_SCALARS) { NDR_CHECK(ndr_pull_align(ndr, 5)); NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_sids)); - if (r->num_sids > 1000) { + if (r->num_sids > 20480) { return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range"); } NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sids)); @@ -2444,7 +2444,7 @@ static enum ndr_err_code ndr_pull_lsa_TransNameArray(struct ndr_pull *ndr, int n if (ndr_flags & NDR_SCALARS) { NDR_CHECK(ndr_pull_align(ndr, 5)); NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count)); - if (r->count > 1000) { + if (r->count > 20480) { return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range"); } NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_names)); diff --git a/librpc/idl/lsa.idl b/librpc/idl/lsa.idl index a893786afa..baa5c93c2c 100644 --- a/librpc/idl/lsa.idl +++ b/librpc/idl/lsa.idl @@ -451,7 +451,7 @@ import "misc.idl", "security.idl"; } lsa_SidPtr; typedef [public] struct { - [range(0,1000)] uint32 num_sids; + [range(0,20480)] uint32 num_sids; [size_is(num_sids)] lsa_SidPtr *sids; } lsa_SidArray; @@ -564,7 +564,7 @@ import "misc.idl", "security.idl"; } lsa_TranslatedName; typedef struct { - [range(0,1000)] uint32 count; + [range(0,20480)] uint32 count; [size_is(count)] lsa_TranslatedName *names; } lsa_TransNameArray; -- cgit