Skip to content

Commit 70639ca

Browse files
author
roman
committed
session server ssh BUGFIX uninitialized rc
1 parent 13379cc commit 70639ca

1 file changed

Lines changed: 12 additions & 1 deletion

File tree

src/session_server_ssh.c

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1296,15 +1296,25 @@ nc_server_ssh_auth_pubkey(struct nc_session *session, int local_users_supported,
12961296
return ret;
12971297
}
12981298

1299+
/**
1300+
* @brief Handle authentication request for the Keyboard-interactive method.
1301+
*
1302+
* @param[in] session NETCONF session.
1303+
* @param[in] local_users_supported Whether the server supports local users.
1304+
* @param[in] auth_client Configured client's authentication data.
1305+
* @param[in] msg libssh message.
1306+
* @return 0 if the authentication was successful, 1 if not.
1307+
*/
12991308
static int
13001309
nc_server_ssh_auth_kbdint(struct nc_session *session, int local_users_supported, struct nc_auth_client *auth_client, ssh_message msg)
13011310
{
1302-
int rc;
1311+
int rc = 0;
13031312

13041313
assert(!local_users_supported || auth_client);
13051314

13061315
if (local_users_supported && !auth_client->kb_int_enabled) {
13071316
VRB(session, "User \"%s\" does not have Keyboard-interactive method configured, but a request was received.", session->username);
1317+
return 1;
13081318
} else if (server_opts.interactive_auth_clb) {
13091319
rc = server_opts.interactive_auth_clb(session, session->ti.libssh.session, msg, server_opts.interactive_auth_data);
13101320
} else {
@@ -1316,6 +1326,7 @@ nc_server_ssh_auth_kbdint(struct nc_session *session, int local_users_supported,
13161326
rc = nc_server_ssh_auth_kbdint_system(session, session->username, msg);
13171327
#else
13181328
ERR(NULL, "Keyboard-interactive method not supported.");
1329+
return 1;
13191330
#endif
13201331
}
13211332

0 commit comments

Comments
 (0)