vk 757 source3/registry/regfio.c static bool hbin_prs_vk_rec( const char *desc, REGF_HBIN *hbin, int depth, REGF_VK_REC *vk, REGF_FILE *file ) vk 772 source3/registry/regfio.c if ( !prs_uint32( "rec_size", &hbin->ps, depth, &vk->rec_size )) vk 775 source3/registry/regfio.c if ( !prs_uint8s( True, "header", ps, depth, (uint8*)vk->header, sizeof( vk->header )) ) vk 779 source3/registry/regfio.c name_length = strlen(vk->valuename); vk 783 source3/registry/regfio.c if ( !prs_uint32( "data_size", ps, depth, &vk->data_size )) vk 785 source3/registry/regfio.c if ( !prs_uint32( "data_off", ps, depth, &vk->data_off )) vk 787 source3/registry/regfio.c if ( !prs_uint32( "type", ps, depth, &vk->type)) vk 789 source3/registry/regfio.c if ( !prs_uint16( "flag", ps, depth, &vk->flag)) vk 798 source3/registry/regfio.c if ( vk->flag&VK_FLAG_NAME_PRESENT ) { vk 801 source3/registry/regfio.c if ( !(vk->valuename = PRS_ALLOC_MEM( ps, char, name_length+1 ))) vk 804 source3/registry/regfio.c if ( !prs_uint8s( True, "name", ps, depth, (uint8*)vk->valuename, name_length ) ) vk 812 source3/registry/regfio.c if ( vk->data_size != 0 ) { vk 815 source3/registry/regfio.c if ( (vk->type == REG_SZ) || (vk->type == REG_MULTI_SZ) ) vk 820 source3/registry/regfio.c if ( !(vk->data_size & VK_DATA_IN_OFFSET) ) { vk 825 source3/registry/regfio.c if ( !(vk->data = PRS_ALLOC_MEM( ps, uint8, vk->data_size) ) ) vk 830 source3/registry/regfio.c if ( !hbin_contains_offset( hbin, vk->data_off ) ) { vk 831 source3/registry/regfio.c if ( !(hblock = lookup_hbin_block( file, vk->data_off )) ) vk 834 source3/registry/regfio.c if ( !(prs_set_offset( &hblock->ps, (vk->data_off+HBIN_HDR_SIZE-hblock->first_hbin_off)-sizeof(uint32) )) ) vk 838 source3/registry/regfio.c data_rec_size = ( (vk->data_size+sizeof(uint32)) & 0xfffffff8 ) + 8; vk 843 source3/registry/regfio.c if ( !prs_uint8s( charmode, "data", &hblock->ps, depth, vk->data, vk->data_size) ) vk 850 source3/registry/regfio.c if ( !(vk->data = PRS_ALLOC_MEM( ps, uint8, 4 ) ) ) vk 852 source3/registry/regfio.c SIVAL( vk->data, 0, vk->data_off ); vk 860 source3/registry/regfio.c if ( data_size != vk->rec_size ) vk 861 source3/registry/regfio.c DEBUG(10,("prs_vk_rec: data_size check failed (0x%x < 0x%x)\n", data_size, vk->rec_size)); vk 1591 source3/registry/regfio.c static uint32 vk_record_data_size( REGF_VK_REC *vk ) vk 1601 source3/registry/regfio.c if ( vk->valuename ) vk 1602 source3/registry/regfio.c size += strlen(vk->valuename); vk 1660 source3/registry/regfio.c static bool create_vk_record( REGF_FILE *file, REGF_VK_REC *vk, REGISTRY_VALUE *value ) vk 1665 source3/registry/regfio.c ZERO_STRUCTP( vk ); vk 1667 source3/registry/regfio.c memcpy( vk->header, "vk", REC_HDR_SIZE ); vk 1670 source3/registry/regfio.c vk->valuename = talloc_strdup( file->mem_ctx, regval_name(value) ); vk 1671 source3/registry/regfio.c vk->flag = VK_FLAG_NAME_PRESENT; vk 1674 source3/registry/regfio.c vk->data_size = regval_size( value ); vk 1675 source3/registry/regfio.c vk->type = regval_type( value ); vk 1677 source3/registry/regfio.c if ( vk->data_size > sizeof(uint32) ) { vk 1678 source3/registry/regfio.c uint32 data_size = ( (vk->data_size+sizeof(uint32)) & 0xfffffff8 ) + 8; vk 1680 source3/registry/regfio.c vk->data = (uint8 *)TALLOC_MEMDUP( file->mem_ctx, vk 1682 source3/registry/regfio.c vk->data_size ); vk 1683 source3/registry/regfio.c if (vk->data == NULL) { vk 1693 source3/registry/regfio.c vk->data_off = prs_offset( &data_hbin->ps ) + data_hbin->first_hbin_off - HBIN_HDR_SIZE; vk 1698 source3/registry/regfio.c if ( vk->data_size != 0 ) vk 1699 source3/registry/regfio.c memcpy( &vk->data_off, regval_data_p(value), sizeof(uint32) ); vk 1700 source3/registry/regfio.c vk->data_size |= VK_DATA_IN_OFFSET; vk 507 source4/lib/registry/regf.c struct vk_block *vk; vk 527 source4/lib/registry/regf.c vk = talloc(NULL, struct vk_block); vk 528 source4/lib/registry/regf.c W_ERROR_HAVE_NO_MEMORY(vk); vk 530 source4/lib/registry/regf.c if (!hbin_get_tdr(regf, vk_offset, vk, vk 531 source4/lib/registry/regf.c (tdr_pull_fn_t)tdr_pull_vk_block, vk)) { vk 533 source4/lib/registry/regf.c talloc_free(vk); vk 539 source4/lib/registry/regf.c *name = talloc_strndup(ctx, vk->data_name, vk->name_length); vk 542 source4/lib/registry/regf.c *data_type = vk->data_type; vk 544 source4/lib/registry/regf.c if (vk->data_length & 0x80000000) { vk 545 source4/lib/registry/regf.c vk->data_length &=~0x80000000; vk 546 source4/lib/registry/regf.c data->data = (uint8_t *)talloc_memdup(ctx, (uint8_t *)&vk->data_offset, vk->data_length); vk 547 source4/lib/registry/regf.c data->length = vk->data_length; vk 549 source4/lib/registry/regf.c *data = hbin_get(regf, vk->data_offset); vk 552 source4/lib/registry/regf.c if (data->length < vk->data_length) { vk 556 source4/lib/registry/regf.c talloc_free(vk); vk 1545 source4/lib/registry/regf.c struct vk_block vk; vk 1564 source4/lib/registry/regf.c &vk)) { vk 1569 source4/lib/registry/regf.c if (strcmp(vk.data_name, name) == 0) { vk 1763 source4/lib/registry/regf.c struct vk_block vk; vk 1768 source4/lib/registry/regf.c ZERO_STRUCT(vk); vk 1778 source4/lib/registry/regf.c &vk)) { vk 1783 source4/lib/registry/regf.c if (strcmp(vk.data_name, name) == 0) { vk 1789 source4/lib/registry/regf.c if (!(vk.data_length & 0x80000000)) { vk 1790 source4/lib/registry/regf.c hbin_free(regf, vk.data_offset); vk 1794 source4/lib/registry/regf.c vk.header = "vk"; vk 1795 source4/lib/registry/regf.c vk.name_length = strlen(name); vk 1797 source4/lib/registry/regf.c vk.flag = 1; vk 1798 source4/lib/registry/regf.c vk.data_name = name; vk 1800 source4/lib/registry/regf.c vk.data_name = NULL; vk 1801 source4/lib/registry/regf.c vk.flag = 0; vk 1805 source4/lib/registry/regf.c vk.data_length = data.length; vk 1806 source4/lib/registry/regf.c vk.data_type = type; vk 1808 source4/lib/registry/regf.c vk.data_length |= 0x80000000; vk 1809 source4/lib/registry/regf.c vk.data_offset = *(uint32_t *)data.data; vk 1812 source4/lib/registry/regf.c vk.data_offset = hbin_store(regf, data); vk 1818 source4/lib/registry/regf.c &vk); vk 1823 source4/lib/registry/regf.c old_vk_offset ,&vk);