require '_h2ph_pre.ph';

no warnings qw(redefine misc);

unless(defined(&_MISCFS_NULLFS_H_)) {
    eval 'sub _MISCFS_NULLFS_H_ () {1;}' unless defined(&_MISCFS_NULLFS_H_);
    require 'miscfs/genfs/layer.ph';
    eval 'sub nulla_target () { ($la->{target});}' unless defined(&nulla_target);
    eval 'sub nulla_export () { ($la->{export});}' unless defined(&nulla_export);
    if(defined(&_KERNEL)) {
	eval 'sub nullm_rootvp () { ($lm->{layerm_rootvp});}' unless defined(&nullm_rootvp);
	eval 'sub nullm_export () { ($lm->{layerm_export});}' unless defined(&nullm_export);
	eval 'sub nullm_flags () { ($lm->{layerm_flags});}' unless defined(&nullm_flags);
	eval 'sub nullm_size () { ($lm->{layerm_size});}' unless defined(&nullm_size);
	eval 'sub nullm_tag () { ($lm->{layerm_tag});}' unless defined(&nullm_tag);
	eval 'sub nullm_bypass () { ($lm->{layerm_bypass});}' unless defined(&nullm_bypass);
	eval 'sub nullm_alloc () { ($lm->{layerm_alloc});}' unless defined(&nullm_alloc);
	eval 'sub nullm_vnodeop_p () { ($lm->{layerm_vnodeop_p});}' unless defined(&nullm_vnodeop_p);
	eval 'sub nullm_node_hashtbl () { ($lm->{layerm_node_hashtbl});}' unless defined(&nullm_node_hashtbl);
	eval 'sub nullm_node_hash () { ($lm->{layerm_node_hash});}' unless defined(&nullm_node_hash);
	eval 'sub nullm_hashlock () { ($lm->{layerm_hashlock});}' unless defined(&nullm_hashlock);
	eval 'sub null_hash () { ($ln->{layer_hash});}' unless defined(&null_hash);
	eval 'sub null_lowervp () { ($ln->{layer_lowervp});}' unless defined(&null_lowervp);
	eval 'sub null_vnode () { ($ln->{layer_vnode});}' unless defined(&null_vnode);
	eval 'sub null_flags () { ($ln->{layer_flags});}' unless defined(&null_flags);
	eval 'sub MOUNTTONULLMOUNT {
	    my($mp) = @_;
    	    eval q(((($mp)-> &mnt_data)));
	}' unless defined(&MOUNTTONULLMOUNT);
    }
}
1;
