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));