X-Git-Url: https://git.ozlabs.org/?a=blobdiff_plain;f=pppd%2Fchap-new.c;h=10e4507386e277fbdb6413e46bdd80f61a0b783f;hb=c3120199a30977a4da12fd031c1df4a95dec417a;hp=fab82800a7b33950935c8b13a1be41a0982b45dd;hpb=ace9c1c9bd73b7ed5777ec5b066ac61ba4ab2079;p=ppp.git diff --git a/pppd/chap-new.c b/pppd/chap-new.c index fab8280..10e4507 100644 --- a/pppd/chap-new.c +++ b/pppd/chap-new.c @@ -166,6 +166,18 @@ chap_register_digest(struct chap_digest_type *dp) chap_digests = dp; } +/* + * Lookup a digest type by code + */ +struct chap_digest_type * +chap_find_digest(int digest_code) { + struct chap_digest_type *dp = NULL; + for (dp = chap_digests; dp != NULL; dp = dp->next) + if (dp->code == digest_code) + break; + return dp; +} + /* * chap_lowerup - we can start doing stuff now. */ @@ -210,9 +222,8 @@ chap_auth_peer(int unit, char *our_name, int digest_code) error("CHAP: peer authentication already started!"); return; } - for (dp = chap_digests; dp != NULL; dp = dp->next) - if (dp->code == digest_code) - break; + + dp = chap_find_digest(digest_code); if (dp == NULL) fatal("CHAP digest 0x%x requested but not available", digest_code);