/* * Copyright (c) Daniel Reichhard, daniel.reichhard@gmail.com * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. All advertising materials mentioning features or use of this software * must display the following acknowledgement: * This product includes software developed by Daniel Reichhard * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * */ package ejip.nfs; public class NfsConst { public static final int FALSE = 0; public static final int TRUE = 1; public static final int IPPROTO_TCP = 6; public static final int IPPROTO_UDP = 17; //sizes public static final int NFS3_FHSIZE = 64; public static final int NFS3_COOKIEVERFSIZE = 8; public static final int NFS3_CREATEVERFSIZE = 8; public static final int NFS3_WRITEVERFSIZE = 8; //portmapper procedures public static final int PMAPPROC_NULL = 0; public static final int PMAPPROC_SET = 1; public static final int PMAPPROC_UNSET = 2; public static final int PMAPPROC_GETPORT = 3; public static final int PMAPPROC_DUMP = 4; public static final int PMAPPROC_CALLIT = 5; //Name of the Nfs-Client public static final String HOSTNAME = "JOP_NFS_Client"; //NFS program constants public static final int NFS_PROGRAM = 100003; public static final int NFS_VERSION = 3; //MOUNT program constants public static final int MOUNT_PROGRAM = 100005; public static final int MOUNT_VERSION = 3; //NETWORK LOCK MANAGER program constants public static final int NLM_PROGRAM = 100021; public static final int NLM_VERSION = 4; //NFS procedures //Do nothing public static final int NFS3PROC3_NULL = 0; public static final int NFS3PROC3_GETATTR = 1; public static final int NFS3PROC3_SETATTR = 2; public static final int NFS3PROC3_LOOKUP = 3; public static final int NFS3PROC3_ACCESS = 4; public static final int NFS3PROC3_READLINK = 5; public static final int NFS3PROC3_READ = 6; public static final int NFS3PROC3_WRITE = 7; public static final int NFS3PROC3_CREATE = 8; public static final int NFS3PROC3_MKDIR = 9; public static final int NFS3PROC3_SYMLINK = 10; public static final int NFS3PROC3_MKNOD = 11; public static final int NFS3PROC3_REMOVE = 12; public static final int NFS3PROC3_RMDIR = 13; public static final int NFS3PROC3_RENAME = 14; public static final int NFS3PROC3_LINK = 15; public static final int NFS3PROC3_READDIR = 16; public static final int NFS3PROC3_READDIRPLUS = 17; public static final int NFS3PROC3_FSSTAT = 18; public static final int NFS3PROC3_FSINFO = 19; public static final int NFS3PROC3_PATHCONF = 20; public static final int NFS3PROC3_COMMIT = 21; //NFS return values public static final int NFS3_OK = 0; public static final int NFS3ERR_PERM = 1; public static final int NFS3ERR_NOENT = 2; public static final int NFS3ERR_IO = 5; public static final int NFS3ERR_NXIO = 6; public static final int NFS3ERR_ACCES = 13; public static final int NFS3ERR_EXIST = 17; public static final int NFS3ERR_XDEV = 18; public static final int NFS3ERR_NODEV = 19; public static final int NFS3ERR_NOTDIR = 20; public static final int NFS3ERR_ISDIR = 21; public static final int NFS3ERR_INVAL = 22; public static final int NFS3ERR_FBIG = 27; public static final int NFS3ERR_NOSPC = 28; public static final int NFS3ERR_ROFS = 30; public static final int NFS3ERR_MLINK = 31; public static final int NFS3ERR_NAMETOOLONG = 63; public static final int NFS3ERR_NOTEMPTY = 66; public static final int NFS3ERR_DQUOT = 69; public static final int NFS3ERR_STALE = 70; public static final int NFS3ERR_REMOTE = 71; public static final int NFS3ERR_BADHANDLE = 10001; public static final int NFS3ERR_NOT_SYNC = 10002; public static final int NFS3ERR_BAD_COOKIE = 10003; public static final int NFS3ERR_NOTSUPP = 10004; public static final int NFS3ERR_TOOSMALL = 10005; public static final int NFS3ERR_SERVERFAULT = 10006; public static final int NFS3ERR_BADTYPE = 10007; public static final int NFS3ERR_JUKEBOX = 10008; //MOUNT procedures public static final int MOUNTPROC3_NULL = 0; public static final int MOUNTPROC3_MNT = 1; public static final int MOUNTPROC3_DUMP = 2; public static final int MOUNTPROC3_UMNT = 3; public static final int MOUNTPROC3_UMNTALL = 4; public static final int MOUNTPROC3_EXPORT = 5; //mount faults public static final int MNT3_OK = 0; /* no error */ public static final int MNT3ERR_PERM = 1; /* Not owner */ public static final int MNT3ERR_NOENT = 2; /* No such file or directory */ public static final int MNT3ERR_IO = 5; /* I/O error */ public static final int MNT3ERR_ACCES = 13; /* Permission denied */ public static final int MNT3ERR_NOTDIR = 20; /* Not a directory */ public static final int MNT3ERR_INVAL = 22; /* Invalid argument */ public static final int MNT3ERR_NAMETOOLONG = 63; /* Filename too long */ public static final int MNT3ERR_NOTSUPP = 10004; /* Operation not supported */ public static final int MNT3ERR_SERVERFAULT = 10006; /* A failure on the server */ //ftype3 file types public static final byte NF3REG = 1; public static final byte NF3DIR = 2; public static final byte NF3BLK = 3; public static final byte NF3CHR = 4; public static final byte NF3LNK = 5; public static final byte NF3SOCK = 6; public static final byte NF3FIFO = 7; //time_how values public static final int DONT_CHANGE = 0; public static final int SET_TO_SERVER_TIME = 1; public static final int SET_TO_CLIENT_TIME = 2; //valid access types for procedure ACCESS /** * Read data from file or read a directory. */ public static final int ACCESS3_READ = 0x1; /** * Look up a name in a directory (no meaning for non-directory objects). */ public static final int ACCESS3_LOOKUP = 0x2; /** * Rewrite existing file data or modify existing directory entries. */ public static final int ACCESS3_MODIFY = 0x4; /** * Write new data or add directory entries. */ public static final int ACCESS3_EXTEND = 0x8; /** * Delete an existing directory entry. */ public static final int ACCESS3_DELETE = 0x10; /** * Execute file (no meaning for a directory). */ public static final int ACCESS3_EXECUTE = 0x20; //values for FSINFO field "properties" public static final int FSF3_LINK = 0x1; public static final int FSF3_SYMLINK = 0x2; public static final int FSF3_HOMOGENOUS = 0x8; public static final int FSF3_CANSETTIME = 0x10; public static final byte STABLEHOW_UNSTABLE = 0; public static final byte STABLEHOW_DATA_SYNC = 1; public static final byte STABLEHOW_FILE_SYNC = 2; }