]> andersk Git - moira.git/commitdiff
Check the sanity of KERBEROS machine owners, subnet owners, list owners,
authorzacheiss <zacheiss>
Wed, 20 Dec 2000 09:40:09 +0000 (09:40 +0000)
committerzacheiss <zacheiss>
Wed, 20 Dec 2000 09:40:09 +0000 (09:40 +0000)
and list membership acls.

clients/moira/cluster.c
clients/moira/lists.c

index 2525a0f971896a9bb340d9f31af6b96278482007..c8cb8f196678efb9ab6c1b0bee0d9e0a0e683a3d 100644 (file)
@@ -600,6 +600,16 @@ char **AskMCDInfo(char **info, int type, Bool name)
       if (strcmp(info[11], "NONE") &&
          GetValueFromUser("Owner's Name", &info[12]) == SUB_ERROR)
        return NULL;
+      if (!strcmp(info[11], "KERBEROS"))
+         {
+           char *canon;
+
+           mrcl_validate_kerberos_member(info[12], &canon);
+           if (mrcl_get_message())
+             Put_message(mrcl_get_message());
+           free(info[12]);
+           info[12] = canon;
+         }
       if (GetValueFromUser("Administrative comment", &info[13]) == SUB_ERROR)
        return NULL;
       if (GetValueFromUser("Operational comment", &info[14]) == SUB_ERROR)
@@ -655,6 +665,16 @@ char **AskMCDInfo(char **info, int type, Bool name)
       if (strcmp(info[SN_ACE_TYPE], "NONE") &&
          GetValueFromUser("Owner name", &info[SN_ACE_NAME]) == SUB_ERROR)
        return NULL;
+      if (!strcmp(info[SN_ACE_TYPE], "KERBEROS"))
+         {
+           char *canon;
+
+           mrcl_validate_kerberos_member(info[SN_ACE_NAME], &canon);
+           if (mrcl_get_message())
+             Put_message(mrcl_get_message());
+           free(info[SN_ACE_NAME]);
+           info[SN_ACE_NAME] = canon;
+         }
       FreeAndClear(&info[SN_MODTIME], TRUE);
       FreeAndClear(&info[SN_MODBY], TRUE);
       FreeAndClear(&info[SN_MODWITH], TRUE);
index eef4c747e0ad791ef6cb9b7d091ab9bd92325e84..9966676cbef1340c4a45a9657554fc92425b6153 100644 (file)
@@ -243,7 +243,16 @@ char **AskListInfo(char **info, Bool name)
       if (GetValueFromUser(temp_buf, &info[L_ACE_NAME]) == SUB_ERROR)
        return NULL;
     }
-
+  if (!strcasecmp(info[L_ACE_TYPE], "kerberos"))
+    {
+      char *canon;
+      
+      mrcl_validate_kerberos_member(info[L_ACE_NAME], &canon);
+      if (mrcl_get_message())
+       Put_message(mrcl_get_message());
+      free(info[L_ACE_NAME]);
+      info[L_ACE_NAME] = canon;
+    }
   if (GetTypeFromUser("What Type of Membership Administrator", "ace_type",
                      &info[L_MEMACE_TYPE]) == SUB_ERROR)
     return NULL;
@@ -255,7 +264,16 @@ char **AskListInfo(char **info, Bool name)
       if (GetValueFromUser(temp_buf, &info[L_MEMACE_NAME]) == SUB_ERROR)
        return NULL;
     }
+  if (!strcasecmp(info[L_MEMACE_TYPE], "kerberos"))
+    {
+      char *canon;
 
+      mrcl_validate_kerberos_member(info[L_MEMACE_NAME], &canon);
+      if (mrcl_get_message())
+       Put_message(mrcl_get_message());
+      free(info[L_MEMACE_NAME]);
+      info[L_MEMACE_NAME] = canon;
+    }
   if (GetValueFromUser("Description: ", &info[L_DESC]) == SUB_ERROR)
     return NULL;
 
This page took 0.050584 seconds and 5 git commands to generate.