Whamcloud - gitweb
LU-791 obdfilter: Don't clear OBD_MD_FLFLAGS mistakenly
[fs/lustre-release.git] / lustre / utils / gss / lgss_utils.h
index be9ae5a..0bec168 100644 (file)
@@ -2,8 +2,9 @@
  * vim:expandtab:shiftwidth=8:tabstop=8:
  *
  * Modifications for Lustre
- * Copyright 2007, Cluster File Systems, Inc.
- * All rights reserved
+ *
+ * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
+ *
  * Author: Eric Mei <ericm@clusterfs.com>
  */
 
 #include <stdint.h>
 #include <gssapi/gssapi.h>
 
-#ifndef likely
-#define likely(exp)             (exp)
-#endif
-
-#ifndef unlikely
-#define unlikely(exp)           (exp)
-#endif
+#include <libcfs/libcfs.h>
 
-#define LGSS_SVC_MDS_STR        "lustre_mds"
-#define LGSS_SVC_OST_STR        "lustre_oss"
 #define LGSS_SVC_MGS_STR        "lustre_mgs"
+#define LGSS_SVC_MDS_STR        "lustre_mds"
+#define LGSS_SVC_OSS_STR        "lustre_oss"
 #define LGSS_USR_ROOT_STR       "lustre_root"
 
 typedef enum {
-        LGSS_SVC_MDS    = 0,
-        LGSS_SVC_OSS    = 1,
-        LGSS_SVC_MGS    = 2,
+        LGSS_SVC_MGS    = 0,
+        LGSS_SVC_MDS    = 1,
+        LGSS_SVC_OSS    = 2,
         LGSS_SVC_MAX
 } lgss_svc_t;
 
@@ -101,6 +96,8 @@ typedef enum {
 
 extern loglevel_t g_log_level;
 
+void lgss_set_loglevel(loglevel_t level);
+
 void __logmsg(loglevel_t level, const char *func, const char *format, ...);
 void __logmsg_gss(loglevel_t level, const char *func, const gss_OID mech,
                   uint32_t major, uint32_t minor, const char *format, ...);
@@ -120,7 +117,7 @@ do {                                                                    \
 
 #define lassert(exp)                                                    \
 do {                                                                    \
-        if ((int)(exp) == 0) {                                          \
+        if (!(exp)) {                                                   \
                 logmsg(LL_ERR, "ASSERTION FAILED: %s", #exp);           \
                 exit(-1);                                               \
         }                                                               \
@@ -163,10 +160,17 @@ struct lgss_mech_type {
         int                (*lmt_using_cred)(struct lgss_cred *cred);
 };
 
+enum {
+        LGSS_ROOT_CRED_ROOT     = 0x01,
+        LGSS_ROOT_CRED_MDT      = 0x02,
+        LGSS_ROOT_CRED_OST      = 0x04,
+
+        LGSS_ROOT_CRED_NR       = 3
+};
+
 struct lgss_cred {
         int                     lc_uid;
-        unsigned int            lc_fl_root:1,
-                                lc_fl_mds:1;
+        unsigned int            lc_root_flags;
         uint64_t                lc_tgt_nid;
         uint32_t                lc_tgt_svc;