summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Schneider <mail@cynapses.org>2009-07-21 10:34:21 +0200
committerAndreas Schneider <mail@cynapses.org>2009-07-23 09:06:47 +0200
commit90a6d431a75e9bcec68cd2e7c1a42465238d3faf (patch)
tree69d6c6e3c7e589a067e09e342bbf7006b92a14a5
parentf7448eeb1ce1cfc0b95766f52af891e90fe9e8e8 (diff)
downloadlibssh-90a6d431a75e9bcec68cd2e7c1a42465238d3faf.tar.gz
libssh-90a6d431a75e9bcec68cd2e7c1a42465238d3faf.tar.xz
libssh-90a6d431a75e9bcec68cd2e7c1a42465238d3faf.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 fc0979a5..5ed2c670 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 752341dd..aadba0ba 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 74e09974..85ea7d19 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;