summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorAndrey Mazo <ahippo@yandex.ru>2012-03-26 16:17:16 +0400
committerAndrey Mazo <ahippo@yandex.ru>2012-03-26 16:17:16 +0400
commitd4a14fcb3dde43e21b0bdf1e244d3b8f7aa488de (patch)
tree6f853fdf1f5ebf7d5c4d72b1aff8d50ae27611c7
parent49b79fa02d93a507df6caf93d3f4545ab057bea5 (diff)
Fixed compilation with unset ENABLE_{SVR,CLI}_AGENTFWD.
Got rid of ENABLE_AGENTFWD macro.
-rw-r--r--agentfwd.h17
-rw-r--r--cli-authpubkey.c6
-rw-r--r--svr-authpubkeyoptions.c2
-rw-r--r--svr-chansession.c8
-rw-r--r--sysoptions.h4
5 files changed, 23 insertions, 14 deletions
diff --git a/agentfwd.h b/agentfwd.h
index e982460..e4a831c 100644
--- a/agentfwd.h
+++ b/agentfwd.h
@@ -30,22 +30,19 @@
#include "auth.h"
#include "list.h"
+#ifdef ENABLE_CLI_AGENTFWD
+
/* An agent reply can be reasonably large, as it can
* contain a list of all public keys held by the agent.
* 10000 is arbitrary */
#define MAX_AGENT_REPLY 10000
-int svr_agentreq(struct ChanSess * chansess);
-void svr_agentcleanup(struct ChanSess * chansess);
-void svr_agentset(struct ChanSess *chansess);
-
/* client functions */
void cli_load_agent_keys(m_list * ret_list);
void agent_buf_sign(buffer *sigblob, sign_key *key,
const unsigned char *data, unsigned int len);
void cli_setup_agent(struct Channel *channel);
-
#ifdef __hpux
#define seteuid(a) setresuid(-1, (a), -1)
#define setegid(a) setresgid(-1, (a), -1)
@@ -53,4 +50,14 @@ void cli_setup_agent(struct Channel *channel);
extern const struct ChanType cli_chan_agent;
+#endif /* ENABLE_CLI_AGENTFWD */
+
+#ifdef ENABLE_SVR_AGENTFWD
+
+int svr_agentreq(struct ChanSess * chansess);
+void svr_agentcleanup(struct ChanSess * chansess);
+void svr_agentset(struct ChanSess *chansess);
+
+#endif /* ENABLE_SVR_AGENTFWD */
+
#endif /* _AGENTFWD_H_ */
diff --git a/cli-authpubkey.c b/cli-authpubkey.c
index a57fd6b..cf506b8 100644
--- a/cli-authpubkey.c
+++ b/cli-authpubkey.c
@@ -123,6 +123,7 @@ void recv_msg_userauth_pk_ok() {
void cli_buf_put_sign(buffer* buf, sign_key *key, int type,
const unsigned char *data, unsigned int len)
{
+#ifdef ENABLE_CLI_AGENTFWD
if (key->source == SIGNKEY_SOURCE_AGENT) {
/* Format the agent signature ourselves, as buf_put_sign would. */
buffer *sigblob;
@@ -134,8 +135,11 @@ void cli_buf_put_sign(buffer* buf, sign_key *key, int type,
buf_free(sigblob);
} else {
+#endif
buf_put_sign(buf, key, type, data, len);
+#ifdef ENABLE_CLI_AGENTFWD
}
+#endif
}
@@ -187,11 +191,13 @@ int cli_auth_pubkey() {
TRACE(("enter cli_auth_pubkey"))
+#ifdef ENABLE_CLI_AGENTFWD
if (!cli_opts.agent_keys_loaded) {
/* get the list of available keys from the agent */
cli_load_agent_keys(cli_opts.privkeys);
cli_opts.agent_keys_loaded = 1;
}
+#endif
if (cli_opts.privkeys->first) {
sign_key * key = (sign_key*)cli_opts.privkeys->first->item;
diff --git a/svr-authpubkeyoptions.c b/svr-authpubkeyoptions.c
index 4490b58..71d7c14 100644
--- a/svr-authpubkeyoptions.c
+++ b/svr-authpubkeyoptions.c
@@ -143,7 +143,7 @@ int svr_add_pubkey_options(buffer *options_buf, int line_num, const char* filena
ses.authstate.pubkey_options->no_port_forwarding_flag = 1;
goto next_option;
}
-#ifdef ENABLE_AGENTFWD
+#ifdef ENABLE_SVR_AGENTFWD
if (match_option(options_buf, "no-agent-forwarding") == DROPBEAR_SUCCESS) {
dropbear_log(LOG_WARNING, "Agent forwarding disabled.");
ses.authstate.pubkey_options->no_agent_forwarding_flag = 1;
diff --git a/svr-chansession.c b/svr-chansession.c
index f31d9f0..b99bf26 100644
--- a/svr-chansession.c
+++ b/svr-chansession.c
@@ -243,7 +243,7 @@ static int newchansess(struct Channel *channel) {
chansess->x11authcookie = NULL;
#endif
-#ifdef ENABLE_AGENTFWD
+#ifdef ENABLE_SVR_AGENTFWD
chansess->agentlistener = NULL;
chansess->agentfile = NULL;
chansess->agentdir = NULL;
@@ -300,7 +300,7 @@ static void closechansess(struct Channel *channel) {
x11cleanup(chansess);
#endif
-#ifdef ENABLE_AGENTFWD
+#ifdef ENABLE_SVR_AGENTFWD
svr_agentcleanup(chansess);
#endif
@@ -358,7 +358,7 @@ static void chansessionrequest(struct Channel *channel) {
} else if (strcmp(type, "x11-req") == 0) {
ret = x11req(chansess);
#endif
-#ifdef ENABLE_AGENTFWD
+#ifdef ENABLE_SVR_AGENTFWD
} else if (strcmp(type, "auth-agent-req@openssh.com") == 0) {
ret = svr_agentreq(chansess);
#endif
@@ -945,7 +945,7 @@ static void execchild(void *user_data) {
/* set up X11 forwarding if enabled */
x11setauth(chansess);
#endif
-#ifdef ENABLE_AGENTFWD
+#ifdef ENABLE_SVR_AGENTFWD
/* set up agent env variable */
svr_agentset(chansess);
#endif
diff --git a/sysoptions.h b/sysoptions.h
index ee5ff36..e2f53e3 100644
--- a/sysoptions.h
+++ b/sysoptions.h
@@ -162,10 +162,6 @@
#define USING_LISTENERS
#endif
-#if defined(ENABLE_SVR_AGENTFWD) || defined(ENABLE_CLI_LOCALTCPFWD)
-#define ENABLE_AGENTFWD
-#endif
-
#if defined(ENABLE_CLI_NETCAT) && defined(ENABLE_CLI_PROXYCMD)
#define ENABLE_CLI_MULTIHOP
#endif