Ignore:
Timestamp:
Jun 9, 2016, 2:23:12 PM (9 years ago)
Author:
Silvan Scherrer
Message:

Samba Server: apply latest security patches to trunk

Location:
trunk/server
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/server

  • trunk/server/librpc/ndr/ndr_basic.c

    r918 r920  
    6262_PUBLIC_ enum ndr_err_code ndr_pull_int8(struct ndr_pull *ndr, int ndr_flags, int8_t *v)
    6363{
     64        NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
    6465        NDR_PULL_NEED_BYTES(ndr, 1);
    6566        *v = (int8_t)CVAL(ndr->data, ndr->offset);
     
    7374_PUBLIC_ enum ndr_err_code ndr_pull_uint8(struct ndr_pull *ndr, int ndr_flags, uint8_t *v)
    7475{
     76        NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
    7577        NDR_PULL_NEED_BYTES(ndr, 1);
    7678        *v = CVAL(ndr->data, ndr->offset);
     
    8486_PUBLIC_ enum ndr_err_code ndr_pull_int16(struct ndr_pull *ndr, int ndr_flags, int16_t *v)
    8587{
     88        NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
    8689        NDR_PULL_ALIGN(ndr, 2);
    8790        NDR_PULL_NEED_BYTES(ndr, 2);
     
    9699_PUBLIC_ enum ndr_err_code ndr_pull_uint16(struct ndr_pull *ndr, int ndr_flags, uint16_t *v)
    97100{
     101        NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
    98102        NDR_PULL_ALIGN(ndr, 2);
    99103        NDR_PULL_NEED_BYTES(ndr, 2);
     
    108112_PUBLIC_ enum ndr_err_code ndr_pull_uint1632(struct ndr_pull *ndr, int ndr_flags, uint16_t *v)
    109113{
     114        NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
    110115        if (unlikely(ndr->flags & LIBNDR_FLAG_NDR64)) {
    111116                uint32_t v32 = 0;
     
    126131_PUBLIC_ enum ndr_err_code ndr_pull_int32(struct ndr_pull *ndr, int ndr_flags, int32_t *v)
    127132{
     133        NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
    128134        NDR_PULL_ALIGN(ndr, 4);
    129135        NDR_PULL_NEED_BYTES(ndr, 4);
     
    138144_PUBLIC_ enum ndr_err_code ndr_pull_uint32(struct ndr_pull *ndr, int ndr_flags, uint32_t *v)
    139145{
     146        NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
    140147        NDR_PULL_ALIGN(ndr, 4);
    141148        NDR_PULL_NEED_BYTES(ndr, 4);
     
    152159        uint64_t v64;
    153160        enum ndr_err_code err;
     161        NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
    154162        if (likely(!(ndr->flags & LIBNDR_FLAG_NDR64))) {
    155163                return ndr_pull_uint32(ndr, ndr_flags, v);
     
    170178_PUBLIC_ enum ndr_err_code ndr_pull_double(struct ndr_pull *ndr, int ndr_flags, double *v)
    171179{
     180        NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
    172181        NDR_PULL_ALIGN(ndr, 8);
    173182        NDR_PULL_NEED_BYTES(ndr, 8);
     
    218227_PUBLIC_ enum ndr_err_code ndr_pull_udlong(struct ndr_pull *ndr, int ndr_flags, uint64_t *v)
    219228{
     229        NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
    220230        NDR_PULL_ALIGN(ndr, 4);
    221231        NDR_PULL_NEED_BYTES(ndr, 8);
     
    231241_PUBLIC_ enum ndr_err_code ndr_pull_udlongr(struct ndr_pull *ndr, int ndr_flags, uint64_t *v)
    232242{
     243        NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
    233244        NDR_PULL_ALIGN(ndr, 4);
    234245        NDR_PULL_NEED_BYTES(ndr, 8);
     
    265276{
    266277        uintptr_t h;
     278        NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
    267279        NDR_PULL_ALIGN(ndr, sizeof(h));
    268280        NDR_PULL_NEED_BYTES(ndr, sizeof(h));
     
    279291{
    280292        uint32_t v;
     293        NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
    281294        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
    282295        *status = NT_STATUS(v);
     
    303316{
    304317        uint32_t v;
     318        NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
    305319        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
    306320        *status = W_ERROR(v);
     
    415429_PUBLIC_ enum ndr_err_code ndr_pull_array_uint8(struct ndr_pull *ndr, int ndr_flags, uint8_t *data, uint32_t n)
    416430{
     431        NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
    417432        if (!(ndr_flags & NDR_SCALARS)) {
    418433                return NDR_ERR_SUCCESS;
     
    426441_PUBLIC_ enum ndr_err_code ndr_push_int8(struct ndr_push *ndr, int ndr_flags, int8_t v)
    427442{
     443        NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
    428444        NDR_PUSH_NEED_BYTES(ndr, 1);
    429445        SCVAL(ndr->data, ndr->offset, (uint8_t)v);
     
    437453_PUBLIC_ enum ndr_err_code ndr_push_uint8(struct ndr_push *ndr, int ndr_flags, uint8_t v)
    438454{
     455        NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
    439456        NDR_PUSH_NEED_BYTES(ndr, 1);
    440457        SCVAL(ndr->data, ndr->offset, v);
     
    448465_PUBLIC_ enum ndr_err_code ndr_push_int16(struct ndr_push *ndr, int ndr_flags, int16_t v)
    449466{
     467        NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
    450468        NDR_PUSH_ALIGN(ndr, 2);
    451469        NDR_PUSH_NEED_BYTES(ndr, 2);
     
    460478_PUBLIC_ enum ndr_err_code ndr_push_uint16(struct ndr_push *ndr, int ndr_flags, uint16_t v)
    461479{
     480        NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
    462481        NDR_PUSH_ALIGN(ndr, 2);
    463482        NDR_PUSH_NEED_BYTES(ndr, 2);
     
    483502_PUBLIC_ enum ndr_err_code ndr_push_int32(struct ndr_push *ndr, int ndr_flags, int32_t v)
    484503{
     504        NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
    485505        NDR_PUSH_ALIGN(ndr, 4);
    486506        NDR_PUSH_NEED_BYTES(ndr, 4);
     
    495515_PUBLIC_ enum ndr_err_code ndr_push_uint32(struct ndr_push *ndr, int ndr_flags, uint32_t v)
    496516{
     517        NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
    497518        NDR_PUSH_ALIGN(ndr, 4);
    498519        NDR_PUSH_NEED_BYTES(ndr, 4);
     
    518539_PUBLIC_ enum ndr_err_code ndr_push_udlong(struct ndr_push *ndr, int ndr_flags, uint64_t v)
    519540{
     541        NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
    520542        NDR_PUSH_ALIGN(ndr, 4);
    521543        NDR_PUSH_NEED_BYTES(ndr, 8);
     
    531553_PUBLIC_ enum ndr_err_code ndr_push_udlongr(struct ndr_push *ndr, int ndr_flags, uint64_t v)
    532554{
     555        NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
    533556        NDR_PUSH_ALIGN(ndr, 4);
    534557        NDR_PUSH_NEED_BYTES(ndr, 8);
     
    564587_PUBLIC_ enum ndr_err_code ndr_push_double(struct ndr_push *ndr, int ndr_flags, double v)
    565588{
     589        NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
    566590        NDR_PUSH_ALIGN(ndr, 8);
    567591        NDR_PUSH_NEED_BYTES(ndr, 8);
     
    577601{
    578602        uintptr_t h = (intptr_t)v;
     603        NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
    579604        NDR_PUSH_ALIGN(ndr, sizeof(h));
    580605        NDR_PUSH_NEED_BYTES(ndr, sizeof(h));
     
    687712_PUBLIC_ enum ndr_err_code ndr_push_array_uint8(struct ndr_push *ndr, int ndr_flags, const uint8_t *data, uint32_t n)
    688713{
     714        NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
    689715        if (!(ndr_flags & NDR_SCALARS)) {
    690716                return NDR_ERR_SUCCESS;
     
    739765_PUBLIC_ enum ndr_err_code ndr_push_NTTIME(struct ndr_push *ndr, int ndr_flags, NTTIME t)
    740766{
     767        NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
    741768        NDR_CHECK(ndr_push_udlong(ndr, ndr_flags, t));
    742769        return NDR_ERR_SUCCESS;
     
    748775_PUBLIC_ enum ndr_err_code ndr_pull_NTTIME(struct ndr_pull *ndr, int ndr_flags, NTTIME *t)
    749776{
     777        NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
    750778        NDR_CHECK(ndr_pull_udlong(ndr, ndr_flags, t));
    751779        return NDR_ERR_SUCCESS;
     
    757785_PUBLIC_ enum ndr_err_code ndr_push_NTTIME_1sec(struct ndr_push *ndr, int ndr_flags, NTTIME t)
    758786{
     787        NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
    759788        t /= 10000000;
    760789        NDR_CHECK(ndr_push_hyper(ndr, ndr_flags, t));
     
    767796_PUBLIC_ enum ndr_err_code ndr_pull_NTTIME_1sec(struct ndr_pull *ndr, int ndr_flags, NTTIME *t)
    768797{
     798        NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
    769799        NDR_CHECK(ndr_pull_hyper(ndr, ndr_flags, t));
    770800        (*t) *= 10000000;
     
    777807_PUBLIC_ enum ndr_err_code ndr_pull_NTTIME_hyper(struct ndr_pull *ndr, int ndr_flags, NTTIME *t)
    778808{
     809        NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
    779810        NDR_CHECK(ndr_pull_hyper(ndr, ndr_flags, t));
    780811        return NDR_ERR_SUCCESS;
     
    786817_PUBLIC_ enum ndr_err_code ndr_push_NTTIME_hyper(struct ndr_push *ndr, int ndr_flags, NTTIME t)
    787818{
     819        NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
    788820        NDR_CHECK(ndr_push_hyper(ndr, ndr_flags, t));
    789821        return NDR_ERR_SUCCESS;
     
    815847_PUBLIC_ enum ndr_err_code ndr_push_uid_t(struct ndr_push *ndr, int ndr_flags, uid_t u)
    816848{
     849        NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
    817850        return ndr_push_hyper(ndr, NDR_SCALARS, (uint64_t)u);
    818851}
     
    840873_PUBLIC_ enum ndr_err_code ndr_push_gid_t(struct ndr_push *ndr, int ndr_flags, gid_t g)
    841874{
     875        NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
    842876        return ndr_push_hyper(ndr, NDR_SCALARS, (uint64_t)g);
    843877}
Note: See TracChangeset for help on using the changeset viewer.