Changeset 427 for vendor/current/source3/rpc_server/srv_winreg_nt.c
- Timestamp:
- Apr 9, 2010, 3:20:58 PM (16 years ago)
- File:
-
- 1 edited
-
vendor/current/source3/rpc_server/srv_winreg_nt.c (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
vendor/current/source3/rpc_server/srv_winreg_nt.c
r414 r427 231 231 return WERR_BADFID; 232 232 233 if ((r->out.data_length == NULL) || (r->out.type == NULL) ) {233 if ((r->out.data_length == NULL) || (r->out.type == NULL)) { 234 234 return WERR_INVALID_PARAM; 235 235 } 236 236 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)); 241 239 242 240 /* Handle QueryValue calls on HKEY_PERFORMANCE_DATA */ … … 288 286 &val); 289 287 if (!W_ERROR_IS_OK(status)) { 288 289 290 291 290 292 if (r->out.data_size) { 291 293 *r->out.data_size = 0; … … 307 309 } 308 310 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); 312 320 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 } 321 322 322 323 if (free_prs) prs_mem_free(&prs_hkpd);
Note:
See TracChangeset
for help on using the changeset viewer.
