On Wednesday, Jan 29, 2003, at 16:39 Europe/Vienna, Gunnar Groetschel wrote:
This is a known bug in the 64 bit Solaris versions. You need to limit date values to 31 bit. In nfs_funcs.c, change the function output_attr() to:Hi I tried to install and run the Versions: Sharity-Light.1.2.tar.gz Sharity-Light.1.1.tar.gz and Sharity-Light.1.1-Solaris2.6-i386.tar.gz from the binaries.I get always the same error Using port xxxxx for NFS. nfs mount /win/pub: [79] Value too large for defined data type Can someone please help me to fix it?
static void output_attr(my_attr_t *ma, fattr *fa)
{
bzero(fa, sizeof(*fa));
fa->type = NFNON;
if((ma->mode & NFSMODE_FMT) == NFSMODE_DIR)
fa->type = NFDIR;
else if((ma->mode & NFSMODE_FMT) == NFSMODE_REG)
fa->type = NFREG;
else if((ma->mode & NFSMODE_FMT) == NFSMODE_LNK)
fa->type = NFLNK;
else if((ma->mode & NFSMODE_FMT) == NFSMODE_CHR)
fa->type = NFCHR;
else if((ma->mode & NFSMODE_FMT) == NFSMODE_BLK)
fa->type = NFBLK;
else if((ma->mode & NFSMODE_FMT) == NFSMODE_SOCK)
fa->type = NFSOCK;
else if((ma->mode & NFSMODE_FMT) == NFSMODE_FIFO)
fa->type = NFFIFO;
else{
eprintf("** output_attr(): file type unknown: mode=0%o\n", ma->mode);
}
fa->mode = ma->mode;
fa->nlink = ma->nlink;
fa->uid = ma->uid;
fa->gid = ma->gid;
fa->size = ma->size;
fa->blocksize = ma->blocksize;
fa->blocks = ma->blocks;
fa->fsid = 562654; /* dummy non zero value */
fa->fileid = ma->fileid;
#ifdef SOLARIS
fa->atime.seconds = ma->atime & 0x7fffffff;
fa->mtime.seconds = ma->mtime & 0x7fffffff;
fa->ctime.seconds = ma->ctime & 0x7fffffff;
#else
fa->atime.seconds = ma->atime;
fa->mtime.seconds = ma->mtime;
fa->ctime.seconds = ma->ctime;
#endif
fa->rdev = ma->rdev;
NDPRINTF(("output_attr(): attributes are:\n"));
NDPRINTF((" type = %d\n", fa->type));
NDPRINTF((" mode = 0%o\n", fa->mode));
NDPRINTF((" nlink = %d\n", fa->nlink));
NDPRINTF((" uid = %d\n", fa->uid));
NDPRINTF((" gid = %d\n", fa->gid));
NDPRINTF((" size = %d\n", fa->size));
NDPRINTF((" blocksize = %d\n", fa->blocksize));
NDPRINTF((" blocks = %d\n", fa->blocks));
NDPRINTF((" fileid = %d\n", fa->fileid));
}
and make sure that you compile with -DSOLARIS.
Regards, Christian.
--
Dipl.-Ing. Christian Starkjohann
Objective Development
mailto:[EMAIL PROTECTED] | http://www.obdev.at/
_______________________________________________
Sharity-talk mailing list
[EMAIL PROTECTED]
To unsubscribe see http://at.obdev.at/mailman/listinfo/sharity-talk
