On Sat, 29-Sep-2018 at 00:44:23 +0000, Sean Eric Fagan wrote:
> Author: sef
> Date: Sat Sep 29 00:44:23 2018
> New Revision: 339008
> URL: https://svnweb.freebsd.org/changeset/base/339008
> 
> Log:
>   MFC r336017,r338799
>   
>   r336017
>       This exposes ZFS user and group quotas via the normal
>       quatactl(2) mechanism.  (Read-only at this point, however.)
>       In particular, this is to allow rpc.rquotad query quotas
>       for NFS mounts, allowing users to see their quotas on the
>       hosts using the datasets.
>   
>       The changes specifically:
>   
>       * Add new RPC entry points for querying quotas.
>       * Changes the library routines to allow non-UFS quotas.

This broke repquota on my UFS. I fixed it with:

--- lib/libutil/quotafile.c.ORI 2018-09-29 11:56:05.000000000 +0200
+++ lib/libutil/quotafile.c     2018-12-04 13:00:04.450826000 +0100
@@ -125,18 +125,18 @@
        strlcpy(qf->fsname, fs->fs_file, sizeof(qf->fsname));
        if (stat(qf->fsname, &st) != 0)
                goto error;
        qf->dev = st.st_dev;
        qcmd = QCMD(Q_GETQUOTASIZE, quotatype);
+       serrno = hasquota(fs, quotatype, qf->qfname, sizeof(qf->qfname));
        if (quotactl(qf->fsname, qcmd, 0, &qf->wordsize) == 0)
                return (qf);
        /* We only check the quota file for ufs */
        if (strcmp(fs->fs_vfstype, "ufs")) {
                errno = 0;
                goto error;
        }
-       serrno = hasquota(fs, quotatype, qf->qfname, sizeof(qf->qfname));
        if (serrno == 0) {
                errno = EOPNOTSUPP;
                goto error;
        }
        qf->accmode = openflags & O_ACCMODE;


Apparently it wants qf->qfname to be filled in by hasquota(). No idea
if calling hasquota() hurts for non-UFS...

        -Andre
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "[email protected]"

Reply via email to