Lines Matching refs:policy

111 static void free_crypt_policy(struct crypt_policy_s *policy);
116 const struct crypt_policy_s *policy);
220 struct crypt_policy_s *policy = NULL; in crypt_gensalt() local
232 policy = getcryptpolicy(); in crypt_gensalt()
233 if (policy == NULL) { in crypt_gensalt()
239 if (!alg_valid(algname, policy)) { in crypt_gensalt()
241 algname = strdup(policy->cp_default); in crypt_gensalt()
260 free_crypt_policy(policy); in crypt_gensalt()
374 struct crypt_policy_s *policy; in getcryptpolicy() local
380 policy = malloc(sizeof (struct crypt_policy_s)); in getcryptpolicy()
381 if (policy == NULL) { in getcryptpolicy()
384 policy->cp_default = NULL; in getcryptpolicy()
385 policy->cp_allow = NULL; in getcryptpolicy()
386 policy->cp_deny = NULL; in getcryptpolicy()
392 if (policy->cp_default != NULL) { in getcryptpolicy()
395 policy->cp_default = getval(line); in getcryptpolicy()
400 if (policy->cp_deny != NULL) { in getcryptpolicy()
402 } else if (policy->cp_allow != NULL) { in getcryptpolicy()
406 policy->cp_allow = getval(line); in getcryptpolicy()
411 if (policy->cp_allow != NULL) { in getcryptpolicy()
413 } else if (policy->cp_deny != NULL) { in getcryptpolicy()
417 policy->cp_deny = getval(line); in getcryptpolicy()
423 if (policy->cp_default == NULL) { in getcryptpolicy()
424 policy->cp_default = strdup(CRYPT_UNIX); in getcryptpolicy()
425 if (policy->cp_default == NULL) in getcryptpolicy()
426 free_crypt_policy(policy); in getcryptpolicy()
429 return (policy); in getcryptpolicy()
437 alg_valid(const char *algname, const struct crypt_policy_s *policy) in alg_valid() argument
444 if ((algname == NULL) || (policy == NULL)) { in alg_valid()
448 if (strcmp(algname, policy->cp_default) == 0) { in alg_valid()
452 if (policy->cp_deny != NULL) { in alg_valid()
453 list = policy->cp_deny; in alg_valid()
455 } else if (policy->cp_allow != NULL) { in alg_valid()
456 list = policy->cp_allow; in alg_valid()
705 free_crypt_policy(struct crypt_policy_s *policy) in free_crypt_policy() argument
707 if (policy == NULL) in free_crypt_policy()
710 if (policy->cp_default != NULL) { in free_crypt_policy()
711 bzero(policy->cp_default, strlen(policy->cp_default)); in free_crypt_policy()
712 free(policy->cp_default); in free_crypt_policy()
713 policy->cp_default = NULL; in free_crypt_policy()
716 if (policy->cp_allow != NULL) { in free_crypt_policy()
717 bzero(policy->cp_allow, strlen(policy->cp_allow)); in free_crypt_policy()
718 free(policy->cp_allow); in free_crypt_policy()
719 policy->cp_allow = NULL; in free_crypt_policy()
722 if (policy->cp_deny != NULL) { in free_crypt_policy()
723 bzero(policy->cp_deny, strlen(policy->cp_deny)); in free_crypt_policy()
724 free(policy->cp_deny); in free_crypt_policy()
725 policy->cp_deny = NULL; in free_crypt_policy()
728 free(policy); in free_crypt_policy()