Ignore:
Timestamp:
May 26, 2009, 9:44:50 AM (16 years ago)
Author:
Herwig Bauernfeind
Message:

Update 3.2 branch to 3.2.6

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  
    17691769                                  uint32_t idx /* [in]  */,
    17701770                                  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]  */,
    17731773                                  WERROR *werror)
    17741774{
     
    17791779        r.in.idx = idx;
    17801780        r.in.info = info;
    1781         r.in.unknown1 = unknown1;
    1782         r.in.unknown2 = unknown2;
     1781        r.in.size = size;
     1782        r.in.flags = flags;
    17831783
    17841784        if (DEBUGLEVEL >= 10) {
  • branches/samba-3.2.x/source/librpc/gen_ndr/cli_ntsvcs.h

    r133 r228  
    144144                                  uint32_t idx /* [in]  */,
    145145                                  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]  */,
    148148                                  WERROR *werror);
    149149NTSTATUS rpccli_PNP_AddEmptyLogConf(struct rpc_pipe_client *cli,
  • branches/samba-3.2.x/source/librpc/gen_ndr/ndr_ntsvcs.c

    r204 r228  
    66static enum ndr_err_code ndr_push_PNP_HwProfInfo(struct ndr_push *ndr, int ndr_flags, const struct PNP_HwProfInfo *r)
    77{
    8         uint32_t cntr_unknown2_0;
     8        uint32_t cntr_friendly_name_0;
    99        if (ndr_flags & NDR_SCALARS) {
    1010                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));
    1616        }
    1717        if (ndr_flags & NDR_BUFFERS) {
     
    2222static enum ndr_err_code ndr_pull_PNP_HwProfInfo(struct ndr_pull *ndr, int ndr_flags, struct PNP_HwProfInfo *r)
    2323{
    24         uint32_t cntr_unknown2_0;
     24        uint32_t cntr_friendly_name_0;
    2525        if (ndr_flags & NDR_SCALARS) {
    2626                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));
    3232        }
    3333        if (ndr_flags & NDR_BUFFERS) {
     
    3838_PUBLIC_ void ndr_print_PNP_HwProfInfo(struct ndr_print *ndr, const char *name, const struct PNP_HwProfInfo *r)
    3939{
    40         uint32_t cntr_unknown2_0;
     40        uint32_t cntr_friendly_name_0;
    4141        ndr_print_struct(ndr, name, "PNP_HwProfInfo");
    4242        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++) {
    4747                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]);
    5050                        free(idx_0);
    5151                }
    5252        }
    5353        ndr->depth--;
    54         ndr_print_uint32(ndr, "unknown3", r->unknown3);
     54        ndr_print_uint32(ndr, "flags", r->flags);
    5555        ndr->depth--;
    5656}
     
    20392039                }
    20402040                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));
    20432043        }
    20442044        if (flags & NDR_OUT) {
     
    20662066                NDR_CHECK(ndr_pull_PNP_HwProfInfo(ndr, NDR_SCALARS, r->in.info));
    20672067                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));
    20702070                NDR_PULL_ALLOC(ndr, r->out.info);
    20712071                *r->out.info = *r->in.info;
     
    20992099                ndr_print_PNP_HwProfInfo(ndr, "info", r->in.info);
    21002100                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);
    21032103                ndr->depth--;
    21042104        }
  • branches/samba-3.2.x/source/librpc/gen_ndr/ndr_samr.c

    r204 r228  
    29622962                NDR_CHECK(ndr_push_align(ndr, 1));
    29632963                NDR_CHECK(ndr_push_samr_CryptPassword(ndr, NDR_SCALARS, &r->password));
    2964                 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->pw_len));
     2964                NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->password_expired));
    29652965        }
    29662966        if (ndr_flags & NDR_BUFFERS) {
     
    29742974                NDR_CHECK(ndr_pull_align(ndr, 1));
    29752975                NDR_CHECK(ndr_pull_samr_CryptPassword(ndr, NDR_SCALARS, &r->password));
    2976                 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->pw_len));
     2976                NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->password_expired));
    29772977        }
    29782978        if (ndr_flags & NDR_BUFFERS) {
     
    29862986        ndr->depth++;
    29872987        ndr_print_samr_CryptPassword(ndr, "password", &r->password);
    2988         ndr_print_uint8(ndr, "pw_len", r->pw_len);
     2988        ndr_print_uint8(ndr, "password_expired", r->password_expired);
    29892989        ndr->depth--;
    29902990}
     
    30753075                NDR_CHECK(ndr_push_align(ndr, 1));
    30763076                NDR_CHECK(ndr_push_samr_CryptPasswordEx(ndr, NDR_SCALARS, &r->password));
    3077                 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->pw_len));
     3077                NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->password_expired));
    30783078        }
    30793079        if (ndr_flags & NDR_BUFFERS) {
     
    30873087                NDR_CHECK(ndr_pull_align(ndr, 1));
    30883088                NDR_CHECK(ndr_pull_samr_CryptPasswordEx(ndr, NDR_SCALARS, &r->password));
    3089                 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->pw_len));
     3089                NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->password_expired));
    30903090        }
    30913091        if (ndr_flags & NDR_BUFFERS) {
     
    30993099        ndr->depth++;
    31003100        ndr_print_samr_CryptPasswordEx(ndr, "password", &r->password);
    3101         ndr_print_uint8(ndr, "pw_len", r->pw_len);
     3101        ndr_print_uint8(ndr, "password_expired", r->password_expired);
    31023102        ndr->depth--;
    31033103}
  • branches/samba-3.2.x/source/librpc/gen_ndr/ndr_security.c

    r204 r228  
    55
    66#include "librpc/gen_ndr/ndr_misc.h"
    7 static enum 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)
    88{
    99        NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r));
     
    1111}
    1212
    13 static enum 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)
    1414{
    1515        uint8_t v;
     
    3434}
    3535
    36 static enum 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)
    3737{
    3838        NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r));
     
    4040}
    4141
    42 static enum 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)
    4343{
    4444        uint8_t v;
     
    279279}
    280280
    281 static enum 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)
    282282{
    283283        if (ndr_flags & NDR_SCALARS) {
     
    332332}
    333333
    334 static enum 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)
    335335{
    336336        int level;
     
    428428                NDR_CHECK(ndr_push_security_ace_object_ctr(ndr, NDR_BUFFERS, &r->object));
    429429                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));
    449430        }
    450431        return NDR_ERR_SUCCESS;
  • branches/samba-3.2.x/source/librpc/gen_ndr/ndr_security.h

    r133 r228  
    88
    99#define NDR_SECURITY_CALL_COUNT (0)
     10enum ndr_err_code ndr_push_security_ace_flags(struct ndr_push *ndr, int ndr_flags, uint8_t r);
     11enum ndr_err_code ndr_pull_security_ace_flags(struct ndr_pull *ndr, int ndr_flags, uint8_t *r);
    1012void ndr_print_security_ace_flags(struct ndr_print *ndr, const char *name, uint8_t r);
     13enum ndr_err_code ndr_push_security_ace_type(struct ndr_push *ndr, int ndr_flags, enum security_ace_type r);
     14enum ndr_err_code ndr_pull_security_ace_type(struct ndr_pull *ndr, int ndr_flags, enum security_ace_type *r);
    1115void ndr_print_security_ace_type(struct ndr_print *ndr, const char *name, enum security_ace_type r);
    1216void ndr_print_security_ace_object_flags(struct ndr_print *ndr, const char *name, uint32_t r);
     
    1418void ndr_print_security_ace_object_inherited_type(struct ndr_print *ndr, const char *name, const union security_ace_object_inherited_type *r);
    1519void ndr_print_security_ace_object(struct ndr_print *ndr, const char *name, const struct security_ace_object *r);
     20enum ndr_err_code ndr_push_security_ace_object_ctr(struct ndr_push *ndr, int ndr_flags, const union security_ace_object_ctr *r);
     21enum ndr_err_code ndr_pull_security_ace_object_ctr(struct ndr_pull *ndr, int ndr_flags, union security_ace_object_ctr *r);
    1622void ndr_print_security_ace_object_ctr(struct ndr_print *ndr, const char *name, const union security_ace_object_ctr *r);
    1723enum 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  
    77
    88struct 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;
    1212};
    1313
     
    370370        struct {
    371371                uint32_t idx;
    372                 uint32_t unknown1;
    373                 uint32_t unknown2;
     372                uint32_t size;
     373                uint32_t flags;
    374374                struct PNP_HwProfInfo *info;/* [ref] */
    375375        } in;
  • branches/samba-3.2.x/source/librpc/gen_ndr/samr.h

    r136 r228  
    500500struct samr_UserInfo24 {
    501501        struct samr_CryptPassword password;
    502         uint8_t pw_len;
     502        uint8_t password_expired;
    503503};
    504504
     
    514514struct samr_UserInfo26 {
    515515        struct samr_CryptPasswordEx password;
    516         uint8_t pw_len;
     516        uint8_t password_expired;
    517517};
    518518
  • branches/samba-3.2.x/source/librpc/gen_ndr/security.h

    r133 r228  
    233233union security_ace_object_ctr {
    234234        struct security_ace_object object;/* [case(SEC_ACE_TYPE_ACCESS_ALLOWED_OBJECT)] */
    235 }/* [nodiscriminant] */;
     235}/* [public,nodiscriminant] */;
    236236
    237237struct security_ace {
     
    242242        union security_ace_object_ctr object;/* [switch_is(type)] */
    243243        struct dom_sid trustee;
    244 }/* [gensize,public,nosize] */;
     244}/* [gensize,public,nopull,nosize] */;
    245245
    246246enum security_acl_revision
  • branches/samba-3.2.x/source/librpc/idl/ntsvcs.idl

    r133 r228  
    238238
    239239        typedef struct {
    240                 uint32 unknown1;
    241                 uint16 unknown2[160];
    242                 uint32 unknown3;
     240                uint32 profile_handle;
     241                uint16 friendly_name[80];
     242                uint32 flags;
    243243        } PNP_HwProfInfo;
    244244
     
    246246                [in] uint32 idx,
    247247                [in,out,ref] PNP_HwProfInfo *info,
    248                 [in] uint32 unknown1,
    249                 [in] uint32 unknown2
     248                [in] uint32 size,
     249                [in] uint32 flags
    250250                );
    251251
  • branches/samba-3.2.x/source/librpc/idl/samr.idl

    r136 r228  
    836836        typedef struct {
    837837                samr_CryptPassword password;
    838                 uint8 pw_len;
     838                uint8 password_expired;
    839839        } samr_UserInfo24;
    840840
     
    850850        typedef struct {
    851851                samr_CryptPasswordEx password;
    852                 uint8 pw_len;
     852                uint8 password_expired;
    853853        } samr_UserInfo26;
    854854
  • branches/samba-3.2.x/source/librpc/idl/security.idl

    r133 r228  
    234234        } sec_privilege;
    235235
    236         typedef [bitmap8bit] bitmap {
     236        typedef [public,bitmap8bit] bitmap {
    237237                SEC_ACE_FLAG_OBJECT_INHERIT             = 0x01,
    238238                SEC_ACE_FLAG_CONTAINER_INHERIT          = 0x02,
     
    245245        } security_ace_flags;
    246246
    247         typedef [enum8bit] enum {
     247        typedef [public,enum8bit] enum {
    248248                SEC_ACE_TYPE_ACCESS_ALLOWED             = 0,
    249249                SEC_ACE_TYPE_ACCESS_DENIED              = 1,
     
    282282        } security_ace_object;
    283283
    284         typedef [nodiscriminant] union {
     284        typedef [public,nodiscriminant] union {
    285285                [case(SEC_ACE_TYPE_ACCESS_ALLOWED_OBJECT)] security_ace_object object;
    286286                [case(SEC_ACE_TYPE_ACCESS_DENIED_OBJECT)] security_ace_object object;
     
    290290        } security_ace_object_ctr;
    291291
    292         typedef [public,gensize,nosize] struct {
     292        typedef [public,nopull,gensize,nosize] struct {
    293293                security_ace_type type;  /* SEC_ACE_TYPE_* */
    294294                security_ace_flags flags; /* SEC_ACE_FLAG_* */
  • branches/samba-3.2.x/source/librpc/ndr/ndr_sec_helper.c

    r133 r228  
    2222
    2323#include "includes.h"
     24#include "librpc/gen_ndr/security.h"
    2425
    2526/*
     
    5051{
    5152        return ndr_size_dom_sid28(sid, flags);
     53}
     54
     55enum 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;
    5283}
    5384
Note: See TracChangeset for help on using the changeset viewer.