diff options
-rw-r--r-- | lib/auth_srp_passwd.c | 3 | ||||
-rw-r--r-- | lib/gnutls_int.h | 2 | ||||
-rw-r--r-- | lib/gnutls_srp.c | 5 | ||||
-rw-r--r-- | lib/gnutls_ui.h | 2 |
4 files changed, 7 insertions, 5 deletions
diff --git a/lib/auth_srp_passwd.c b/lib/auth_srp_passwd.c index e04df84299..2365f10286 100644 --- a/lib/auth_srp_passwd.c +++ b/lib/auth_srp_passwd.c @@ -268,7 +268,8 @@ GNUTLS_SRP_PWD_ENTRY *_gnutls_srp_pwd_read_entry( GNUTLS_STATE state, char* user /* use the callback to select a password file */ if (state->gnutls_internals.server_srp_callback!=NULL) { pwd_index = state->gnutls_internals.server_srp_callback( - state, (const char**)cred->password_file, cred->password_files); + state, cred->password_file, cred->password_conf_file, + cred->password_files); if (pwd_index < 0) { gnutls_assert(); diff --git a/lib/gnutls_int.h b/lib/gnutls_int.h index 3e07694e7c..8604ab72cc 100644 --- a/lib/gnutls_int.h +++ b/lib/gnutls_int.h @@ -390,7 +390,7 @@ typedef struct { typedef int certificate_client_select_func(struct GNUTLS_STATE_INT*, const gnutls_datum *, int, const gnutls_datum *, int); typedef int certificate_server_select_func(struct GNUTLS_STATE_INT*, const gnutls_datum *, int); -typedef int srp_server_select_func(struct GNUTLS_STATE_INT*, const char**, int); +typedef int srp_server_select_func(struct GNUTLS_STATE_INT*, const char**, const char**, int); typedef struct { opaque header[HANDSHAKE_HEADER_SIZE]; diff --git a/lib/gnutls_srp.c b/lib/gnutls_srp.c index 6b50177f70..2df5b38470 100644 --- a/lib/gnutls_srp.c +++ b/lib/gnutls_srp.c @@ -442,10 +442,11 @@ int i; * @func: is the callback function * * The callback's function form is: - * int (*callback)(GNUTLS_STATE, const char** pfiles, int npfiles); + * int (*callback)(GNUTLS_STATE, const char** pfiles, const char** pconffiles, int npfiles); * * 'pfiles' contains 'npfiles' char* structures which hold - * the password file name. + * the password file name. 'pconffiles' contain the corresponding + * conf files. * * This function specifies what we, in case of a server, are going * to do when we have to use a password file. If this callback diff --git a/lib/gnutls_ui.h b/lib/gnutls_ui.h index 47292320e1..cc0cff3ef8 100644 --- a/lib/gnutls_ui.h +++ b/lib/gnutls_ui.h @@ -52,7 +52,7 @@ typedef enum GNUTLS_X509_SUBJECT_ALT_NAME { typedef int gnutls_certificate_client_select_func(GNUTLS_STATE, const gnutls_datum *, int, const gnutls_datum *, int); typedef int gnutls_certificate_server_select_func(GNUTLS_STATE, const gnutls_datum *, int); -typedef int gnutls_srp_server_select_func(GNUTLS_STATE, const char **, int); +typedef int gnutls_srp_server_select_func(GNUTLS_STATE, const char **, const char**, int); /* Functions that allow AUTH_INFO structures handling */ |