1 #include "session_fixture.h"
2
3 #include <libssh2.h>
4
5 #include <stdio.h>
6
7 static const char *USERNAME = "libssh2"; /* set in Dockerfile */
8 static const char *PASSWORD = "my test password"; /* set in Dockerfile */
9
test(LIBSSH2_SESSION * session)10 int test(LIBSSH2_SESSION *session)
11 {
12 int rc;
13
14 const char *userauth_list =
15 libssh2_userauth_list(session, USERNAME, strlen(USERNAME));
16 if(userauth_list == NULL) {
17 print_last_session_error("libssh2_userauth_list");
18 return 1;
19 }
20
21 if(strstr(userauth_list, "password") == NULL) {
22 fprintf(stderr, "'password' was expected in userauth list: %s\n",
23 userauth_list);
24 return 1;
25 }
26
27 rc = libssh2_userauth_password_ex(session, USERNAME, strlen(USERNAME),
28 PASSWORD, strlen(PASSWORD), NULL);
29 if(rc != 0) {
30 print_last_session_error("libssh2_userauth_password_ex");
31 return 1;
32 }
33
34 if(libssh2_userauth_authenticated(session) == 0) {
35 fprintf(stderr, "Password auth appeared to succeed but "
36 "libssh2_userauth_authenticated returned 0\n");
37 return 1;
38 }
39
40 return 0;
41 }
42