On Thu, Aug 02, 2007 at 05:12:07PM +0300, Timo Sirainen wrote: > The other rquota patches had authunix_create_default() call. Is this > needed/useful?
Without this, we get (Solaris 8 client talking to Solaris 10 rquotad): > IMAP(xxx): quota-fs: permission denied to rquota service After adding a call to authunix_create_default(), quota reporting works. I've attached patches (against 1.0.3 with the rquota support applied) to add auth support and to build the necessary XDR bits with rpcgen; the latter could probably use some work, since it assumes the availability of rpcgen and that the rquota.x file is in /usr/include/rpcsvc. -Steven Luo
diff -urpN dovecot-1.0.3/src/plugins/quota/quota-fs.c dovecot-1.0.3-1/src/plugins/quota/quota-fs.c --- dovecot-1.0.3/src/plugins/quota/quota-fs.c 2007-08-03 18:59:08.000000000 -0700 +++ dovecot-1.0.3-1/src/plugins/quota/quota-fs.c 2007-08-03 18:58:39.000000000 -0700 @@ -224,6 +224,10 @@ static int do_rquota(struct fs_quota_roo return -1; } + /* Establish some RPC credentials */ + auth_destroy(cl->cl_auth); + cl->cl_auth = authunix_create_default(); + /* make the rquota call on the remote host */ args.gqa_pathp = path; args.gqa_uid = root->uid; @@ -236,6 +240,7 @@ static int do_rquota(struct fs_quota_roo timeout); /* the result has been deserialized, let the client go */ + auth_destroy(cl->cl_auth); clnt_destroy(cl); if (call_status != RPC_SUCCESS) {
diff -urN dovecot-1.0.3/src/plugins/quota/Makefile.am dovecot-1.0.3-1/src/plugins/quota/Makefile.am --- dovecot-1.0.3/src/plugins/quota/Makefile.am 2007-07-29 23:15:04.000000000 -0700 +++ dovecot-1.0.3-1/src/plugins/quota/Makefile.am 2007-08-03 14:43:33.000000000 -0700 @@ -27,6 +27,13 @@ quota-plugin.c \ quota-storage.c +if HAVE_RQUOTA +lib10_quota_plugin_la_SOURCES += rquota_xdr.c + +rquota_xdr.c: + rpcgen -o rquota_xdr.c -c /usr/include/rpcsvc/rquota.x +endif + noinst_HEADERS = \ quota.h \ quota-fs.h \
signature.asc
Description: Digital signature