void ChapMS(chap_state *cstate, u_char *rchallenge, char *secret, int secret_len, MS_ChapResponse *response) { #if 0 CHAPDEBUG((LOG_INFO, "ChapMS: secret is '%.*s'", secret_len, secret)); #endif BZERO(response, sizeof(*response)); ChapMS_NT(rchallenge, secret, secret_len, response->NTResp); #ifdef MSLANMAN ChapMS_LANMan(rchallenge, secret, secret_len, response); /* preferred method is set by option */ response->UseNT[0] = !ms_lanman; #else response->UseNT[0] = 1; #endif cstate->resp_length = MS_CHAP_RESPONSE_LEN; #ifdef MPPE Set_Start_Key(rchallenge, secret, secret_len); mppe_keys_set = 1; #endif }
static void ChapMS(ppp_pcb *pcb, const u_char *rchallenge, const char *secret, int secret_len, unsigned char *response) { #if !MPPE_SUPPORT LWIP_UNUSED_ARG(pcb); #endif /* !MPPE_SUPPORT */ BZERO(response, MS_CHAP_RESPONSE_LEN); ChapMS_NT(rchallenge, secret, secret_len, &response[MS_CHAP_NTRESP]); #ifdef MSLANMAN ChapMS_LANMan(rchallenge, secret, secret_len, &response[MS_CHAP_LANMANRESP]); /* preferred method is set by option */ response[MS_CHAP_USENT] = !ms_lanman; #else response[MS_CHAP_USENT] = 1; #endif #if MPPE_SUPPORT Set_Start_Key(pcb, rchallenge, secret, secret_len); #endif /* MPPE_SUPPORT */ }