summaryrefslogtreecommitdiffstats
path: root/sys/nfs4client/nfs4_idmap.h
diff options
context:
space:
mode:
Diffstat (limited to 'sys/nfs4client/nfs4_idmap.h')
-rw-r--r--sys/nfs4client/nfs4_idmap.h64
1 files changed, 64 insertions, 0 deletions
diff --git a/sys/nfs4client/nfs4_idmap.h b/sys/nfs4client/nfs4_idmap.h
new file mode 100644
index 0000000..86cd01b
--- /dev/null
+++ b/sys/nfs4client/nfs4_idmap.h
@@ -0,0 +1,64 @@
+/* $FreeBSD$ */
+/* $Id: nfs4_idmap.h,v 1.2 2003/11/05 14:58:59 rees Exp $ */
+
+/*
+ * copyright (c) 2003
+ * the regents of the university of michigan
+ * all rights reserved
+ *
+ * permission is granted to use, copy, create derivative works and redistribute
+ * this software and such derivative works for any purpose, so long as the name
+ * of the university of michigan is not used in any advertising or publicity
+ * pertaining to the use or distribution of this software without specific,
+ * written prior authorization. if the above copyright notice or any other
+ * identification of the university of michigan is included in any copy of any
+ * portion of this software, then the disclaimer below must also be included.
+ *
+ * this software is provided as is, without representation from the university
+ * of michigan as to its fitness for any purpose, and without warranty by the
+ * university of michigan of any kind, either express or implied, including
+ * without limitation the implied warranties of merchantability and fitness for
+ * a particular purpose. the regents of the university of michigan shall not be
+ * liable for any damages, including special, indirect, incidental, or
+ * consequential damages, with respect to any claim arising out of or in
+ * connection with the use of the software, even if it has been or is hereafter
+ * advised of the possibility of such damages.
+ */
+
+#ifndef __NFS4_IDMAP_H__
+#define __NFS4_IDMAP_H__
+
+#define IDMAP_TYPE_GID 1
+#define IDMAP_TYPE_UID 2
+#define IDMAP_MAX_TYPE 2
+
+typedef union {
+ uid_t uid;
+ gid_t gid;
+} ident_t;
+
+#define IDMAP_MAXNAMELEN 249
+struct idmap_msg {
+ uint32_t id_type;
+ ident_t id_id;
+ size_t id_namelen;
+ char id_name[IDMAP_MAXNAMELEN + 1];
+};
+
+
+#ifdef _KERNEL
+MALLOC_DECLARE(M_IDMAP);
+
+void idmap_init(void);
+void idmap_uninit(void);
+
+int idmap_gid_to_name(gid_t id, char ** name, size_t * len);
+int idmap_uid_to_name(uid_t id, char ** name, size_t * len);
+
+int idmap_name_to_gid(char *, size_t len, gid_t *);
+int idmap_name_to_uid(char *, size_t len, uid_t *);
+
+#endif /* _KERNEL */
+
+
+#endif /* __NFS4_GSS_H__ */
OpenPOWER on IntegriCloud