Ignore:
Timestamp:
Apr 9, 2010, 3:20:58 PM (16 years ago)
Author:
Silvan Scherrer
Message:

Samba 3.5.x: update to 3.5.2

File:
1 edited

Legend:

Unmodified
Added
Removed
  • vendor/current/source3/rpc_server/srv_winreg_nt.c

    r414 r427  
    231231                return WERR_BADFID;
    232232
    233         if ((r->out.data_length == NULL) || (r->out.type == NULL)) {
     233        if ((r->out.data_length == NULL) || (r->out.type == NULL)) {
    234234                return WERR_INVALID_PARAM;
    235235        }
    236236
    237         *r->out.data_length = *r->out.type = REG_NONE;
    238 
    239         DEBUG(7,("_reg_info: policy key name = [%s]\n", regkey->key->name));
    240         DEBUG(7,("_reg_info: policy key type = [%08x]\n", regkey->key->type));
     237        DEBUG(7,("_winreg_QueryValue: policy key name = [%s]\n", regkey->key->name));
     238        DEBUG(7,("_winreg_QueryValue: policy key type = [%08x]\n", regkey->key->type));
    241239
    242240        /* Handle QueryValue calls on HKEY_PERFORMANCE_DATA */
     
    288286                                        &val);
    289287                if (!W_ERROR_IS_OK(status)) {
     288
     289
     290
     291
    290292                        if (r->out.data_size) {
    291293                                *r->out.data_size = 0;
     
    307309        }
    308310
    309         *r->out.data_length = outbuf_size;
    310 
    311         if ( *r->in.data_size == 0 || !r->out.data ) {
     311        status = WERR_BADFILE;
     312
     313        if (*r->in.data_size < outbuf_size) {
     314                *r->out.data_size = outbuf_size;
     315                status = r->in.data ? WERR_MORE_DATA : WERR_OK;
     316        } else {
     317                *r->out.data_length = outbuf_size;
     318                *r->out.data_size = outbuf_size;
     319                memcpy(r->out.data, outbuf, outbuf_size);
    312320                status = WERR_OK;
    313         } else if ( *r->out.data_length > *r->in.data_size ) {
    314                 status = WERR_MORE_DATA;
    315         } else {
    316                 memcpy( r->out.data, outbuf, *r->out.data_length );
    317                 status = WERR_OK;
    318         }
    319 
    320         *r->out.data_size = *r->out.data_length;
     321        }
    321322
    322323        if (free_prs) prs_mem_free(&prs_hkpd);
Note: See TracChangeset for help on using the changeset viewer.