SSH user authentication protocol. More...
#include "ssh/ssh.h"
Go to the source code of this file.
Enumerations | |
enum | SshAuthMethod { SSH_AUTH_METHOD_NONE = 0, SSH_AUTH_METHOD_PASSWORD = 1, SSH_AUTH_METHOD_PUBLIC_KEY = 2, SSH_AUTH_METHOD_HOST_BASED = 3 } |
Authentication methods. More... | |
Functions | |
error_t | sshSendUserAuthBanner (SshConnection *connection, const char_t *banner) |
Send SSH_MSG_USERAUTH_BANNER message. More... | |
error_t | sshSendUserAuthRequest (SshConnection *connection) |
Send SSH_MSG_USERAUTH_REQUEST message. More... | |
error_t | sshSendUserAuthSuccess (SshConnection *connection) |
Send SSH_MSG_USERAUTH_SUCCESS message. More... | |
error_t | sshSendUserAuthFailure (SshConnection *connection) |
Send SSH_MSG_USERAUTH_FAILURE message. More... | |
error_t | sshAcceptAuthRequest (SshConnection *connection) |
Accept client's authentication request. More... | |
error_t | sshRejectAuthRequest (SshConnection *connection) |
Reject client's authentication request. More... | |
error_t | sshFormatUserAuthBanner (SshConnection *connection, const char_t *banner, uint8_t *p, size_t *length) |
Format SSH_MSG_USERAUTH_BANNER message. More... | |
error_t | sshFormatUserAuthRequest (SshConnection *connection, uint8_t *message, size_t *length) |
Format SSH_MSG_USERAUTH_REQUEST message. More... | |
error_t | sshFormatNoneAuthParams (SshConnection *connection, uint8_t *p, size_t *written) |
Format "none" method specific fields. More... | |
error_t | sshFormatUserAuthSuccess (SshConnection *connection, uint8_t *p, size_t *length) |
Format SSH_MSG_USERAUTH_SUCCESS message. More... | |
error_t | sshFormatUserAuthFailure (SshConnection *connection, uint8_t *p, size_t *length) |
Format SSH_MSG_USERAUTH_FAILURE message. More... | |
error_t | sshFormatUserAuthMethods (SshConnection *connection, uint8_t *p, size_t *written) |
Format the list of allowed authentication methods. More... | |
error_t | sshParseUserAuthBanner (SshConnection *connection, const uint8_t *message, size_t length) |
Parse SSH_MSG_USERAUTH_BANNER message. More... | |
error_t | sshParseUserAuthRequest (SshConnection *connection, const uint8_t *message, size_t length) |
Parse SSH_MSG_USERAUTH_REQUEST message. More... | |
error_t | sshParseNoneAuthParams (SshConnection *connection, const SshString *userName, const uint8_t *p, size_t length) |
Parse "none" method specific fields. More... | |
error_t | sshParseUserAuthSuccess (SshConnection *connection, const uint8_t *message, size_t length) |
Parse SSH_MSG_USERAUTH_SUCCESS message. More... | |
error_t | sshParseUserAuthFailure (SshConnection *connection, const uint8_t *message, size_t length) |
Parse SSH_MSG_USERAUTH_FAILURE message. More... | |
error_t | sshParseUserAuthMessage (SshConnection *connection, uint8_t type, const uint8_t *message, size_t length) |
Parse authentication method specific method messages. More... | |
SshAuthMethod | sshGetAuthMethod (SshConnection *connection) |
Get current authentication method. More... | |
Detailed Description
SSH user authentication protocol.
License
SPDX-License-Identifier: GPL-2.0-or-later
Copyright (C) 2019-2024 Oryx Embedded SARL. All rights reserved.
This file is part of CycloneSSH 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 ssh_auth.h.
Enumeration Type Documentation
◆ SshAuthMethod
enum SshAuthMethod |
Authentication methods.
Enumerator | |
---|---|
SSH_AUTH_METHOD_NONE | |
SSH_AUTH_METHOD_PASSWORD | |
SSH_AUTH_METHOD_PUBLIC_KEY | |
SSH_AUTH_METHOD_HOST_BASED |
Definition at line 47 of file ssh_auth.h.
Function Documentation
◆ sshAcceptAuthRequest()
error_t sshAcceptAuthRequest | ( | SshConnection * | connection | ) |
Accept client's authentication request.
- Parameters
-
[in] connection Pointer to the SSH connection
- Returns
- Error code
Definition at line 263 of file ssh_auth.c.
◆ sshFormatNoneAuthParams()
error_t sshFormatNoneAuthParams | ( | SshConnection * | connection, |
uint8_t * | p, | ||
size_t * | written | ||
) |
Format "none" method specific fields.
- Parameters
-
[in] connection Pointer to the SSH connection [out] p Output stream where to write the method specific fields [out] written Total number of bytes that have been written
- Returns
- Error code
Definition at line 470 of file ssh_auth.c.
◆ sshFormatUserAuthBanner()
error_t sshFormatUserAuthBanner | ( | SshConnection * | connection, |
const char_t * | banner, | ||
uint8_t * | p, | ||
size_t * | length | ||
) |
Format SSH_MSG_USERAUTH_BANNER message.
- Parameters
-
[in] connection Pointer to the SSH connection [in] banner NULL-terminated string containing the banner message [out] p Buffer where to format the message [out] length Length of the resulting message, in bytes
- Returns
- Error code
Definition at line 327 of file ssh_auth.c.
◆ sshFormatUserAuthFailure()
error_t sshFormatUserAuthFailure | ( | SshConnection * | connection, |
uint8_t * | p, | ||
size_t * | length | ||
) |
Format SSH_MSG_USERAUTH_FAILURE message.
- Parameters
-
[in] connection Pointer to the SSH connection [out] p Buffer where to format the message [out] length Length of the resulting message, in bytes
- Returns
- Error code
Definition at line 516 of file ssh_auth.c.
◆ sshFormatUserAuthMethods()
error_t sshFormatUserAuthMethods | ( | SshConnection * | connection, |
uint8_t * | p, | ||
size_t * | written | ||
) |
Format the list of allowed authentication methods.
- Parameters
-
[in] connection Pointer to the SSH connection [out] p Output stream where to write the name-list [out] written Total number of bytes that have been written
- Returns
- Error code
Definition at line 563 of file ssh_auth.c.
◆ sshFormatUserAuthRequest()
error_t sshFormatUserAuthRequest | ( | SshConnection * | connection, |
uint8_t * | message, | ||
size_t * | length | ||
) |
Format SSH_MSG_USERAUTH_REQUEST message.
- Parameters
-
[in] connection Pointer to the SSH connection [out] message Buffer where to format the message [out] length Length of the resulting message, in bytes
- Returns
- Error code
Definition at line 376 of file ssh_auth.c.
◆ sshFormatUserAuthSuccess()
error_t sshFormatUserAuthSuccess | ( | SshConnection * | connection, |
uint8_t * | p, | ||
size_t * | length | ||
) |
Format SSH_MSG_USERAUTH_SUCCESS message.
- Parameters
-
[in] connection Pointer to the SSH connection [out] p Buffer where to format the message [out] length Length of the resulting message, in bytes
- Returns
- Error code
Definition at line 494 of file ssh_auth.c.
◆ sshGetAuthMethod()
SshAuthMethod sshGetAuthMethod | ( | SshConnection * | connection | ) |
Get current authentication method.
- Returns
- Authentication method (password or public key authentication)
Definition at line 1147 of file ssh_auth.c.
◆ sshParseNoneAuthParams()
error_t sshParseNoneAuthParams | ( | SshConnection * | connection, |
const SshString * | userName, | ||
const uint8_t * | p, | ||
size_t | length | ||
) |
Parse "none" method specific fields.
- Parameters
-
[in] connection Pointer to the SSH connection [in] userName Pointer to the user name [in] p Pointer to method specific fields [in] length Length of the method specific fields, in bytes
- Returns
- Error code
Definition at line 858 of file ssh_auth.c.
◆ sshParseUserAuthBanner()
error_t sshParseUserAuthBanner | ( | SshConnection * | connection, |
const uint8_t * | message, | ||
size_t | length | ||
) |
Parse SSH_MSG_USERAUTH_BANNER message.
- Parameters
-
[in] connection Pointer to the SSH connection [in] message Pointer to message [in] length Length of the message, in bytes
- Returns
- Error code
Definition at line 640 of file ssh_auth.c.
◆ sshParseUserAuthFailure()
error_t sshParseUserAuthFailure | ( | SshConnection * | connection, |
const uint8_t * | message, | ||
size_t | length | ||
) |
Parse SSH_MSG_USERAUTH_FAILURE message.
- Parameters
-
[in] connection Pointer to the SSH connection [in] message Pointer to message [in] length Length of the message, in bytes
- Returns
- Error code
Definition at line 980 of file ssh_auth.c.
◆ sshParseUserAuthMessage()
error_t sshParseUserAuthMessage | ( | SshConnection * | connection, |
uint8_t | type, | ||
const uint8_t * | message, | ||
size_t | length | ||
) |
Parse authentication method specific method messages.
- Parameters
-
[in] connection Pointer to the SSH connection [in] type SSH message type [in] message Pointer to message [in] length Length of the message, in bytes
- Returns
- Error code
Definition at line 1076 of file ssh_auth.c.
◆ sshParseUserAuthRequest()
error_t sshParseUserAuthRequest | ( | SshConnection * | connection, |
const uint8_t * | message, | ||
size_t | length | ||
) |
Parse SSH_MSG_USERAUTH_REQUEST message.
- Parameters
-
[in] connection Pointer to the SSH connection [in] message Pointer to message [in] length Length of the message, in bytes
- Returns
- Error code
Definition at line 717 of file ssh_auth.c.
◆ sshParseUserAuthSuccess()
error_t sshParseUserAuthSuccess | ( | SshConnection * | connection, |
const uint8_t * | message, | ||
size_t | length | ||
) |
Parse SSH_MSG_USERAUTH_SUCCESS message.
- Parameters
-
[in] connection Pointer to the SSH connection [in] message Pointer to message [in] length Length of the message, in bytes
- Returns
- Error code
Definition at line 929 of file ssh_auth.c.
◆ sshRejectAuthRequest()
error_t sshRejectAuthRequest | ( | SshConnection * | connection | ) |
Reject client's authentication request.
- Parameters
-
[in] connection Pointer to the SSH connection
- Returns
- Error code
Definition at line 293 of file ssh_auth.c.
◆ sshSendUserAuthBanner()
error_t sshSendUserAuthBanner | ( | SshConnection * | connection, |
const char_t * | banner | ||
) |
Send SSH_MSG_USERAUTH_BANNER message.
- Parameters
-
[in] connection Pointer to the SSH connection [in] banner NULL-terminated string containing the banner message
- Returns
- Error code
Definition at line 67 of file ssh_auth.c.
◆ sshSendUserAuthFailure()
error_t sshSendUserAuthFailure | ( | SshConnection * | connection | ) |
Send SSH_MSG_USERAUTH_FAILURE message.
- Parameters
-
[in] connection Pointer to the SSH connection
- Returns
- Error code
Definition at line 219 of file ssh_auth.c.
◆ sshSendUserAuthRequest()
error_t sshSendUserAuthRequest | ( | SshConnection * | connection | ) |
Send SSH_MSG_USERAUTH_REQUEST message.
- Parameters
-
[in] connection Pointer to the SSH connection
- Returns
- Error code
Definition at line 109 of file ssh_auth.c.
◆ sshSendUserAuthSuccess()
error_t sshSendUserAuthSuccess | ( | SshConnection * | connection | ) |
Send SSH_MSG_USERAUTH_SUCCESS message.
- Parameters
-
[in] connection Pointer to the SSH connection
- Returns
- Error code
Definition at line 171 of file ssh_auth.c.