Skip to content

Commit

Permalink
adjust whitespace to conform to style guide
Browse files Browse the repository at this point in the history
  • Loading branch information
palmin committed Jan 4, 2020
1 parent 4906578 commit d6094cd
Showing 1 changed file with 29 additions and 19 deletions.
48 changes: 29 additions & 19 deletions src/userauth.c
Expand Up @@ -65,7 +65,8 @@ static char *userauth_list(LIBSSH2_SESSION *session, const char *username,
unsigned int username_len) unsigned int username_len)
{ {
static const unsigned char reply_codes[4] = static const unsigned char reply_codes[4] =
{ SSH_MSG_USERAUTH_SUCCESS, SSH_MSG_USERAUTH_FAILURE, SSH_MSG_USERAUTH_BANNER, 0 }; { SSH_MSG_USERAUTH_SUCCESS, SSH_MSG_USERAUTH_FAILURE,
SSH_MSG_USERAUTH_BANNER, 0 };
/* packet_type(1) + username_len(4) + service_len(4) + /* packet_type(1) + username_len(4) + service_len(4) +
service(14)"ssh-connection" + method_len(4) = 27 */ service(14)"ssh-connection" + method_len(4) = 27 */
unsigned long methods_len; unsigned long methods_len;
Expand Down Expand Up @@ -120,11 +121,12 @@ static char *userauth_list(LIBSSH2_SESSION *session, const char *username,


if(session->userauth_list_state == libssh2_NB_state_sent) { if(session->userauth_list_state == libssh2_NB_state_sent) {
do { do {
rc = _libssh2_packet_requirev(session, reply_codes, rc =
&session->userauth_list_data, _libssh2_packet_requirev(session, reply_codes,
&session->userauth_list_data_len, 0, &session->userauth_list_data,
NULL, 0, &session->userauth_list_data_len, 0,
&session->userauth_list_packet_requirev_state); NULL, 0,
&session->userauth_list_packet_requirev_state);
if(rc == LIBSSH2_ERROR_EAGAIN) { if(rc == LIBSSH2_ERROR_EAGAIN) {
_libssh2_error(session, LIBSSH2_ERROR_EAGAIN, _libssh2_error(session, LIBSSH2_ERROR_EAGAIN,
"Would block requesting userauth list"); "Would block requesting userauth list");
Expand All @@ -135,38 +137,46 @@ static char *userauth_list(LIBSSH2_SESSION *session, const char *username,
session->userauth_list_state = libssh2_NB_state_idle; session->userauth_list_state = libssh2_NB_state_idle;
return NULL; return NULL;
} }
if (session->userauth_list_data[0] == SSH_MSG_USERAUTH_BANNER && (session->userauth_list_data_len >= 5)) { if(session->userauth_list_data[0] == SSH_MSG_USERAUTH_BANNER &&
methods_len = _libssh2_ntohu32(session->userauth_list_data + 1); (session->userauth_list_data_len >= 5)) {

methods_len =
_libssh2_ntohu32(session->userauth_list_data + 1);

/* Cap to 512 bytes. */ /* Cap to 512 bytes. */
if (methods_len > LIBSSH2_USERAUTH_MAX_BANNER) { if(methods_len > LIBSSH2_USERAUTH_MAX_BANNER) {
_libssh2_debug(session, LIBSSH2_TRACE_AUTH, _libssh2_debug(session, LIBSSH2_TRACE_AUTH,
"Banner length %u exceeds max allowed (%u)", "Banner length %u exceeds max allowed (%u)",
methods_len, LIBSSH2_USERAUTH_MAX_BANNER); methods_len, LIBSSH2_USERAUTH_MAX_BANNER);
methods_len = LIBSSH2_USERAUTH_MAX_BANNER - 1; methods_len = LIBSSH2_USERAUTH_MAX_BANNER - 1;
} }


if (!session->userauth_banner) { if(!session->userauth_banner) {
session->userauth_banner = LIBSSH2_ALLOC(session, methods_len + 1); session->userauth_banner = LIBSSH2_ALLOC(session,
methods_len + 1);
} }
else if (session->userauth_banner_len < methods_len) { else if(session->userauth_banner_len < methods_len) {
session->userauth_banner = LIBSSH2_REALLOC(session, session->userauth_banner, methods_len + 1); session->userauth_banner =
LIBSSH2_REALLOC(session, session->userauth_banner,
methods_len + 1);
} }
if (!session->userauth_banner) { if(!session->userauth_banner) {
_libssh2_error(session, LIBSSH2_ERROR_ALLOC, _libssh2_error(session, LIBSSH2_ERROR_ALLOC,
"Unable to allocate memory for userauth_banner"); "Unable to allocate memory for userauth_banner");
continue; continue;
} }
session->userauth_banner_len = methods_len; session->userauth_banner_len = methods_len;


memmove(session->userauth_banner, session->userauth_list_data + 5, methods_len); memmove(session->userauth_banner,
session->userauth_list_data + 5, methods_len);
session->userauth_banner[methods_len] = '\0'; session->userauth_banner[methods_len] = '\0';
_libssh2_debug(session, LIBSSH2_TRACE_AUTH, _libssh2_debug(session, LIBSSH2_TRACE_AUTH,
"Banner: %s", "Banner: %s",
session->userauth_banner); session->userauth_banner);
LIBSSH2_FREE(session, session->userauth_list_data); LIBSSH2_FREE(session, session->userauth_list_data);
} }
else break; else break;
} while (1); } while(1);


if(session->userauth_list_data[0] == SSH_MSG_USERAUTH_SUCCESS) { if(session->userauth_list_data[0] == SSH_MSG_USERAUTH_SUCCESS) {
/* Wow, who'dve thought... */ /* Wow, who'dve thought... */
Expand Down Expand Up @@ -240,7 +250,7 @@ libssh2_userauth_banner(LIBSSH2_SESSION * session,
size_t *banner_len_out) size_t *banner_len_out)
{ {
char *ptr = NULL; char *ptr = NULL;
if (session->userauth_banner) { if(session->userauth_banner) {
ptr = session->userauth_banner; ptr = session->userauth_banner;
*banner_len_out = session->userauth_banner_len; *banner_len_out = session->userauth_banner_len;
} }
Expand Down

0 comments on commit d6094cd

Please sign in to comment.