require '_h2ph_pre.ph';

no warnings 'redefine';

unless(defined(&_xmsg_h)) {
    eval 'sub _xmsg_h () {1;}' unless defined(&_xmsg_h);
    eval 'sub NNPFS_VERSION () {18;}' unless defined(&NNPFS_VERSION);
    require 'xfs/xfs_attr.ph';
    eval 'sub MAX_XMSG_SIZE () {(1024*64);}' unless defined(&MAX_XMSG_SIZE);
    eval 'sub MAXHANDLE () {(4*4);}' unless defined(&MAXHANDLE);
    eval 'sub MAXRIGHTS () {8;}' unless defined(&MAXRIGHTS);
    eval 'sub NNPFS_ANONYMOUSID () {32766;}' unless defined(&NNPFS_ANONYMOUSID);
    eval 'sub xfs_handle_eq {
        my($p, $q) = @_;
	    eval q((($p)-> &a == ($q)-> &a  && ($p)-> &b == ($q)-> &b  && ($p)-> &c == ($q)-> &c  && ($p)-> &d == ($q)-> &d));
    }' unless defined(&xfs_handle_eq);
    eval 'sub CACHEHANDLESIZE () {80;}' unless defined(&CACHEHANDLESIZE);
    eval 'sub NNPFS_OPEN_MASK () {0xf;}' unless defined(&NNPFS_OPEN_MASK);
    eval 'sub NNPFS_OPEN_NR () {0x1;}' unless defined(&NNPFS_OPEN_NR);
    eval 'sub NNPFS_OPEN_SR () {0x2;}' unless defined(&NNPFS_OPEN_SR);
    eval 'sub NNPFS_OPEN_NW () {0x4;}' unless defined(&NNPFS_OPEN_NW);
    eval 'sub NNPFS_OPEN_EW () {0x8;}' unless defined(&NNPFS_OPEN_EW);
    eval 'sub NNPFS_ATTR_MASK () {0x30;}' unless defined(&NNPFS_ATTR_MASK);
    eval 'sub NNPFS_ATTR_R () {0x10;}' unless defined(&NNPFS_ATTR_R);
    eval 'sub NNPFS_ATTR_W () {0x20;}' unless defined(&NNPFS_ATTR_W);
    eval 'sub NNPFS_DATA_MASK () {0xc0;}' unless defined(&NNPFS_DATA_MASK);
    eval 'sub NNPFS_DATA_R () {0x40;}' unless defined(&NNPFS_DATA_R);
    eval 'sub NNPFS_DATA_W () {0x80;}' unless defined(&NNPFS_DATA_W);
    eval 'sub NNPFS_LOCK_MASK () {0x300;}' unless defined(&NNPFS_LOCK_MASK);
    eval 'sub NNPFS_LOCK_R () {0x100;}' unless defined(&NNPFS_LOCK_R);
    eval 'sub NNPFS_LOCK_W () {0x200;}' unless defined(&NNPFS_LOCK_W);
    eval 'sub NNPFS_ATTR_VALID () { &NNPFS_ATTR_R;}' unless defined(&NNPFS_ATTR_VALID);
    eval 'sub NNPFS_DATA_VALID () { &NNPFS_DATA_W;}' unless defined(&NNPFS_DATA_VALID);
    eval 'sub NNPFS_DATA_DIRTY () {0x1;}' unless defined(&NNPFS_DATA_DIRTY);
    eval 'sub NNPFS_ATTR_DIRTY () {0x2;}' unless defined(&NNPFS_ATTR_DIRTY);
    eval 'sub NNPFS_AFSDIR () {0x4;}' unless defined(&NNPFS_AFSDIR);
    eval 'sub NNPFS_STALE () {0x8;}' unless defined(&NNPFS_STALE);
    eval 'sub NNPFS_XDELETED () {0x10;}' unless defined(&NNPFS_XDELETED);
    eval 'sub NNPFS_VMOPEN () {0x20;}' unless defined(&NNPFS_VMOPEN);
    eval 'sub NNPFS_TOKEN_GOT {
        my($xn, $tok) = @_;
	    eval q((($xn)-> &tokens & ($tok)));
    }' unless defined(&NNPFS_TOKEN_GOT);
    eval 'sub NNPFS_TOKEN_GOT_ANY {
        my($xn, $tok) = @_;
	    eval q((($xn)-> &tokens & ($tok)));
    }' unless defined(&NNPFS_TOKEN_GOT_ANY);
    eval 'sub NNPFS_TOKEN_GOT_ALL {
        my($xn, $tok) = @_;
	    eval q(((($xn)-> &tokens & ($tok)) == ($tok)));
    }' unless defined(&NNPFS_TOKEN_GOT_ALL);
    eval 'sub NNPFS_TOKEN_SET {
        my($xn, $tok, $mask) = @_;
	    eval q((($xn)-> &tokens |= (($tok) & ($mask))));
    }' unless defined(&NNPFS_TOKEN_SET);
    eval 'sub NNPFS_TOKEN_CLEAR {
        my($xn, $tok, $mask) = @_;
	    eval q((($xn)-> &tokens &= ~(($tok) & ($mask))));
    }' unless defined(&NNPFS_TOKEN_CLEAR);
    eval 'sub NNPFS_RIGHT_R () {0x1;}' unless defined(&NNPFS_RIGHT_R);
    eval 'sub NNPFS_RIGHT_W () {0x2;}' unless defined(&NNPFS_RIGHT_W);
    eval 'sub NNPFS_RIGHT_X () {0x4;}' unless defined(&NNPFS_RIGHT_X);
    eval 'sub NNPFS_MAX_NAME () {256;}' unless defined(&NNPFS_MAX_NAME);
    eval 'sub NNPFS_MAX_SYMLINK_CONTENT () {2048;}' unless defined(&NNPFS_MAX_SYMLINK_CONTENT);
    eval("sub NNPFS_READ () { 0x01; }") unless defined(&NNPFS_READ);
    eval("sub NNPFS_WRITE () { 0x02; }") unless defined(&NNPFS_WRITE);
    eval("sub NNPFS_NONBLOCK () { 0x04; }") unless defined(&NNPFS_NONBLOCK);
    eval("sub NNPFS_APPEND () { 0x08; }") unless defined(&NNPFS_APPEND);
    eval("sub NNPFS_FSYNC () { 0x10; }") unless defined(&NNPFS_FSYNC);
    eval("sub NNPFS_NOREFS () { 1; }") unless defined(&NNPFS_NOREFS);
    eval("sub NNPFS_DELETE () { 2; }") unless defined(&NNPFS_DELETE);
    eval("sub NNPFS_ID_INVALID_DNLC () { 0x01; }") unless defined(&NNPFS_ID_INVALID_DNLC);
    eval("sub NNPFS_ID_AFSDIR () { 0x02; }") unless defined(&NNPFS_ID_AFSDIR);
    eval("sub NNPFS_ID_HANDLE_VALID () { 0x04; }") unless defined(&NNPFS_ID_HANDLE_VALID);
    eval 'sub NNPFS_MSG_VERSION () {0;}' unless defined(&NNPFS_MSG_VERSION);
    eval 'sub NNPFS_MSG_WAKEUP () {1;}' unless defined(&NNPFS_MSG_WAKEUP);
    eval 'sub NNPFS_MSG_GETROOT () {2;}' unless defined(&NNPFS_MSG_GETROOT);
    eval 'sub NNPFS_MSG_INSTALLROOT () {3;}' unless defined(&NNPFS_MSG_INSTALLROOT);
    eval 'sub NNPFS_MSG_GETNODE () {4;}' unless defined(&NNPFS_MSG_GETNODE);
    eval 'sub NNPFS_MSG_INSTALLNODE () {5;}' unless defined(&NNPFS_MSG_INSTALLNODE);
    eval 'sub NNPFS_MSG_GETATTR () {6;}' unless defined(&NNPFS_MSG_GETATTR);
    eval 'sub NNPFS_MSG_INSTALLATTR () {7;}' unless defined(&NNPFS_MSG_INSTALLATTR);
    eval 'sub NNPFS_MSG_GETDATA () {8;}' unless defined(&NNPFS_MSG_GETDATA);
    eval 'sub NNPFS_MSG_INSTALLDATA () {9;}' unless defined(&NNPFS_MSG_INSTALLDATA);
    eval 'sub NNPFS_MSG_INACTIVENODE () {10;}' unless defined(&NNPFS_MSG_INACTIVENODE);
    eval 'sub NNPFS_MSG_INVALIDNODE () {11;}' unless defined(&NNPFS_MSG_INVALIDNODE);
    eval 'sub NNPFS_MSG_OPEN () {12;}' unless defined(&NNPFS_MSG_OPEN);
    eval 'sub NNPFS_MSG_PUTDATA () {13;}' unless defined(&NNPFS_MSG_PUTDATA);
    eval 'sub NNPFS_MSG_PUTATTR () {14;}' unless defined(&NNPFS_MSG_PUTATTR);
    eval 'sub NNPFS_MSG_CREATE () {15;}' unless defined(&NNPFS_MSG_CREATE);
    eval 'sub NNPFS_MSG_MKDIR () {16;}' unless defined(&NNPFS_MSG_MKDIR);
    eval 'sub NNPFS_MSG_LINK () {17;}' unless defined(&NNPFS_MSG_LINK);
    eval 'sub NNPFS_MSG_SYMLINK () {18;}' unless defined(&NNPFS_MSG_SYMLINK);
    eval 'sub NNPFS_MSG_REMOVE () {19;}' unless defined(&NNPFS_MSG_REMOVE);
    eval 'sub NNPFS_MSG_RMDIR () {20;}' unless defined(&NNPFS_MSG_RMDIR);
    eval 'sub NNPFS_MSG_RENAME () {21;}' unless defined(&NNPFS_MSG_RENAME);
    eval 'sub NNPFS_MSG_PIOCTL () {22;}' unless defined(&NNPFS_MSG_PIOCTL);
    eval 'sub NNPFS_MSG_WAKEUP_DATA () {23;}' unless defined(&NNPFS_MSG_WAKEUP_DATA);
    eval 'sub NNPFS_MSG_UPDATEFID () {24;}' unless defined(&NNPFS_MSG_UPDATEFID);
    eval 'sub NNPFS_MSG_ADVLOCK () {25;}' unless defined(&NNPFS_MSG_ADVLOCK);
    eval 'sub NNPFS_MSG_GC_NODES () {26;}' unless defined(&NNPFS_MSG_GC_NODES);
    eval 'sub NNPFS_MSG_COUNT () {27;}' unless defined(&NNPFS_MSG_COUNT);
    eval 'sub NNPFS_MSG_MAX_DATASIZE () {2048;}' unless defined(&NNPFS_MSG_MAX_DATASIZE);
    eval 'sub NNPFS_WR_LOCK () {1;}' unless defined(&NNPFS_WR_LOCK);
    eval 'sub NNPFS_RD_LOCK () {2;}' unless defined(&NNPFS_RD_LOCK);
    eval 'sub NNPFS_UN_LOCK () {3;}' unless defined(&NNPFS_UN_LOCK);
    eval 'sub NNPFS_BR_LOCK () {4;}' unless defined(&NNPFS_BR_LOCK);
    eval 'sub NNPFS_GC_NODES_MAX_HANDLE () {50;}' unless defined(&NNPFS_GC_NODES_MAX_HANDLE);
    if(0) {
    }
    eval 'sub NNPFS_BGN_LAZY () {0x1;}' unless defined(&NNPFS_BGN_LAZY);
}
1;
