Changeset 228 for branches/samba-3.2.x/source/librpc
- Timestamp:
- May 26, 2009, 9:44:50 AM (16 years ago)
- Location:
- branches/samba-3.2.x/source/librpc
- Files:
-
- 13 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/samba-3.2.x/source/librpc/gen_ndr/cli_ntsvcs.c
r133 r228 1769 1769 uint32_t idx /* [in] */, 1770 1770 struct PNP_HwProfInfo *info /* [in,out] [ref] */, 1771 uint32_t unknown1/* [in] */,1772 uint32_t unknown2/* [in] */,1771 uint32_t size /* [in] */, 1772 uint32_t flags /* [in] */, 1773 1773 WERROR *werror) 1774 1774 { … … 1779 1779 r.in.idx = idx; 1780 1780 r.in.info = info; 1781 r.in. unknown1 = unknown1;1782 r.in. unknown2 = unknown2;1781 r.in.size = size; 1782 r.in.flags = flags; 1783 1783 1784 1784 if (DEBUGLEVEL >= 10) { -
branches/samba-3.2.x/source/librpc/gen_ndr/cli_ntsvcs.h
r133 r228 144 144 uint32_t idx /* [in] */, 145 145 struct PNP_HwProfInfo *info /* [in,out] [ref] */, 146 uint32_t unknown1/* [in] */,147 uint32_t unknown2/* [in] */,146 uint32_t size /* [in] */, 147 uint32_t flags /* [in] */, 148 148 WERROR *werror); 149 149 NTSTATUS rpccli_PNP_AddEmptyLogConf(struct rpc_pipe_client *cli, -
branches/samba-3.2.x/source/librpc/gen_ndr/ndr_ntsvcs.c
r204 r228 6 6 static enum ndr_err_code ndr_push_PNP_HwProfInfo(struct ndr_push *ndr, int ndr_flags, const struct PNP_HwProfInfo *r) 7 7 { 8 uint32_t cntr_ unknown2_0;8 uint32_t cntr_friendly_name_0; 9 9 if (ndr_flags & NDR_SCALARS) { 10 10 NDR_CHECK(ndr_push_align(ndr, 4)); 11 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r-> unknown1));12 for (cntr_ unknown2_0 = 0; cntr_unknown2_0 < 160; cntr_unknown2_0++) {13 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r-> unknown2[cntr_unknown2_0]));14 } 15 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r-> unknown3));11 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->profile_handle)); 12 for (cntr_friendly_name_0 = 0; cntr_friendly_name_0 < 80; cntr_friendly_name_0++) { 13 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->friendly_name[cntr_friendly_name_0])); 14 } 15 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->flags)); 16 16 } 17 17 if (ndr_flags & NDR_BUFFERS) { … … 22 22 static enum ndr_err_code ndr_pull_PNP_HwProfInfo(struct ndr_pull *ndr, int ndr_flags, struct PNP_HwProfInfo *r) 23 23 { 24 uint32_t cntr_ unknown2_0;24 uint32_t cntr_friendly_name_0; 25 25 if (ndr_flags & NDR_SCALARS) { 26 26 NDR_CHECK(ndr_pull_align(ndr, 4)); 27 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r-> unknown1));28 for (cntr_ unknown2_0 = 0; cntr_unknown2_0 < 160; cntr_unknown2_0++) {29 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r-> unknown2[cntr_unknown2_0]));30 } 31 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r-> unknown3));27 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->profile_handle)); 28 for (cntr_friendly_name_0 = 0; cntr_friendly_name_0 < 80; cntr_friendly_name_0++) { 29 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->friendly_name[cntr_friendly_name_0])); 30 } 31 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->flags)); 32 32 } 33 33 if (ndr_flags & NDR_BUFFERS) { … … 38 38 _PUBLIC_ void ndr_print_PNP_HwProfInfo(struct ndr_print *ndr, const char *name, const struct PNP_HwProfInfo *r) 39 39 { 40 uint32_t cntr_ unknown2_0;40 uint32_t cntr_friendly_name_0; 41 41 ndr_print_struct(ndr, name, "PNP_HwProfInfo"); 42 42 ndr->depth++; 43 ndr_print_uint32(ndr, " unknown1", r->unknown1);44 ndr->print(ndr, "%s: ARRAY(%d)", " unknown2", (int)160);45 ndr->depth++; 46 for (cntr_ unknown2_0=0;cntr_unknown2_0<160;cntr_unknown2_0++) {43 ndr_print_uint32(ndr, "profile_handle", r->profile_handle); 44 ndr->print(ndr, "%s: ARRAY(%d)", "friendly_name", (int)80); 45 ndr->depth++; 46 for (cntr_friendly_name_0=0;cntr_friendly_name_0<80;cntr_friendly_name_0++) { 47 47 char *idx_0=NULL; 48 if (asprintf(&idx_0, "[%d]", cntr_ unknown2_0) != -1) {49 ndr_print_uint16(ndr, " unknown2", r->unknown2[cntr_unknown2_0]);48 if (asprintf(&idx_0, "[%d]", cntr_friendly_name_0) != -1) { 49 ndr_print_uint16(ndr, "friendly_name", r->friendly_name[cntr_friendly_name_0]); 50 50 free(idx_0); 51 51 } 52 52 } 53 53 ndr->depth--; 54 ndr_print_uint32(ndr, " unknown3", r->unknown3);54 ndr_print_uint32(ndr, "flags", r->flags); 55 55 ndr->depth--; 56 56 } … … 2039 2039 } 2040 2040 NDR_CHECK(ndr_push_PNP_HwProfInfo(ndr, NDR_SCALARS, r->in.info)); 2041 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in. unknown1));2042 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in. unknown2));2041 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.size)); 2042 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.flags)); 2043 2043 } 2044 2044 if (flags & NDR_OUT) { … … 2066 2066 NDR_CHECK(ndr_pull_PNP_HwProfInfo(ndr, NDR_SCALARS, r->in.info)); 2067 2067 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC); 2068 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in. unknown1));2069 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in. unknown2));2068 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.size)); 2069 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.flags)); 2070 2070 NDR_PULL_ALLOC(ndr, r->out.info); 2071 2071 *r->out.info = *r->in.info; … … 2099 2099 ndr_print_PNP_HwProfInfo(ndr, "info", r->in.info); 2100 2100 ndr->depth--; 2101 ndr_print_uint32(ndr, " unknown1", r->in.unknown1);2102 ndr_print_uint32(ndr, " unknown2", r->in.unknown2);2101 ndr_print_uint32(ndr, "size", r->in.size); 2102 ndr_print_uint32(ndr, "flags", r->in.flags); 2103 2103 ndr->depth--; 2104 2104 } -
branches/samba-3.2.x/source/librpc/gen_ndr/ndr_samr.c
r204 r228 2962 2962 NDR_CHECK(ndr_push_align(ndr, 1)); 2963 2963 NDR_CHECK(ndr_push_samr_CryptPassword(ndr, NDR_SCALARS, &r->password)); 2964 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->p w_len));2964 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->password_expired)); 2965 2965 } 2966 2966 if (ndr_flags & NDR_BUFFERS) { … … 2974 2974 NDR_CHECK(ndr_pull_align(ndr, 1)); 2975 2975 NDR_CHECK(ndr_pull_samr_CryptPassword(ndr, NDR_SCALARS, &r->password)); 2976 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->p w_len));2976 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->password_expired)); 2977 2977 } 2978 2978 if (ndr_flags & NDR_BUFFERS) { … … 2986 2986 ndr->depth++; 2987 2987 ndr_print_samr_CryptPassword(ndr, "password", &r->password); 2988 ndr_print_uint8(ndr, "p w_len", r->pw_len);2988 ndr_print_uint8(ndr, "password_expired", r->password_expired); 2989 2989 ndr->depth--; 2990 2990 } … … 3075 3075 NDR_CHECK(ndr_push_align(ndr, 1)); 3076 3076 NDR_CHECK(ndr_push_samr_CryptPasswordEx(ndr, NDR_SCALARS, &r->password)); 3077 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->p w_len));3077 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->password_expired)); 3078 3078 } 3079 3079 if (ndr_flags & NDR_BUFFERS) { … … 3087 3087 NDR_CHECK(ndr_pull_align(ndr, 1)); 3088 3088 NDR_CHECK(ndr_pull_samr_CryptPasswordEx(ndr, NDR_SCALARS, &r->password)); 3089 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->p w_len));3089 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->password_expired)); 3090 3090 } 3091 3091 if (ndr_flags & NDR_BUFFERS) { … … 3099 3099 ndr->depth++; 3100 3100 ndr_print_samr_CryptPasswordEx(ndr, "password", &r->password); 3101 ndr_print_uint8(ndr, "p w_len", r->pw_len);3101 ndr_print_uint8(ndr, "password_expired", r->password_expired); 3102 3102 ndr->depth--; 3103 3103 } -
branches/samba-3.2.x/source/librpc/gen_ndr/ndr_security.c
r204 r228 5 5 6 6 #include "librpc/gen_ndr/ndr_misc.h" 7 staticenum ndr_err_code ndr_push_security_ace_flags(struct ndr_push *ndr, int ndr_flags, uint8_t r)7 _PUBLIC_ enum ndr_err_code ndr_push_security_ace_flags(struct ndr_push *ndr, int ndr_flags, uint8_t r) 8 8 { 9 9 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r)); … … 11 11 } 12 12 13 staticenum ndr_err_code ndr_pull_security_ace_flags(struct ndr_pull *ndr, int ndr_flags, uint8_t *r)13 _PUBLIC_ enum ndr_err_code ndr_pull_security_ace_flags(struct ndr_pull *ndr, int ndr_flags, uint8_t *r) 14 14 { 15 15 uint8_t v; … … 34 34 } 35 35 36 staticenum ndr_err_code ndr_push_security_ace_type(struct ndr_push *ndr, int ndr_flags, enum security_ace_type r)36 _PUBLIC_ enum ndr_err_code ndr_push_security_ace_type(struct ndr_push *ndr, int ndr_flags, enum security_ace_type r) 37 37 { 38 38 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r)); … … 40 40 } 41 41 42 staticenum ndr_err_code ndr_pull_security_ace_type(struct ndr_pull *ndr, int ndr_flags, enum security_ace_type *r)42 _PUBLIC_ enum ndr_err_code ndr_pull_security_ace_type(struct ndr_pull *ndr, int ndr_flags, enum security_ace_type *r) 43 43 { 44 44 uint8_t v; … … 279 279 } 280 280 281 staticenum ndr_err_code ndr_push_security_ace_object_ctr(struct ndr_push *ndr, int ndr_flags, const union security_ace_object_ctr *r)281 _PUBLIC_ enum ndr_err_code ndr_push_security_ace_object_ctr(struct ndr_push *ndr, int ndr_flags, const union security_ace_object_ctr *r) 282 282 { 283 283 if (ndr_flags & NDR_SCALARS) { … … 332 332 } 333 333 334 staticenum ndr_err_code ndr_pull_security_ace_object_ctr(struct ndr_pull *ndr, int ndr_flags, union security_ace_object_ctr *r)334 _PUBLIC_ enum ndr_err_code ndr_pull_security_ace_object_ctr(struct ndr_pull *ndr, int ndr_flags, union security_ace_object_ctr *r) 335 335 { 336 336 int level; … … 428 428 NDR_CHECK(ndr_push_security_ace_object_ctr(ndr, NDR_BUFFERS, &r->object)); 429 429 NDR_CHECK(ndr_push_dom_sid(ndr, NDR_BUFFERS, &r->trustee)); 430 }431 return NDR_ERR_SUCCESS;432 }433 434 _PUBLIC_ enum ndr_err_code ndr_pull_security_ace(struct ndr_pull *ndr, int ndr_flags, struct security_ace *r)435 {436 if (ndr_flags & NDR_SCALARS) {437 NDR_CHECK(ndr_pull_align(ndr, 4));438 NDR_CHECK(ndr_pull_security_ace_type(ndr, NDR_SCALARS, &r->type));439 NDR_CHECK(ndr_pull_security_ace_flags(ndr, NDR_SCALARS, &r->flags));440 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->size));441 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->access_mask));442 NDR_CHECK(ndr_pull_set_switch_value(ndr, &r->object, r->type));443 NDR_CHECK(ndr_pull_security_ace_object_ctr(ndr, NDR_SCALARS, &r->object));444 NDR_CHECK(ndr_pull_dom_sid(ndr, NDR_SCALARS, &r->trustee));445 }446 if (ndr_flags & NDR_BUFFERS) {447 NDR_CHECK(ndr_pull_security_ace_object_ctr(ndr, NDR_BUFFERS, &r->object));448 NDR_CHECK(ndr_pull_dom_sid(ndr, NDR_BUFFERS, &r->trustee));449 430 } 450 431 return NDR_ERR_SUCCESS; -
branches/samba-3.2.x/source/librpc/gen_ndr/ndr_security.h
r133 r228 8 8 9 9 #define NDR_SECURITY_CALL_COUNT (0) 10 enum ndr_err_code ndr_push_security_ace_flags(struct ndr_push *ndr, int ndr_flags, uint8_t r); 11 enum ndr_err_code ndr_pull_security_ace_flags(struct ndr_pull *ndr, int ndr_flags, uint8_t *r); 10 12 void ndr_print_security_ace_flags(struct ndr_print *ndr, const char *name, uint8_t r); 13 enum ndr_err_code ndr_push_security_ace_type(struct ndr_push *ndr, int ndr_flags, enum security_ace_type r); 14 enum ndr_err_code ndr_pull_security_ace_type(struct ndr_pull *ndr, int ndr_flags, enum security_ace_type *r); 11 15 void ndr_print_security_ace_type(struct ndr_print *ndr, const char *name, enum security_ace_type r); 12 16 void ndr_print_security_ace_object_flags(struct ndr_print *ndr, const char *name, uint32_t r); … … 14 18 void ndr_print_security_ace_object_inherited_type(struct ndr_print *ndr, const char *name, const union security_ace_object_inherited_type *r); 15 19 void ndr_print_security_ace_object(struct ndr_print *ndr, const char *name, const struct security_ace_object *r); 20 enum ndr_err_code ndr_push_security_ace_object_ctr(struct ndr_push *ndr, int ndr_flags, const union security_ace_object_ctr *r); 21 enum ndr_err_code ndr_pull_security_ace_object_ctr(struct ndr_pull *ndr, int ndr_flags, union security_ace_object_ctr *r); 16 22 void ndr_print_security_ace_object_ctr(struct ndr_print *ndr, const char *name, const union security_ace_object_ctr *r); 17 23 enum ndr_err_code ndr_push_security_ace(struct ndr_push *ndr, int ndr_flags, const struct security_ace *r); -
branches/samba-3.2.x/source/librpc/gen_ndr/ntsvcs.h
r133 r228 7 7 8 8 struct PNP_HwProfInfo { 9 uint32_t unknown1;10 uint16_t unknown2[160];11 uint32_t unknown3;9 uint32_t profile_handle; 10 uint16_t friendly_name[80]; 11 uint32_t flags; 12 12 }; 13 13 … … 370 370 struct { 371 371 uint32_t idx; 372 uint32_t unknown1;373 uint32_t unknown2;372 uint32_t size; 373 uint32_t flags; 374 374 struct PNP_HwProfInfo *info;/* [ref] */ 375 375 } in; -
branches/samba-3.2.x/source/librpc/gen_ndr/samr.h
r136 r228 500 500 struct samr_UserInfo24 { 501 501 struct samr_CryptPassword password; 502 uint8_t p w_len;502 uint8_t password_expired; 503 503 }; 504 504 … … 514 514 struct samr_UserInfo26 { 515 515 struct samr_CryptPasswordEx password; 516 uint8_t p w_len;516 uint8_t password_expired; 517 517 }; 518 518 -
branches/samba-3.2.x/source/librpc/gen_ndr/security.h
r133 r228 233 233 union security_ace_object_ctr { 234 234 struct security_ace_object object;/* [case(SEC_ACE_TYPE_ACCESS_ALLOWED_OBJECT)] */ 235 }/* [ nodiscriminant] */;235 }/* [public,nodiscriminant] */; 236 236 237 237 struct security_ace { … … 242 242 union security_ace_object_ctr object;/* [switch_is(type)] */ 243 243 struct dom_sid trustee; 244 }/* [gensize,public,no size] */;244 }/* [gensize,public,nopull,nosize] */; 245 245 246 246 enum security_acl_revision -
branches/samba-3.2.x/source/librpc/idl/ntsvcs.idl
r133 r228 238 238 239 239 typedef struct { 240 uint32 unknown1;241 uint16 unknown2[160];242 uint32 unknown3;240 uint32 profile_handle; 241 uint16 friendly_name[80]; 242 uint32 flags; 243 243 } PNP_HwProfInfo; 244 244 … … 246 246 [in] uint32 idx, 247 247 [in,out,ref] PNP_HwProfInfo *info, 248 [in] uint32 unknown1,249 [in] uint32 unknown2248 [in] uint32 size, 249 [in] uint32 flags 250 250 ); 251 251 -
branches/samba-3.2.x/source/librpc/idl/samr.idl
r136 r228 836 836 typedef struct { 837 837 samr_CryptPassword password; 838 uint8 p w_len;838 uint8 password_expired; 839 839 } samr_UserInfo24; 840 840 … … 850 850 typedef struct { 851 851 samr_CryptPasswordEx password; 852 uint8 p w_len;852 uint8 password_expired; 853 853 } samr_UserInfo26; 854 854 -
branches/samba-3.2.x/source/librpc/idl/security.idl
r133 r228 234 234 } sec_privilege; 235 235 236 typedef [ bitmap8bit] bitmap {236 typedef [public,bitmap8bit] bitmap { 237 237 SEC_ACE_FLAG_OBJECT_INHERIT = 0x01, 238 238 SEC_ACE_FLAG_CONTAINER_INHERIT = 0x02, … … 245 245 } security_ace_flags; 246 246 247 typedef [ enum8bit] enum {247 typedef [public,enum8bit] enum { 248 248 SEC_ACE_TYPE_ACCESS_ALLOWED = 0, 249 249 SEC_ACE_TYPE_ACCESS_DENIED = 1, … … 282 282 } security_ace_object; 283 283 284 typedef [ nodiscriminant] union {284 typedef [public,nodiscriminant] union { 285 285 [case(SEC_ACE_TYPE_ACCESS_ALLOWED_OBJECT)] security_ace_object object; 286 286 [case(SEC_ACE_TYPE_ACCESS_DENIED_OBJECT)] security_ace_object object; … … 290 290 } security_ace_object_ctr; 291 291 292 typedef [public, gensize,nosize] struct {292 typedef [public,nopull,gensize,nosize] struct { 293 293 security_ace_type type; /* SEC_ACE_TYPE_* */ 294 294 security_ace_flags flags; /* SEC_ACE_FLAG_* */ -
branches/samba-3.2.x/source/librpc/ndr/ndr_sec_helper.c
r133 r228 22 22 23 23 #include "includes.h" 24 #include "librpc/gen_ndr/security.h" 24 25 25 26 /* … … 50 51 { 51 52 return ndr_size_dom_sid28(sid, flags); 53 } 54 55 enum ndr_err_code ndr_pull_security_ace(struct ndr_pull *ndr, int ndr_flags, struct security_ace *r) 56 { 57 if (ndr_flags & NDR_SCALARS) { 58 uint32_t start_ofs = ndr->offset; 59 uint32_t size = 0; 60 uint32_t pad = 0; 61 NDR_CHECK(ndr_pull_align(ndr, 4)); 62 NDR_CHECK(ndr_pull_security_ace_type(ndr, NDR_SCALARS, &r->type)); 63 NDR_CHECK(ndr_pull_security_ace_flags(ndr, NDR_SCALARS, &r->flags)); 64 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->size)); 65 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->access_mask)); 66 NDR_CHECK(ndr_pull_set_switch_value(ndr, &r->object, r->type)); 67 NDR_CHECK(ndr_pull_security_ace_object_ctr(ndr, NDR_SCALARS, &r->object)); 68 NDR_CHECK(ndr_pull_dom_sid(ndr, NDR_SCALARS, &r->trustee)); 69 size = ndr->offset - start_ofs; 70 if (r->size < size) { 71 return ndr_pull_error(ndr, NDR_ERR_BUFSIZE, 72 "ndr_pull_security_ace: r->size %u < size %u", 73 (unsigned)r->size, size); 74 } 75 pad = r->size - size; 76 NDR_PULL_NEED_BYTES(ndr, pad); 77 ndr->offset += pad; 78 } 79 if (ndr_flags & NDR_BUFFERS) { 80 NDR_CHECK(ndr_pull_security_ace_object_ctr(ndr, NDR_BUFFERS, &r->object)); 81 } 82 return NDR_ERR_SUCCESS; 52 83 } 53 84
Note:
See TracChangeset
for help on using the changeset viewer.