require '_h2ph_pre.ph';

unless(defined(&__LINUX_FILTER_H__)) {
    eval 'sub __LINUX_FILTER_H__ () {1;}' unless defined(&__LINUX_FILTER_H__);
    eval 'sub BPF_MAJOR_VERSION () {1;}' unless defined(&BPF_MAJOR_VERSION);
    eval 'sub BPF_MINOR_VERSION () {1;}' unless defined(&BPF_MINOR_VERSION);
    eval 'sub BPF_CLASS {
        local($code) = @_;
	    eval q((($code) & 0x7));
    }' unless defined(&BPF_CLASS);
    eval 'sub BPF_LD () {0x;}' unless defined(&BPF_LD);
    eval 'sub BPF_LDX () {0x1;}' unless defined(&BPF_LDX);
    eval 'sub BPF_ST () {0x2;}' unless defined(&BPF_ST);
    eval 'sub BPF_STX () {0x3;}' unless defined(&BPF_STX);
    eval 'sub BPF_ALU () {0x4;}' unless defined(&BPF_ALU);
    eval 'sub BPF_JMP () {0x5;}' unless defined(&BPF_JMP);
    eval 'sub BPF_RET () {0x6;}' unless defined(&BPF_RET);
    eval 'sub BPF_MISC () {0x7;}' unless defined(&BPF_MISC);
    eval 'sub BPF_SIZE {
        local($code) = @_;
	    eval q((($code) & 0x18));
    }' unless defined(&BPF_SIZE);
    eval 'sub BPF_W () {0x;}' unless defined(&BPF_W);
    eval 'sub BPF_H () {0x8;}' unless defined(&BPF_H);
    eval 'sub BPF_B () {0x10;}' unless defined(&BPF_B);
    eval 'sub BPF_MODE {
        local($code) = @_;
	    eval q((($code) & 0xe0));
    }' unless defined(&BPF_MODE);
    eval 'sub BPF_IMM () {0x;}' unless defined(&BPF_IMM);
    eval 'sub BPF_ABS () {0x20;}' unless defined(&BPF_ABS);
    eval 'sub BPF_IND () {0x40;}' unless defined(&BPF_IND);
    eval 'sub BPF_MEM () {0x60;}' unless defined(&BPF_MEM);
    eval 'sub BPF_LEN () {0x80;}' unless defined(&BPF_LEN);
    eval 'sub BPF_MSH () {0xa0;}' unless defined(&BPF_MSH);
    eval 'sub BPF_OP {
        local($code) = @_;
	    eval q((($code) & 0xf0));
    }' unless defined(&BPF_OP);
    eval 'sub BPF_ADD () {0x;}' unless defined(&BPF_ADD);
    eval 'sub BPF_SUB () {0x10;}' unless defined(&BPF_SUB);
    eval 'sub BPF_MUL () {0x20;}' unless defined(&BPF_MUL);
    eval 'sub BPF_DIV () {0x30;}' unless defined(&BPF_DIV);
    eval 'sub BPF_OR () {0x40;}' unless defined(&BPF_OR);
    eval 'sub BPF_AND () {0x50;}' unless defined(&BPF_AND);
    eval 'sub BPF_LSH () {0x60;}' unless defined(&BPF_LSH);
    eval 'sub BPF_RSH () {0x70;}' unless defined(&BPF_RSH);
    eval 'sub BPF_NEG () {0x80;}' unless defined(&BPF_NEG);
    eval 'sub BPF_JA () {0x;}' unless defined(&BPF_JA);
    eval 'sub BPF_JEQ () {0x10;}' unless defined(&BPF_JEQ);
    eval 'sub BPF_JGT () {0x20;}' unless defined(&BPF_JGT);
    eval 'sub BPF_JGE () {0x30;}' unless defined(&BPF_JGE);
    eval 'sub BPF_JSET () {0x40;}' unless defined(&BPF_JSET);
    eval 'sub BPF_SRC {
        local($code) = @_;
	    eval q((($code) & 0x8));
    }' unless defined(&BPF_SRC);
    eval 'sub BPF_K () {0x;}' unless defined(&BPF_K);
    eval 'sub BPF_X () {0x8;}' unless defined(&BPF_X);
    eval 'sub BPF_RVAL {
        local($code) = @_;
	    eval q((($code) & 0x18));
    }' unless defined(&BPF_RVAL);
    eval 'sub BPF_A () {0x10;}' unless defined(&BPF_A);
    eval 'sub BPF_MISCOP {
        local($code) = @_;
	    eval q((($code) & 0xf8));
    }' unless defined(&BPF_MISCOP);
    eval 'sub BPF_TAX () {0x;}' unless defined(&BPF_TAX);
    eval 'sub BPF_TXA () {0x80;}' unless defined(&BPF_TXA);
    unless(defined(&BPF_MAXINSNS)) {
	eval 'sub BPF_MAXINSNS () {4096;}' unless defined(&BPF_MAXINSNS);
    }
    unless(defined(&BPF_STMT)) {
	eval 'sub BPF_STMT {
	    local($code, $k) = @_;
    	    eval q({ ($code), 0, 0, $k });
	}' unless defined(&BPF_STMT);
    }
    unless(defined(&BPF_JUMP)) {
	eval 'sub BPF_JUMP {
	    local($code, $k, $jt, $jf) = @_;
    	    eval q({ ($code), $jt, $jf, $k });
	}' unless defined(&BPF_JUMP);
    }
    eval 'sub BPF_MEMWORDS () {16;}' unless defined(&BPF_MEMWORDS);
    eval 'sub SKF_AD_OFF () {(-0x1000);}' unless defined(&SKF_AD_OFF);
    eval 'sub SKF_AD_PROTOCOL () {0;}' unless defined(&SKF_AD_PROTOCOL);
    eval 'sub SKF_AD_PKTTYPE () {4;}' unless defined(&SKF_AD_PKTTYPE);
    eval 'sub SKF_AD_IFINDEX () {8;}' unless defined(&SKF_AD_IFINDEX);
    eval 'sub SKF_AD_MAX () {12;}' unless defined(&SKF_AD_MAX);
    eval 'sub SKF_NET_OFF () {(-0x100000);}' unless defined(&SKF_NET_OFF);
    eval 'sub SKF_LL_OFF () {(-0x200000);}' unless defined(&SKF_LL_OFF);
}
1;
