summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Schneider <mail@cynapses.org>2009-07-21 10:34:21 +0200
committerAndreas Schneider <mail@cynapses.org>2009-07-21 10:34:21 +0200
commit41a8fb5810759118d93bee30a254ecf4863437b5 (patch)
tree81c960097719c1d81d5b9dc330908e4c9aa05962
parent8843d8b68d180dbc3b0edbfb47ded3fadbe86988 (diff)
downloadlibssh-41a8fb5810759118d93bee30a254ecf4863437b5.tar.gz
libssh-41a8fb5810759118d93bee30a254ecf4863437b5.tar.xz
libssh-41a8fb5810759118d93bee30a254ecf4863437b5.zip
Make the ssh_userauth_kbdint functions to get the prompts const.
They shouldn't be modified or free'd by a user.
-rw-r--r--include/libssh/libssh.h6
-rw-r--r--libssh/auth.c6
-rw-r--r--sample.c3
3 files changed, 8 insertions, 7 deletions
diff --git a/include/libssh/libssh.h b/include/libssh/libssh.h
index bc58eeb..2f1d2fc 100644
--- a/include/libssh/libssh.h
+++ b/include/libssh/libssh.h
@@ -370,9 +370,9 @@ int ssh_userauth_agent_pubkey(SSH_SESSION *session, const char *username,
int ssh_userauth_autopubkey(SSH_SESSION *session, const char *passphrase);
int ssh_userauth_kbdint(SSH_SESSION *session, const char *user, const char *submethods);
int ssh_userauth_kbdint_getnprompts(SSH_SESSION *session);
-char *ssh_userauth_kbdint_getname(SSH_SESSION *session);
-char *ssh_userauth_kbdint_getinstruction(SSH_SESSION *session);
-char *ssh_userauth_kbdint_getprompt(SSH_SESSION *session, unsigned int i, char *echo);
+const char *ssh_userauth_kbdint_getname(SSH_SESSION *session);
+const char *ssh_userauth_kbdint_getinstruction(SSH_SESSION *session);
+const char *ssh_userauth_kbdint_getprompt(SSH_SESSION *session, unsigned int i, char *echo);
int ssh_userauth_kbdint_setanswer(SSH_SESSION *session, unsigned int i,
const char *answer);
diff --git a/libssh/auth.c b/libssh/auth.c
index 752341d..aadba0b 100644
--- a/libssh/auth.c
+++ b/libssh/auth.c
@@ -1417,7 +1417,7 @@ int ssh_userauth_kbdint_getnprompts(SSH_SESSION *session) {
*
* @returns The name of the message block. Do not free it.
*/
-char *ssh_userauth_kbdint_getname(SSH_SESSION *session) {
+const char *ssh_userauth_kbdint_getname(SSH_SESSION *session) {
return session->kbdint->name;
}
@@ -1432,7 +1432,7 @@ char *ssh_userauth_kbdint_getname(SSH_SESSION *session) {
* @returns The instruction of the message block.
*/
-char *ssh_userauth_kbdint_getinstruction(SSH_SESSION *session) {
+const char *ssh_userauth_kbdint_getinstruction(SSH_SESSION *session) {
return session->kbdint->instruction;
}
@@ -1452,7 +1452,7 @@ char *ssh_userauth_kbdint_getinstruction(SSH_SESSION *session) {
*
* @returns A pointer to the prompt. Do not free it.
*/
-char *ssh_userauth_kbdint_getprompt(SSH_SESSION *session, unsigned int i,
+const char *ssh_userauth_kbdint_getprompt(SSH_SESSION *session, unsigned int i,
char *echo) {
if (i > session->kbdint->nprompts) {
return NULL;
diff --git a/sample.c b/sample.c
index 3847f04..fb6cf4b 100644
--- a/sample.c
+++ b/sample.c
@@ -367,7 +367,8 @@ void do_sftp(SSH_SESSION *session){
static int auth_kbdint(SSH_SESSION *session){
int err=ssh_userauth_kbdint(session,NULL,NULL);
- char *name,*instruction,*prompt,*ptr;
+ const char *name, *instruction, *prompt;
+ char *ptr;
char buffer[128];
int i,n;
char echo;