/*
- * $Id: quota.c,v 1.30 2008-05-16 04:19:41 didg Exp $
+ * $Id: quota.c,v 1.32.2.1 2010-01-02 10:22:32 franklahm Exp $
*
* Copyright (c) 1990,1993 Regents of The University of Michigan.
* All Rights Reserved. See COPYRIGHT.
Abstract out the XFS Quota Manager quota get call.
****************************************************************************/
-static int get_linux_xfs_quota(what, path, euser_id, dqb)
-int what;
-char *path;
-uid_t euser_id;
-struct dqblk *dqb;
+static int get_linux_xfs_quota(int what, char *path, uid_t euser_id, struct dqblk *dqb)
{
int ret = -1;
#ifdef HAVE_LINUX_XQM_H
** For API v2 the results are copied back into a v1 structure.
** Taken from quota-1.4.8 perl module
*/
-static int get_linux_fs_quota( what, path, euser_id, dqb)
-int what;
-char *path;
-uid_t euser_id;
-struct dqblk *dqb;
+static int get_linux_fs_quota(int what, char *path, uid_t euser_id, struct dqblk *dqb)
{
int ret;
* on which "file" resides. Returns NULL on failure.
*/
static char *
-mountp( file, nfs)
-char *file;
-int *nfs;
+mountp( char *file, int *nfs)
{
struct stat sb;
FILE *mtab;
dev_t devno;
static struct mnttab mnt;
- if ( stat( file, &sb ) < 0 ) {
+ if ( lstat( file, &sb ) < 0 ) {
return( NULL );
}
devno = sb.st_dev;
while ( getmntent( mtab, &mnt ) == 0 ) {
/* local fs */
- if ( (stat( mnt.mnt_special, &sb ) == 0) && (devno == sb.st_rdev)) {
+ if ( (lstat( mnt.mnt_special, &sb ) == 0) && (devno == sb.st_rdev)) {
fclose( mtab );
return mnt.mnt_mountp;
}
/* check for nfs. we probably should use
* strcmp(mnt.mnt_fstype, MNTTYPE_NFS), but that's not as fast. */
- if ((stat(mnt.mnt_mountp, &sb) == 0) && (devno == sb.st_dev) &&
+ if ((lstat(mnt.mnt_mountp, &sb) == 0) && (devno == sb.st_dev) &&
strchr(mnt.mnt_special, ':')) {
*nfs = 1;
fclose( mtab );
*/
static char *
-special( file, nfs )
-char *file;
-int *nfs;
+special( char *file, int *nfs)
{
static struct fs_data fsd;
#if (defined(HAVE_SYS_MOUNT_H) && !defined(__linux__)) || defined(BSD4_4) || defined(_IBMR2)
static char *
-special( file, nfs )
-char *file;
-int *nfs;
+special(char *file, int *nfs)
{
static struct statfs sfs;
#else /* BSD4_4 */
static char *
-special( file, nfs )
-char *file;
-int *nfs;
+special(char *file, int *nfs)
{
struct stat sb;
FILE *mtab;
struct mntent *mnt;
int found=0;
- if ( stat( file, &sb ) < 0 ) {
+ if ( lstat( file, &sb ) < 0 ) {
return( NULL );
}
devno = sb.st_dev;
while (( mnt = getmntent( mtab )) != NULL ) {
/* check for local fs */
- if ( (stat( mnt->mnt_fsname, &sb ) == 0) && devno == sb.st_rdev) {
+ if ( (lstat( mnt->mnt_fsname, &sb ) == 0) && devno == sb.st_rdev) {
found = 1;
break;
}
/* check for an nfs mount entry. the alternative is to use
* strcmp(mnt->mnt_type, MNTTYPE_NFS) instead of the strchr. */
- if ((stat(mnt->mnt_dir, &sb) == 0) && (devno == sb.st_dev) &&
+ if ((lstat(mnt->mnt_dir, &sb) == 0) && (devno == sb.st_dev) &&
strchr(mnt->mnt_fsname, ':')) {
*nfs = 1;
found = 1;
#endif /* __svr4__ */
-static int getfsquota(vol, uid, dq)
-struct vol *vol;
-const int uid;
-struct dqblk *dq;
+static int getfsquota(struct vol *vol, const int uid, struct dqblk *dq)
{
struct dqblk dqg;
}
-static int getquota( vol, dq, bsize)
-struct vol *vol;
-struct dqblk *dq;
-const u_int32_t bsize;
+static int getquota( struct vol *vol, struct dqblk *dq, const u_int32_t bsize)
{
char *p;
#endif /* TRU64 */
}
-static int overquota( dqblk )
-struct dqblk *dqblk;
+static int overquota( struct dqblk *dqblk)
{
struct timeval tv;
return( 0 );
}
#else /* ultrix */
- if ( gettimeofday( &tv, 0 ) < 0 ) {
+ if ( gettimeofday( &tv, NULL ) < 0 ) {
LOG(log_error, logtype_afpd, "overquota: gettimeofday: %s", strerror(errno) );
return( AFPERR_PARAM );
}
#define tobytes(a, b) dbtob((VolSpace) (a))
#endif
-int uquota_getvolspace( vol, bfree, btotal, bsize)
-struct vol *vol;
-VolSpace *bfree, *btotal;
-const u_int32_t bsize;
+int uquota_getvolspace( struct vol *vol, VolSpace *bfree, VolSpace *btotal, const u_int32_t bsize)
{
u_int64_t this_bsize;
struct dqblk dqblk;