]> git.ozlabs.org Git - ppp.git/commitdiff
pppd: Make sure we don't return an initialized CHAP Response length
authorPaul Mackerras <paulus@ozlabs.org>
Tue, 20 Aug 2024 07:29:16 +0000 (17:29 +1000)
committerPaul Mackerras <paulus@ozlabs.org>
Tue, 20 Aug 2024 07:31:45 +0000 (17:31 +1000)
If anything goes wrong in preparing a CHAP Response, return a 0-length
response instead of leaving the length field uninitialized.  Also
print a warning message to say that something went wrong.

Signed-off-by: Paul Mackerras <paulus@ozlabs.org>
pppd/chap-md5.c

index d9259d2515517b6eaec6a6637f7c2e8469578ed6..b928ce9f7a8428f884ed289efce9619277168b64 100644 (file)
@@ -112,6 +112,7 @@ chap_md5_make_response(unsigned char *response, int id, char *our_name,
        int challenge_len = *challenge++;
        int hash_len = MD5_DIGEST_LENGTH;
 
+       response[0] = 0;
        PPP_MD_CTX* ctx = PPP_MD_CTX_new();
        if (ctx) {
 
@@ -133,6 +134,8 @@ chap_md5_make_response(unsigned char *response, int id, char *our_name,
                }
                PPP_MD_CTX_free(ctx);
        }
+       if (response[0] == 0)
+               warn("Error occurred in preparing CHAP-Response");
 }
 
 static struct chap_digest_type md5_digest = {