Subject: Re: [netatalk-admins] more than 2 GB
From: wesley.craig@umich.edu
Date: Sun Oct 12 1997 - 23:01:17 EDT
> From: Albrecht Jacobs <aj@klee.architektur.uni-stuttgart.de>
> To: netatalk-admins@umich.edu
> I am new to this list. I am looking for a patch which allows the use of
> netatalk on partitions bigger than 2 GB. I am using 1.4b2. Any chance to
> get this working?
Give the attached patch a try.
:wes
*** etc/afpd/unix.c- 1997/08/17 00:01:46
--- etc/afpd/unix.c 1997/08/19 01:32:59
***************
*** 78,100 ****
#else ultrix
struct statfs sfs;
#endif ultrix
if ( statfs( vol->v_path, &sfs ) < 0 ) {
return( AFPERR_PARAM );
}
-
#ifdef ultrix
! *bfree = sfs.fd_req.bfreen * 1024;
#else
! *bfree = sfs.f_bavail * sfs.f_frsize;
#endif ultrix
#ifdef ultrix
! *btotal = ( sfs.fd_req.btot - ( sfs.fd_req.bfree - sfs.fd_req.bfreen )) *
! 1024;
#else ultrix
! *btotal = ( sfs.f_blocks - ( sfs.f_bfree - sfs.f_bavail )) * sfs.f_frsize;
#endif ultrix
return( AFP_OK );
}
--- 78,113 ----
#else ultrix
struct statfs sfs;
#endif ultrix
+ u_long multi;
if ( statfs( vol->v_path, &sfs ) < 0 ) {
return( AFPERR_PARAM );
}
#ifdef ultrix
! multi = 1024;
! *bfree = sfs.fd_req.bfreen;
#else
! multi = sfs.f_frsize;
! *bfree = sfs.f_bavail;
#endif ultrix
+ if ( *bfree > 0x7fffffff / multi ) {
+ *bfree = 0x7fffffff;
+ } else {
+ *bfree *= multi;
+ }
+
#ifdef ultrix
! *btotal = sfs.fd_req.btot - ( sfs.fd_req.bfree - sfs.fd_req.bfreen );
#else ultrix
! *btotal = sfs.f_blocks - ( sfs.f_bfree - sfs.f_bavail );
#endif ultrix
+
+ if ( *btotal > 0x7fffffff / multi ) {
+ *btotal = 0x7fffffff;
+ } else {
+ *btotal *= multi;
+ }
return( AFP_OK );
}
This archive was generated by hypermail 2b28 : Sat Dec 18 1999 - 16:26:59 EST