• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/router/samba-3.5.8/source3/registry/

Lines Matching refs:vk

757 static bool hbin_prs_vk_rec( const char *desc, REGF_HBIN *hbin, int depth, REGF_VK_REC *vk, REGF_FILE *file )
772 if ( !prs_uint32( "rec_size", &hbin->ps, depth, &vk->rec_size ))
775 if ( !prs_uint8s( True, "header", ps, depth, (uint8*)vk->header, sizeof( vk->header )) )
779 name_length = strlen(vk->valuename);
783 if ( !prs_uint32( "data_size", ps, depth, &vk->data_size ))
785 if ( !prs_uint32( "data_off", ps, depth, &vk->data_off ))
787 if ( !prs_uint32( "type", ps, depth, &vk->type))
789 if ( !prs_uint16( "flag", ps, depth, &vk->flag))
798 if ( vk->flag&VK_FLAG_NAME_PRESENT ) {
801 if ( !(vk->valuename = PRS_ALLOC_MEM( ps, char, name_length+1 )))
804 if ( !prs_uint8s( True, "name", ps, depth, (uint8*)vk->valuename, name_length ) )
812 if ( vk->data_size != 0 ) {
815 if ( (vk->type == REG_SZ) || (vk->type == REG_MULTI_SZ) )
820 if ( !(vk->data_size & VK_DATA_IN_OFFSET) ) {
825 if ( !(vk->data = PRS_ALLOC_MEM( ps, uint8, vk->data_size) ) )
830 if ( !hbin_contains_offset( hbin, vk->data_off ) ) {
831 if ( !(hblock = lookup_hbin_block( file, vk->data_off )) )
834 if ( !(prs_set_offset( &hblock->ps, (vk->data_off+HBIN_HDR_SIZE-hblock->first_hbin_off)-sizeof(uint32) )) )
838 data_rec_size = ( (vk->data_size+sizeof(uint32)) & 0xfffffff8 ) + 8;
843 if ( !prs_uint8s( charmode, "data", &hblock->ps, depth, vk->data, vk->data_size) )
850 if ( !(vk->data = PRS_ALLOC_MEM( ps, uint8, 4 ) ) )
852 SIVAL( vk->data, 0, vk->data_off );
860 if ( data_size != vk->rec_size )
861 DEBUG(10,("prs_vk_rec: data_size check failed (0x%x < 0x%x)\n", data_size, vk->rec_size));
1591 static uint32 vk_record_data_size( REGF_VK_REC *vk )
1601 if ( vk->valuename )
1602 size += strlen(vk->valuename);
1660 static bool create_vk_record(REGF_FILE *file, REGF_VK_REC *vk,
1666 ZERO_STRUCTP( vk );
1668 memcpy( vk->header, "vk", REC_HDR_SIZE );
1671 vk->valuename = talloc_strdup( file->mem_ctx, regval_name(value) );
1672 vk->flag = VK_FLAG_NAME_PRESENT;
1675 vk->data_size = regval_size( value );
1676 vk->type = regval_type( value );
1678 if ( vk->data_size > sizeof(uint32) ) {
1679 uint32 data_size = ( (vk->data_size+sizeof(uint32)) & 0xfffffff8 ) + 8;
1681 vk->data = (uint8 *)TALLOC_MEMDUP( file->mem_ctx,
1683 vk->data_size );
1684 if (vk->data == NULL) {
1694 vk->data_off = prs_offset( &data_hbin->ps ) + data_hbin->first_hbin_off - HBIN_HDR_SIZE;
1699 if ( vk->data_size != 0 )
1700 memcpy( &vk->data_off, regval_data_p(value), sizeof(uint32) );
1701 vk->data_size |= VK_DATA_IN_OFFSET;
1894 /* create the vk records */