nk 215 source3/include/regfio.h REGF_NK_REC* regfio_fetch_subkey( REGF_FILE *file, REGF_NK_REC *nk );
nk 297 source3/registry/regfio.c static bool prs_nk_rec( const char *desc, prs_struct *ps, int depth, REGF_NK_REC *nk )
nk 304 source3/registry/regfio.c nk->hbin_off = prs_offset( ps );
nk 305 source3/registry/regfio.c start = nk->hbin_off;
nk 315 source3/registry/regfio.c if ( !prs_uint32( "rec_size", ps, depth, &nk->rec_size ))
nk 318 source3/registry/regfio.c if ( !prs_uint8s( True, "header", ps, depth, (uint8*)nk->header, sizeof( nk->header )) )
nk 321 source3/registry/regfio.c if ( !prs_uint16( "key_type", ps, depth, &nk->key_type ))
nk 323 source3/registry/regfio.c if ( !smb_io_time( "mtime", &nk->mtime, ps, depth ))
nk 328 source3/registry/regfio.c if ( !prs_uint32( "parent_off", ps, depth, &nk->parent_off ))
nk 330 source3/registry/regfio.c if ( !prs_uint32( "num_subkeys", ps, depth, &nk->num_subkeys ))
nk 335 source3/registry/regfio.c if ( !prs_uint32( "subkeys_off", ps, depth, &nk->subkeys_off ))
nk 342 source3/registry/regfio.c if ( !prs_uint32( "num_values", ps, depth, &nk->num_values ))
nk 344 source3/registry/regfio.c if ( !prs_uint32( "values_off", ps, depth, &nk->values_off ))
nk 346 source3/registry/regfio.c if ( !prs_uint32( "sk_off", ps, depth, &nk->sk_off ))
nk 348 source3/registry/regfio.c if ( !prs_uint32( "classname_off", ps, depth, &nk->classname_off ))
nk 351 source3/registry/regfio.c if ( !prs_uint32( "max_bytes_subkeyname", ps, depth, &nk->max_bytes_subkeyname))
nk 353 source3/registry/regfio.c if ( !prs_uint32( "max_bytes_subkeyclassname", ps, depth, &nk->max_bytes_subkeyclassname))
nk 355 source3/registry/regfio.c if ( !prs_uint32( "max_bytes_valuename", ps, depth, &nk->max_bytes_valuename))
nk 357 source3/registry/regfio.c if ( !prs_uint32( "max_bytes_value", ps, depth, &nk->max_bytes_value))
nk 359 source3/registry/regfio.c if ( !prs_uint32( "unknown index", ps, depth, &nk->unk_index))
nk 362 source3/registry/regfio.c name_length = nk->keyname ? strlen(nk->keyname) : 0 ;
nk 363 source3/registry/regfio.c class_length = nk->classname ? strlen(nk->classname) : 0 ;
nk 375 source3/registry/regfio.c if ( !(nk->keyname = PRS_ALLOC_MEM( ps, char, name_length+1 )) )
nk 379 source3/registry/regfio.c if ( !prs_uint8s( True, "name", ps, depth, (uint8*)nk->keyname, name_length) )
nk 383 source3/registry/regfio.c nk->keyname[name_length] = '\0';
nk 391 source3/registry/regfio.c if ( data_size > nk->rec_size )
nk 392 source3/registry/regfio.c DEBUG(10,("Encountered reused record (0x%x < 0x%x)\n", data_size, nk->rec_size));
nk 395 source3/registry/regfio.c nk->hbin->dirty = True;
nk 616 source3/registry/regfio.c static bool hbin_prs_lf_records( const char *desc, REGF_HBIN *hbin, int depth, REGF_NK_REC *nk )
nk 619 source3/registry/regfio.c REGF_LF_REC *lf = &nk->subkeys;
nk 627 source3/registry/regfio.c if ( nk->num_subkeys == 0 )
nk 632 source3/registry/regfio.c if ( !prs_set_offset( &hbin->ps, nk->subkeys_off + HBIN_HDR_SIZE - hbin->first_hbin_off ) )
nk 874 source3/registry/regfio.c static bool hbin_prs_vk_records( const char *desc, REGF_HBIN *hbin, int depth, REGF_NK_REC *nk, REGF_FILE *file )
nk 884 source3/registry/regfio.c if ( nk->num_values == 0 )
nk 888 source3/registry/regfio.c if ( !(nk->values = PRS_ALLOC_MEM( &hbin->ps, REGF_VK_REC, nk->num_values ) ) )
nk 894 source3/registry/regfio.c if ( !prs_set_offset( &hbin->ps, nk->values_off+HBIN_HDR_SIZE-hbin->first_hbin_off-sizeof(uint32)) )
nk 898 source3/registry/regfio.c record_size = ( ( nk->num_values * sizeof(uint32) ) & 0xfffffff8 ) + 8;
nk 905 source3/registry/regfio.c for ( i=0; i<nk->num_values; i++ ) {
nk 906 source3/registry/regfio.c if ( !prs_uint32( "vk_off", &hbin->ps, depth, &nk->values[i].rec_off ) )
nk 910 source3/registry/regfio.c for ( i=0; i<nk->num_values; i++ ) {
nk 914 source3/registry/regfio.c if ( !hbin_contains_offset( hbin, nk->values[i].rec_off ) ) {
nk 915 source3/registry/regfio.c sub_hbin = lookup_hbin_block( file, nk->values[i].rec_off );
nk 918 source3/registry/regfio.c nk->values[i].hbin_off));
nk 923 source3/registry/regfio.c new_offset = nk->values[i].rec_off + HBIN_HDR_SIZE - sub_hbin->first_hbin_off;
nk 926 source3/registry/regfio.c if ( !hbin_prs_vk_rec( "vk_rec", sub_hbin, depth, &nk->values[i], file ) )
nk 973 source3/registry/regfio.c static bool hbin_prs_key( REGF_FILE *file, REGF_HBIN *hbin, REGF_NK_REC *nk )
nk 983 source3/registry/regfio.c if ( !prs_nk_rec( "nk_rec", &hbin->ps, depth, nk ))
nk 988 source3/registry/regfio.c if ( nk->num_values && (nk->values_off!=REGF_OFFSET_NONE) ) {
nk 990 source3/registry/regfio.c if ( !hbin_contains_offset( hbin, nk->values_off ) ) {
nk 991 source3/registry/regfio.c sub_hbin = lookup_hbin_block( file, nk->values_off );
nk 994 source3/registry/regfio.c nk->values_off));
nk 999 source3/registry/regfio.c if ( !hbin_prs_vk_records( "vk_rec", sub_hbin, depth, nk, file ))
nk 1005 source3/registry/regfio.c if ( nk->num_subkeys && (nk->subkeys_off!=REGF_OFFSET_NONE) ) {
nk 1007 source3/registry/regfio.c if ( !hbin_contains_offset( hbin, nk->subkeys_off ) ) {
nk 1008 source3/registry/regfio.c sub_hbin = lookup_hbin_block( file, nk->subkeys_off );
nk 1011 source3/registry/regfio.c nk->subkeys_off));
nk 1016 source3/registry/regfio.c if ( !hbin_prs_lf_records( "lf_rec", sub_hbin, depth, nk ))
nk 1022 source3/registry/regfio.c if ( (nk->sk_off!=REGF_OFFSET_NONE) && !( nk->sec_desc = find_sk_record_by_offset( file, nk->sk_off )) ) {
nk 1025 source3/registry/regfio.c if ( !hbin_contains_offset( hbin, nk->sk_off ) ) {
nk 1026 source3/registry/regfio.c sub_hbin = lookup_hbin_block( file, nk->sk_off );
nk 1029 source3/registry/regfio.c nk->subkeys_off));
nk 1034 source3/registry/regfio.c if ( !(nk->sec_desc = TALLOC_ZERO_P( file->mem_ctx, REGF_SK_REC )) )
nk 1036 source3/registry/regfio.c nk->sec_desc->sk_off = nk->sk_off;
nk 1037 source3/registry/regfio.c if ( !hbin_prs_sk_rec( "sk_rec", sub_hbin, depth, nk->sec_desc ))
nk 1042 source3/registry/regfio.c nk->sec_desc->sk_off = nk->sk_off;
nk 1043 source3/registry/regfio.c DLIST_ADD( file->sec_desc_list, nk->sec_desc );
nk 1115 source3/registry/regfio.c static bool next_nk_record( REGF_FILE *file, REGF_HBIN *hbin, REGF_NK_REC *nk, bool *eob )
nk 1117 source3/registry/regfio.c if ( next_record( hbin, "nk", eob ) && hbin_prs_key( file, hbin, nk ) )
nk 1331 source3/registry/regfio.c REGF_NK_REC *nk;
nk 1340 source3/registry/regfio.c if ( !(nk = TALLOC_ZERO_P( file->mem_ctx, REGF_NK_REC )) ) {
nk 1354 source3/registry/regfio.c if ( next_nk_record( file, hbin, nk, &eob ) ) {
nk 1355 source3/registry/regfio.c if ( nk->key_type == NK_TYPE_ROOTKEY ) {
nk 1376 source3/registry/regfio.c return nk;
nk 1384 source3/registry/regfio.c REGF_NK_REC* regfio_fetch_subkey( REGF_FILE *file, REGF_NK_REC *nk )
nk 1392 source3/registry/regfio.c if ( !nk || (nk->subkeys_off==REGF_OFFSET_NONE) || (nk->subkey_index >= nk->num_subkeys) )
nk 1397 source3/registry/regfio.c if ( !(hbin = lookup_hbin_block( file, nk->subkeys.hashes[nk->subkey_index].nk_off )) ) {
nk 1399 source3/registry/regfio.c nk->subkeys.hashes[nk->subkey_index].nk_off));
nk 1403 source3/registry/regfio.c nk_offset = nk->subkeys.hashes[nk->subkey_index].nk_off;
nk 1407 source3/registry/regfio.c nk->subkey_index++;
nk 1636 source3/registry/regfio.c static uint32 nk_record_data_size( REGF_NK_REC *nk )
nk 1644 source3/registry/regfio.c size = 0x4c + strlen(nk->keyname) + sizeof(uint32);
nk 1646 source3/registry/regfio.c if ( nk->classname )
nk 1647 source3/registry/regfio.c size += strlen( nk->classname );
nk 1721 source3/registry/regfio.c REGF_NK_REC *nk;
nk 1725 source3/registry/regfio.c if ( !(nk = TALLOC_ZERO_P( file->mem_ctx, REGF_NK_REC )) )
nk 1728 source3/registry/regfio.c memcpy( nk->header, "nk", REC_HDR_SIZE );
nk 1731 source3/registry/regfio.c nk->key_type = NK_TYPE_ROOTKEY;
nk 1733 source3/registry/regfio.c nk->key_type = NK_TYPE_NORMALKEY;
nk 1737 source3/registry/regfio.c nk->parent_off = parent ? (parent->hbin_off + parent->hbin->file_off - REGF_BLOCKSIZE - HBIN_HDR_SIZE ) : REGF_OFFSET_NONE;
nk 1741 source3/registry/regfio.c nk->classname_off = REGF_OFFSET_NONE;
nk 1742 source3/registry/regfio.c nk->classname = NULL;
nk 1743 source3/registry/regfio.c nk->keyname = talloc_strdup( file->mem_ctx, name );
nk 1747 source3/registry/regfio.c unix_to_nt_time( &nk->mtime, time(NULL) );
nk 1751 source3/registry/regfio.c size = nk_record_data_size( nk );
nk 1752 source3/registry/regfio.c nk->rec_size = ( size - 1 ) ^ 0XFFFFFFFF;
nk 1753 source3/registry/regfio.c if ((nk->hbin = find_free_space( file, size )) == NULL) {
nk 1756 source3/registry/regfio.c nk->hbin_off = prs_offset( &nk->hbin->ps );
nk 1763 source3/registry/regfio.c hash->nk_off = prs_offset( &nk->hbin->ps ) + nk->hbin->first_hbin_off - HBIN_HDR_SIZE;
nk 1778 source3/registry/regfio.c nk->sk_off = REGF_OFFSET_NONE;
nk 1785 source3/registry/regfio.c if ( (nk->sec_desc = find_sk_record_by_sec_desc( file, sec_desc )) == NULL ) {
nk 1792 source3/registry/regfio.c if ( !(nk->sec_desc = TALLOC_ZERO_P( file->mem_ctx, REGF_SK_REC )) )
nk 1798 source3/registry/regfio.c memcpy( nk->sec_desc->header, "sk", REC_HDR_SIZE );
nk 1799 source3/registry/regfio.c nk->sec_desc->hbin = sk_hbin;
nk 1800 source3/registry/regfio.c nk->sec_desc->hbin_off = prs_offset( &sk_hbin->ps );
nk 1801 source3/registry/regfio.c nk->sec_desc->sk_off = prs_offset( &sk_hbin->ps ) + sk_hbin->first_hbin_off - HBIN_HDR_SIZE;
nk 1802 source3/registry/regfio.c nk->sec_desc->rec_size = (sk_size-1) ^ 0xFFFFFFFF;
nk 1804 source3/registry/regfio.c nk->sec_desc->sec_desc = sec_desc;
nk 1805 source3/registry/regfio.c nk->sec_desc->ref_count = 0;
nk 1808 source3/registry/regfio.c nk->sec_desc->size = ndr_size_security_descriptor(sec_desc, NULL, 0)
nk 1811 source3/registry/regfio.c DLIST_ADD_END( file->sec_desc_list, nk->sec_desc, REGF_SK_REC *);
nk 1817 source3/registry/regfio.c if ( nk->sec_desc->prev ) {
nk 1818 source3/registry/regfio.c REGF_SK_REC *prev = nk->sec_desc->prev;
nk 1820 source3/registry/regfio.c nk->sec_desc->prev_sk_off = prev->hbin_off + prev->hbin->first_hbin_off - HBIN_HDR_SIZE;
nk 1821 source3/registry/regfio.c prev->next_sk_off = nk->sec_desc->sk_off;
nk 1824 source3/registry/regfio.c nk->sec_desc->next_sk_off = file->sec_desc_list->sk_off;
nk 1827 source3/registry/regfio.c file->sec_desc_list->prev_sk_off = nk->sec_desc->sk_off;
nk 1829 source3/registry/regfio.c nk->sec_desc->prev_sk_off = nk->sec_desc->sk_off;
nk 1830 source3/registry/regfio.c nk->sec_desc->next_sk_off = nk->sec_desc->sk_off;
nk 1836 source3/registry/regfio.c nk->sk_off = nk->sec_desc->sk_off;
nk 1837 source3/registry/regfio.c nk->sec_desc->ref_count++;
nk 1842 source3/registry/regfio.c nk->subkeys_off = REGF_OFFSET_NONE;
nk 1843 source3/registry/regfio.c if ( (nk->num_subkeys = regsubkey_ctr_numkeys( subkeys )) != 0 ) {
nk 1844 source3/registry/regfio.c uint32 lf_size = lf_record_data_size( nk->num_subkeys );
nk 1848 source3/registry/regfio.c if (!(nk->subkeys.hbin = find_free_space( file, lf_size ))) {
nk 1851 source3/registry/regfio.c nk->subkeys.hbin_off = prs_offset( &nk->subkeys.hbin->ps );
nk 1852 source3/registry/regfio.c nk->subkeys.rec_size = (lf_size-1) ^ 0xFFFFFFFF;
nk 1853 source3/registry/regfio.c nk->subkeys_off = prs_offset( &nk->subkeys.hbin->ps ) + nk->subkeys.hbin->first_hbin_off - HBIN_HDR_SIZE;
nk 1855 source3/registry/regfio.c memcpy( nk->subkeys.header, "lf", REC_HDR_SIZE );
nk 1857 source3/registry/regfio.c nk->subkeys.num_keys = nk->num_subkeys;
nk 1858 source3/registry/regfio.c if (nk->subkeys.num_keys) {
nk 1859 source3/registry/regfio.c if ( !(nk->subkeys.hashes = TALLOC_ZERO_ARRAY( file->mem_ctx, REGF_HASH_REC, nk->subkeys.num_keys )) )
nk 1862 source3/registry/regfio.c nk->subkeys.hashes = NULL;
nk 1864 source3/registry/regfio.c nk->subkey_index = 0;
nk 1867 source3/registry/regfio.c for ( i=0; i<nk->num_subkeys; i++ ) {
nk 1869 source3/registry/regfio.c if ( namelen*2 > nk->max_bytes_subkeyname )
nk 1870 source3/registry/regfio.c nk->max_bytes_subkeyname = namelen * 2;
nk 1876 source3/registry/regfio.c nk->values_off = REGF_OFFSET_NONE;
nk 1877 source3/registry/regfio.c if ( (nk->num_values = regval_ctr_numvals( values )) != 0 ) {
nk 1878 source3/registry/regfio.c uint32 vlist_size = ( ( nk->num_values * sizeof(uint32) ) & 0xfffffff8 ) + 8;
nk 1884 source3/registry/regfio.c nk->values_off = prs_offset( &vlist_hbin->ps ) + vlist_hbin->first_hbin_off - HBIN_HDR_SIZE;
nk 1886 source3/registry/regfio.c if (nk->num_values) {
nk 1887 source3/registry/regfio.c if ( !(nk->values = TALLOC_ARRAY( file->mem_ctx, REGF_VK_REC, nk->num_values )) )
nk 1890 source3/registry/regfio.c nk->values = NULL;
nk 1895 source3/registry/regfio.c for ( i=0; i<nk->num_values; i++ ) {
nk 1900 source3/registry/regfio.c create_vk_record( file, &nk->values[i], r );
nk 1901 source3/registry/regfio.c vk_size = vk_record_data_size( &nk->values[i] );
nk 1902 source3/registry/regfio.c nk->values[i].hbin = find_free_space( file, vk_size );
nk 1903 source3/registry/regfio.c nk->values[i].hbin_off = prs_offset( &nk->values[i].hbin->ps );
nk 1904 source3/registry/regfio.c nk->values[i].rec_size = ( vk_size - 1 ) ^ 0xFFFFFFFF;
nk 1905 source3/registry/regfio.c nk->values[i].rec_off = prs_offset( &nk->values[i].hbin->ps )
nk 1906 source3/registry/regfio.c + nk->values[i].hbin->first_hbin_off
nk 1912 source3/registry/regfio.c if ( namelen*2 > nk->max_bytes_valuename )
nk 1913 source3/registry/regfio.c nk->max_bytes_valuename = namelen * 2;
nk 1916 source3/registry/regfio.c if ( datalen > nk->max_bytes_value )
nk 1917 source3/registry/regfio.c nk->max_bytes_value = datalen;
nk 1923 source3/registry/regfio.c prs_set_offset( &nk->hbin->ps, nk->hbin_off );
nk 1924 source3/registry/regfio.c if ( !prs_nk_rec( "nk_rec", &nk->hbin->ps, 0, nk ) )
nk 1927 source3/registry/regfio.c if ( nk->num_values ) {
nk 1928 source3/registry/regfio.c if ( !hbin_prs_vk_records( "vk_records", vlist_hbin, 0, nk, file ) )
nk 1935 source3/registry/regfio.c return nk;
nk 890 source3/utils/net_rpc_registry.c static void dump_values( REGF_NK_REC *nk )
nk 896 source3/utils/net_rpc_registry.c if ( !nk->values )
nk 899 source3/utils/net_rpc_registry.c for ( i=0; i<nk->num_values; i++ ) {
nk 900 source3/utils/net_rpc_registry.c d_printf( "\"%s\" = ", nk->values[i].valuename ? nk->values[i].valuename : "(default)" );
nk 901 source3/utils/net_rpc_registry.c d_printf( "(%s) ", reg_type_lookup( nk->values[i].type ) );
nk 903 source3/utils/net_rpc_registry.c data_size = nk->values[i].data_size & ~VK_DATA_IN_OFFSET;
nk 904 source3/utils/net_rpc_registry.c switch ( nk->values[i].type ) {
nk 908 source3/utils/net_rpc_registry.c nk->values[i].data,
nk 919 source3/utils/net_rpc_registry.c d_printf( "%c", nk->values[i].data[j] );
nk 923 source3/utils/net_rpc_registry.c data = IVAL( nk->values[i].data, 0 );
nk 928 source3/utils/net_rpc_registry.c d_printf( "%x", nk->values[i].data[j] );
nk 944 source3/utils/net_rpc_registry.c static bool dump_registry_tree( REGF_FILE *file, REGF_NK_REC *nk, const char *parent )
nk 950 source3/utils/net_rpc_registry.c while ( (key = regfio_fetch_subkey( file, nk )) ) {
nk 968 source3/utils/net_rpc_registry.c static bool write_registry_tree( REGF_FILE *infile, REGF_NK_REC *nk,
nk 994 source3/utils/net_rpc_registry.c for ( i=0; i<nk->num_values; i++ ) {
nk 995 source3/utils/net_rpc_registry.c regval_ctr_addvalue( values, nk->values[i].valuename, nk->values[i].type,
nk 996 source3/utils/net_rpc_registry.c (const char *)nk->values[i].data, (nk->values[i].data_size & ~VK_DATA_IN_OFFSET) );
nk 1001 source3/utils/net_rpc_registry.c while ( (subkey = regfio_fetch_subkey( infile, nk )) ) {
nk 1005 source3/utils/net_rpc_registry.c key = regfio_write_key( outfile, nk->keyname, values, subkeys, nk->sec_desc->sec_desc, parent );
nk 1013 source3/utils/net_rpc_registry.c nk->keyname);
nk 1019 source3/utils/net_rpc_registry.c nk->subkey_index = 0;
nk 1020 source3/utils/net_rpc_registry.c while ( (subkey = regfio_fetch_subkey( infile, nk )) ) {
nk 1036 source3/utils/net_rpc_registry.c REGF_NK_REC *nk;
nk 1052 source3/utils/net_rpc_registry.c if ((nk = regfio_rootkey( registry )) == NULL) {
nk 1057 source3/utils/net_rpc_registry.c d_printf("[%s]\n", nk->keyname);
nk 1058 source3/utils/net_rpc_registry.c dump_values( nk );
nk 1061 source3/utils/net_rpc_registry.c dump_registry_tree( registry, nk, nk->keyname );
nk 1079 source3/utils/net_rpc_registry.c REGF_NK_REC *nk;
nk 1103 source3/utils/net_rpc_registry.c if ((nk = regfio_rootkey( infile )) == NULL) {
nk 1107 source3/utils/net_rpc_registry.c d_printf("RootKey: [%s]\n", nk->keyname);
nk 1109 source3/utils/net_rpc_registry.c write_registry_tree( infile, nk, NULL, outfile, "" );
nk 114 source3/utils/profiles.c static bool copy_registry_tree( REGF_FILE *infile, REGF_NK_REC *nk,
nk 128 source3/utils/profiles.c if ( !(new_sd = dup_sec_desc( outfile->mem_ctx, nk->sec_desc->sec_desc )) ) {
nk 133 source3/utils/profiles.c verbose_output("ACL for %s%s%s\n", parentpath, parent ? "\\" : "", nk->keyname);
nk 150 source3/utils/profiles.c for ( i=0; i<nk->num_values; i++ ) {
nk 151 source3/utils/profiles.c regval_ctr_addvalue( values, nk->values[i].valuename, nk->values[i].type,
nk 152 source3/utils/profiles.c (const char *)nk->values[i].data, (nk->values[i].data_size & ~VK_DATA_IN_OFFSET) );
nk 157 source3/utils/profiles.c while ( (subkey = regfio_fetch_subkey( infile, nk )) ) {
nk 161 source3/utils/profiles.c key = regfio_write_key( outfile, nk->keyname, values, subkeys, new_sd, parent );
nk 166 source3/utils/profiles.c parentpath, parent ? "\\" : "",nk->keyname);
nk 172 source3/utils/profiles.c nk->subkey_index = 0;
nk 173 source3/utils/profiles.c while ((subkey = regfio_fetch_subkey(infile, nk))) {
nk 197 source3/utils/profiles.c REGF_NK_REC *nk;
nk 286 source3/utils/profiles.c if ((nk = regfio_rootkey( infile )) == NULL) {
nk 291 source3/utils/profiles.c if (!copy_registry_tree( infile, nk, NULL, outfile, "")) {
nk 1007 source4/dsdb/samdb/ldb_modules/password_hash.c const char **nk = NULL;
nk 1095 source4/dsdb/samdb/ldb_modules/password_hash.c nk = &names[num_names++];
nk 1152 source4/dsdb/samdb/ldb_modules/password_hash.c *nk = "Kerberos";
nk 61 source4/lib/registry/regf.c struct nk_block *nk;
nk 441 source4/lib/registry/regf.c *num_subkeys = private_data->nk->num_subkeys;
nk 444 source4/lib/registry/regf.c *num_values = private_data->nk->num_values;
nk 447 source4/lib/registry/regf.c if (private_data->nk->clsname_offset != -1) {
nk 449 source4/lib/registry/regf.c private_data->nk->clsname_offset);
nk 452 source4/lib/registry/regf.c private_data->nk->clsname_length);
nk 472 source4/lib/registry/regf.c struct nk_block *nk;
nk 479 source4/lib/registry/regf.c nk = talloc(ret, struct nk_block);
nk 480 source4/lib/registry/regf.c if (nk == NULL)
nk 483 source4/lib/registry/regf.c ret->nk = nk;
nk 485 source4/lib/registry/regf.c if (!hbin_get_tdr(regf, offset, nk,
nk 486 source4/lib/registry/regf.c (tdr_pull_fn_t)tdr_pull_nk_block, nk)) {
nk 491 source4/lib/registry/regf.c if (strcmp(nk->header, "nk") != 0) {
nk 492 source4/lib/registry/regf.c DEBUG(0, ("Expected nk record, got %s\n", nk->header));
nk 512 source4/lib/registry/regf.c if (idx >= private_data->nk->num_values)
nk 515 source4/lib/registry/regf.c tmp = hbin_get(regf, private_data->nk->values_offset);
nk 521 source4/lib/registry/regf.c if (tmp.length < private_data->nk->num_values * 4) {
nk 594 source4/lib/registry/regf.c struct nk_block *nk = private_data->nk;
nk 597 source4/lib/registry/regf.c if (idx >= nk->num_subkeys)
nk 600 source4/lib/registry/regf.c data = hbin_get(private_data->hive, nk->subkeys_offset);
nk 613 source4/lib/registry/regf.c if (NT_STATUS_IS_ERR(tdr_pull_li_block(pull, nk, &li))) {
nk 621 source4/lib/registry/regf.c if (li.key_count != nk->num_subkeys) {
nk 634 source4/lib/registry/regf.c if (NT_STATUS_IS_ERR(tdr_pull_lf_block(pull, nk, &lf))) {
nk 642 source4/lib/registry/regf.c if (lf.key_count != nk->num_subkeys) {
nk 655 source4/lib/registry/regf.c if (NT_STATUS_IS_ERR(tdr_pull_lh_block(pull, nk, &lh))) {
nk 663 source4/lib/registry/regf.c if (lh.key_count != nk->num_subkeys) {
nk 677 source4/lib/registry/regf.c if (NT_STATUS_IS_ERR(tdr_pull_ri_block(pull, nk, &ri))) {
nk 703 source4/lib/registry/regf.c nk,
nk 725 source4/lib/registry/regf.c nk,
nk 758 source4/lib/registry/regf.c nk->subkeys_offset, data.data[0], data.data[1]));
nk 765 source4/lib/registry/regf.c if (ret->nk->clsname_offset != -1) {
nk 767 source4/lib/registry/regf.c ret->nk->clsname_offset);
nk 770 source4/lib/registry/regf.c ret->nk->clsname_length);
nk 776 source4/lib/registry/regf.c *last_mod_time = ret->nk->last_change;
nk 779 source4/lib/registry/regf.c *name = talloc_steal(ctx, ret->nk->key_name);
nk 835 source4/lib/registry/regf.c struct nk_block *nk = private_data->nk;
nk 838 source4/lib/registry/regf.c data = hbin_get(private_data->hive, nk->subkeys_offset);
nk 852 source4/lib/registry/regf.c if (NT_STATUS_IS_ERR(tdr_pull_li_block(pull, nk, &li))) {
nk 860 source4/lib/registry/regf.c if (li.key_count != nk->num_subkeys) {
nk 866 source4/lib/registry/regf.c W_ERROR_NOT_OK_RETURN(regf_match_subkey_by_name(nk, key,
nk 883 source4/lib/registry/regf.c if (NT_STATUS_IS_ERR(tdr_pull_lf_block(pull, nk, &lf))) {
nk 891 source4/lib/registry/regf.c if (lf.key_count != nk->num_subkeys) {
nk 900 source4/lib/registry/regf.c W_ERROR_NOT_OK_RETURN(regf_match_subkey_by_name(nk,
nk 919 source4/lib/registry/regf.c if (NT_STATUS_IS_ERR(tdr_pull_lh_block(pull, nk, &lh))) {
nk 927 source4/lib/registry/regf.c if (lh.key_count != nk->num_subkeys) {
nk 937 source4/lib/registry/regf.c W_ERROR_NOT_OK_RETURN(regf_match_subkey_by_name(nk,
nk 955 source4/lib/registry/regf.c if (NT_STATUS_IS_ERR(tdr_pull_ri_block(pull, nk, &ri))) {
nk 979 source4/lib/registry/regf.c nk,
nk 988 source4/lib/registry/regf.c W_ERROR_NOT_OK_RETURN(regf_match_subkey_by_name(nk, key,
nk 1000 source4/lib/registry/regf.c nk,
nk 1013 source4/lib/registry/regf.c W_ERROR_NOT_OK_RETURN(regf_match_subkey_by_name(nk, key,
nk 1061 source4/lib/registry/regf.c if (!hbin_get_tdr(regf, private_data->nk->sk_offset, regf,
nk 1096 source4/lib/registry/regf.c hbin_free(regf, private_data->nk->sk_offset);
nk 1113 source4/lib/registry/regf.c private_data->nk->sk_offset = sk_offset;
nk 1121 source4/lib/registry/regf.c private_data->nk);
nk 1142 source4/lib/registry/regf.c private_data->nk->sk_offset = sk_offset;
nk 1147 source4/lib/registry/regf.c private_data->nk->sk_offset, &cur_sk);
nk 1178 source4/lib/registry/regf.c private_data->offset, private_data->nk);
nk 1191 source4/lib/registry/regf.c if (!hbin_get_tdr(regf, private_data->nk->sk_offset, ctx,
nk 1544 source4/lib/registry/regf.c struct nk_block *nk = private_data->nk;
nk 1551 source4/lib/registry/regf.c if (nk->values_offset == -1) {
nk 1555 source4/lib/registry/regf.c values = hbin_get(regf, nk->values_offset);
nk 1557 source4/lib/registry/regf.c for (i = 0; i < nk->num_values; i++) {
nk 1578 source4/lib/registry/regf.c nk->num_values--;
nk 1579 source4/lib/registry/regf.c values.length = (nk->num_values)*4;
nk 1583 source4/lib/registry/regf.c if (nk->num_values == 0) {
nk 1584 source4/lib/registry/regf.c hbin_free(regf, nk->values_offset);
nk 1585 source4/lib/registry/regf.c nk->values_offset = -1;
nk 1587 source4/lib/registry/regf.c nk->values_offset = hbin_store_resize(regf,
nk 1588 source4/lib/registry/regf.c nk->values_offset,
nk 1592 source4/lib/registry/regf.c private_data->offset, nk);
nk 1608 source4/lib/registry/regf.c parent_nk = private_data->nk;
nk 1622 source4/lib/registry/regf.c if (key->nk->subkeys_offset != -1) {
nk 1625 source4/lib/registry/regf.c int i = key->nk->num_subkeys;
nk 1647 source4/lib/registry/regf.c if (key->nk->values_offset != -1) {
nk 1651 source4/lib/registry/regf.c int i = key->nk->num_values;
nk 1687 source4/lib/registry/regf.c if (key->nk->clsname_offset != -1) {
nk 1688 source4/lib/registry/regf.c hbin_free(private_data->hive, key->nk->clsname_offset);
nk 1702 source4/lib/registry/regf.c struct nk_block *parent_nk = private_data->nk, nk;
nk 1708 source4/lib/registry/regf.c nk.header = "nk";
nk 1709 source4/lib/registry/regf.c nk.type = REG_SUB_KEY;
nk 1710 source4/lib/registry/regf.c unix_to_nt_time(&nk.last_change, time(NULL));
nk 1711 source4/lib/registry/regf.c nk.uk1 = 0;
nk 1712 source4/lib/registry/regf.c nk.parent_offset = private_data->offset;
nk 1713 source4/lib/registry/regf.c nk.num_subkeys = 0;
nk 1714 source4/lib/registry/regf.c nk.uk2 = 0;
nk 1715 source4/lib/registry/regf.c nk.subkeys_offset = -1;
nk 1716 source4/lib/registry/regf.c nk.unknown_offset = -1;
nk 1717 source4/lib/registry/regf.c nk.num_values = 0;
nk 1718 source4/lib/registry/regf.c nk.values_offset = -1;
nk 1719 source4/lib/registry/regf.c memset(nk.unk3, 0, 5);
nk 1720 source4/lib/registry/regf.c nk.clsname_offset = -1; /* FIXME: fill in */
nk 1721 source4/lib/registry/regf.c nk.clsname_length = 0;
nk 1722 source4/lib/registry/regf.c nk.key_name = name;
nk 1733 source4/lib/registry/regf.c nk.sk_offset = root->sk_offset;
nk 1737 source4/lib/registry/regf.c offset = hbin_store_tdr(regf, (tdr_push_fn_t) tdr_push_nk_block, &nk);
nk 1750 source4/lib/registry/regf.c nk.parent_offset, parent_nk);
nk 1762 source4/lib/registry/regf.c struct nk_block *nk = private_data->nk;
nk 1771 source4/lib/registry/regf.c if (nk->values_offset != -1) {
nk 1772 source4/lib/registry/regf.c values = hbin_get(regf, nk->values_offset);
nk 1774 source4/lib/registry/regf.c for (i = 0; i < nk->num_values; i++) {
nk 1827 source4/lib/registry/regf.c if (nk->values_offset == -1) {
nk 1828 source4/lib/registry/regf.c nk->values_offset = hbin_store_tdr(regf,
nk 1831 source4/lib/registry/regf.c nk->num_values = 1;
nk 1837 source4/lib/registry/regf.c for (i = 0; i < nk->num_values; i++) {
nk 1847 source4/lib/registry/regf.c value_list.length = (nk->num_values+1)*4;
nk 1850 source4/lib/registry/regf.c nk->num_values+1);
nk 1852 source4/lib/registry/regf.c memcpy(value_list.data, values.data, nk->num_values * 4);
nk 1854 source4/lib/registry/regf.c SIVAL(value_list.data, nk->num_values * 4, vk_offset);
nk 1855 source4/lib/registry/regf.c nk->num_values++;
nk 1856 source4/lib/registry/regf.c nk->values_offset = hbin_store_resize(regf,
nk 1857 source4/lib/registry/regf.c nk->values_offset,
nk 1864 source4/lib/registry/regf.c private_data->offset, nk);
nk 1919 source4/lib/registry/regf.c struct nk_block nk;
nk 1963 source4/lib/registry/regf.c nk.header = "nk";
nk 1964 source4/lib/registry/regf.c nk.type = REG_SUB_KEY;
nk 1965 source4/lib/registry/regf.c unix_to_nt_time(&nk.last_change, time(NULL));
nk 1966 source4/lib/registry/regf.c nk.uk1 = 0;
nk 1967 source4/lib/registry/regf.c nk.parent_offset = -1;
nk 1968 source4/lib/registry/regf.c nk.num_subkeys = 0;
nk 1969 source4/lib/registry/regf.c nk.uk2 = 0;
nk 1970 source4/lib/registry/regf.c nk.subkeys_offset = -1;
nk 1971 source4/lib/registry/regf.c nk.unknown_offset = -1;
nk 1972 source4/lib/registry/regf.c nk.num_values = 0;
nk 1973 source4/lib/registry/regf.c nk.values_offset = -1;
nk 1974 source4/lib/registry/regf.c memset(nk.unk3, 0, 5);
nk 1975 source4/lib/registry/regf.c nk.clsname_offset = -1;
nk 1976 source4/lib/registry/regf.c nk.clsname_length = 0;
nk 1977 source4/lib/registry/regf.c nk.sk_offset = 0x80;
nk 1978 source4/lib/registry/regf.c nk.key_name = "SambaRootKey";
nk 2015 source4/lib/registry/regf.c &nk);
nk 2021 source4/lib/registry/regf.c DEBUG(0, ("Error storing sk block, should be at 0x80, stored at 0x%x\n", nk.sk_offset));