rx: Named values for securityObjectStats types
authorBen Kaduk <kaduk@mit.edu>
Wed, 27 Nov 2013 22:31:16 +0000 (17:31 -0500)
committerBenjamin Kaduk <kaduk@mit.edu>
Sun, 23 Nov 2014 03:48:44 +0000 (22:48 -0500)
Stop using hardcoded constants and use defined symbols for these
values.

Change-Id: I3edcf809572cb8c8360af19dcab7a12c4d1be4a9
Reviewed-on: http://gerrit.openafs.org/10528
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
Tested-by: BuildBot <buildbot@rampaginggeek.com>

src/rx/rx.h
src/rxdebug/rxdebug.c
src/rxkad/rxkad_common.c

index 859fe99..678d921 100644 (file)
@@ -521,8 +521,20 @@ typedef enum {
     RX_SECIDX_K5   = 5,                /** kerberos 5 tickets as tokens. */
 } rx_securityIndex;
 
+/*
+ * We use an enum for the symbol definitions but have no need for a typedef
+ * because the enum is at least as wide as 'int' and these have to fit into
+ * a field of type 'char'.  Direct assigment will do the right thing if the
+ * enum value fits into that type.
+ */
+enum {
+    RX_SECTYPE_UNK = 0,
+    RX_SECTYPE_NULL = 1,
+    RX_SECTYPE_VAB = 2,
+    RX_SECTYPE_KAD = 3,
+};
 struct rx_securityObjectStats {
-    char type;                 /* 0:unk 1:null,2:vab 3:kad */
+    char type;                 /* An RX_SECTYPE_* value */
     char level;
     char sparec[10];           /* force correct alignment */
     afs_int32 flags;           /* 1=>unalloc, 2=>auth, 4=>expired */
index 15f91e2..7b23cbc 100644 (file)
@@ -367,7 +367,7 @@ MainCommand(struct cmd_syndesc *as, void *arock)
                } else {
                    if (tconn.securityIndex != RX_SECIDX_KAD)
                        continue;
-                   if (withSecStats && (tconn.secStats.type == 3)
+                   if (withSecStats && (tconn.secStats.type == RX_SECTYPE_KAD)
                        && (tconn.secStats.level != onlyAuth))
                        continue;
                }
@@ -413,20 +413,20 @@ MainCommand(struct cmd_syndesc *as, void *arock)
 
            if (withSecStats) {
                switch ((int)tconn.secStats.type) {
-               case 0:
+               case RX_SECTYPE_UNK:
                    if (tconn.securityIndex == RX_SECIDX_KAD)
                        printf
                            ("  no GetStats procedure for security object\n");
                    break;
-               case 1:
+               case RX_SECTYPE_NULL:
                    printf("  rxnull level=%d, flags=%d\n",
                           tconn.secStats.level, tconn.secStats.flags);
                    break;
-               case 2:
+               case RX_SECTYPE_VAB:
                    printf("  rxvab level=%d, flags=%d\n",
                           tconn.secStats.level, tconn.secStats.flags);
                    break;
-               case 3:{
+               case RX_SECTYPE_KAD:{
                        char *level;
                        char flags = tconn.secStats.flags;
                        if (tconn.secStats.level == 0)
index 1e46efb..0916854 100644 (file)
@@ -597,7 +597,7 @@ rxkad_GetStats(struct rx_securityClass *aobj, struct rx_connection *aconn,
 {
     void *securityData;
 
-    astats->type = 3;
+    astats->type = RX_SECTYPE_KAD;
     astats->level = ((struct rxkad_cprivate *)aobj->privateData)->level;
 
     securityData = rx_GetSecurityData(aconn);