CHAP (Challenge Handshake Authentication Protocol) More...
Go to the source code of this file.
Data Structures | |
struct | ChapFsm |
CHAP finite state machine. More... | |
Macros | |
#define | CHAP_SUPPORT DISABLED |
#define | CHAP_RESTART_TIMER 3000 |
#define | CHAP_MAX_CHALLENGES 5 |
Enumerations | |
enum | ChapState { CHAP_STATE_0_INITIAL = 0, CHAP_STATE_1_STARTED = 1, CHAP_STATE_2_CHALLENGE_SENT = 2, CHAP_STATE_3_CHALLENGE_RCVD = 3, CHAP_STATE_4_RESPONSE_SENT = 4, CHAP_STATE_5_RESPONSE_RCVD = 5, CHAP_STATE_6_SUCCESS_SENT = 6, CHAP_STATE_7_SUCCESS_RCVD = 7, CHAP_STATE_8_FAILURE_SENT = 8, CHAP_STATE_9_FAILURE_RCVD = 9 } |
CHAP states. More... | |
enum | ChapCode { CHAP_CODE_CHALLENGE = 1, CHAP_CODE_RESPONSE = 2, CHAP_CODE_SUCCESS = 3, CHAP_CODE_FAILURE = 4 } |
Code field values. More... | |
enum | ChapAlgoId { CHAP_ALGO_ID_CHAP_MD5 = 5, CHAP_ALGO_ID_MS_CHAP = 128, CHAP_ALGO_ID_MS_CHAP_V2 = 129 } |
CHAP algorithm identifiers. More... | |
Functions | |
error_t | chapStartAuth (PppContext *context) |
Start CHAP authentication. More... | |
error_t | chapAbortAuth (PppContext *context) |
Abort CHAP authentication. More... | |
void | chapTick (PppContext *context) |
CHAP timer handler. More... | |
void | chapProcessPacket (PppContext *context, const PppPacket *packet, size_t length) |
Process an incoming CHAP packet. More... | |
error_t | chapProcessChallenge (PppContext *context, const ChapChallengePacket *challengePacket, size_t length) |
Process Challenge packet. More... | |
error_t | chapProcessResponse (PppContext *context, const ChapResponsePacket *responsePacket, size_t length) |
Process Response packet. More... | |
error_t | chapProcessSuccess (PppContext *context, const ChapSuccessPacket *successPacket, size_t length) |
Process Success packet. More... | |
error_t | chapProcessFailure (PppContext *context, const ChapFailurePacket *failurePacket, size_t length) |
Process Failure packet. More... | |
error_t | chapSendChallenge (PppContext *context) |
Send Challenge packet. More... | |
error_t | chapSendResponse (PppContext *context, const uint8_t *value) |
Send Response packet. More... | |
error_t | chapSendSuccess (PppContext *context) |
Send Success packet. More... | |
error_t | chapSendFailure (PppContext *context) |
Send Failure packet. More... | |
bool_t | chapCheckPassword (PppContext *context, const char_t *password) |
Password verification. More... | |
Variables | |
typedef | __packed_struct |
Challenge packet. More... | |
uint8_t | identifier |
uint16_t | length |
uint8_t | valueSize |
uint8_t | value [] |
ChapChallengePacket | |
ChapResponsePacket | |
uint8_t | message [] |
ChapSuccessPacket | |
ChapFailurePacket | |
Detailed Description
CHAP (Challenge Handshake Authentication Protocol)
License
SPDX-License-Identifier: GPL-2.0-or-later
Copyright (C) 2010-2024 Oryx Embedded SARL. All rights reserved.
This file is part of CycloneTCP Open.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- Version
- 2.4.4
Definition in file chap.h.
Macro Definition Documentation
◆ CHAP_MAX_CHALLENGES
◆ CHAP_RESTART_TIMER
◆ CHAP_SUPPORT
Enumeration Type Documentation
◆ ChapAlgoId
enum ChapAlgoId |
◆ ChapCode
enum ChapCode |
◆ ChapState
enum ChapState |
Function Documentation
◆ chapAbortAuth()
error_t chapAbortAuth | ( | PppContext * | context | ) |
◆ chapCheckPassword()
bool_t chapCheckPassword | ( | PppContext * | context, |
const char_t * | password | ||
) |
◆ chapProcessChallenge()
error_t chapProcessChallenge | ( | PppContext * | context, |
const ChapChallengePacket * | challengePacket, | ||
size_t | length | ||
) |
◆ chapProcessFailure()
error_t chapProcessFailure | ( | PppContext * | context, |
const ChapFailurePacket * | failurePacket, | ||
size_t | length | ||
) |
◆ chapProcessPacket()
void chapProcessPacket | ( | PppContext * | context, |
const PppPacket * | packet, | ||
size_t | length | ||
) |
◆ chapProcessResponse()
error_t chapProcessResponse | ( | PppContext * | context, |
const ChapResponsePacket * | responsePacket, | ||
size_t | length | ||
) |
◆ chapProcessSuccess()
error_t chapProcessSuccess | ( | PppContext * | context, |
const ChapSuccessPacket * | successPacket, | ||
size_t | length | ||
) |
◆ chapSendChallenge()
error_t chapSendChallenge | ( | PppContext * | context | ) |
◆ chapSendFailure()
error_t chapSendFailure | ( | PppContext * | context | ) |
◆ chapSendResponse()
error_t chapSendResponse | ( | PppContext * | context, |
const uint8_t * | value | ||
) |
◆ chapSendSuccess()
error_t chapSendSuccess | ( | PppContext * | context | ) |
◆ chapStartAuth()
error_t chapStartAuth | ( | PppContext * | context | ) |
◆ chapTick()
void chapTick | ( | PppContext * | context | ) |
Variable Documentation
◆ __packed_struct
typedef __packed_struct |