* in the LICENSE file that accompanied this code).
*
* You should have received a copy of the GNU General Public License
- * version 2 along with this program; If not, see [sun.com URL with a
- * copy of GPLv2].
+ * version 2 along with this program; If not, see
+ * http://www.sun.com/software/products/lustre/docs/GPLv2.pdf
*
* Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
* CA 95054 USA or visit www.sun.com if you need additional information or
return ldlm_namespace_cleanup;
else if (!strcmp(arg, "ldlm_replay_locks"))
return ldlm_replay_locks;
-#ifdef HAVE_QUOTA_SUPPORT
- else if (!strcmp(arg, "osc_quota_interface"))
- return &osc_quota_interface;
else if (!strcmp(arg, "mdc_quota_interface"))
return &mdc_quota_interface;
+ else if (!strcmp(arg, "lmv_quota_interface"))
+ return &lmv_quota_interface;
+ else if (!strcmp(arg, "osc_quota_interface"))
+ return &osc_quota_interface;
else if (!strcmp(arg, "lov_quota_interface"))
return &lov_quota_interface;
-#endif
else
return NULL;
}
if (syscall(SYS_read, _rand_dev_fd,
&seed, sizeof(seed)) == sizeof(seed)) {
ll_srand(seed[0], seed[1]);
+ syscall(SYS_close, _rand_dev_fd);
return;
}
syscall(SYS_close, _rand_dev_fd);
#endif
}
-int in_group_p(gid_t gid)
+int cfs_curproc_is_in_groups(gid_t gid)
{
int i;
return 0;
}
+void cfs_cap_raise(cfs_cap_t cap)
+{
+ current->cap_effective |= (1 << cap);
+}
+
+void cfs_cap_lower(cfs_cap_t cap)
+{
+ current->cap_effective &= ~(1 << cap);
+}
+
+int cfs_cap_raised(cfs_cap_t cap)
+{
+ return current->cap_effective & (1 << cap);
+}
+
+cfs_cap_t cfs_curproc_cap_pack(void) {
+ return cfs_current()->cap_effective;
+}
+
+void cfs_curproc_cap_unpack(cfs_cap_t cap) {
+ cfs_current()->cap_effective = cap;
+}
+
+int cfs_capable(cfs_cap_t cap)
+{
+ return cfs_cap_raised(cap);
+}
+
int init_lib_portals()
{
int rc;