aboutsummaryrefslogtreecommitdiff
path: root/usr.sbin/ctld/kernel.c
diff options
context:
space:
mode:
authorEdward Tomasz Napierala <trasz@FreeBSD.org>2014-04-16 10:06:37 +0000
committerEdward Tomasz Napierala <trasz@FreeBSD.org>2014-04-16 10:06:37 +0000
commitba3a2d31c810f11860330921fc4863274988172a (patch)
tree90ca69bfbb810a738dbe9edbe210611d69f49ba9 /usr.sbin/ctld/kernel.c
parent79bde95f51be75e30a1b26c1e6ed2cd07d889419 (diff)
downloadsrc-ba3a2d31c810f11860330921fc4863274988172a.tar.gz
src-ba3a2d31c810f11860330921fc4863274988172a.zip
Notes
Diffstat (limited to 'usr.sbin/ctld/kernel.c')
-rw-r--r--usr.sbin/ctld/kernel.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/usr.sbin/ctld/kernel.c b/usr.sbin/ctld/kernel.c
index 012dc7cd2636..3c4a547097cc 100644
--- a/usr.sbin/ctld/kernel.c
+++ b/usr.sbin/ctld/kernel.c
@@ -65,11 +65,13 @@
#include <cam/ctl/ctl_util.h>
#include <cam/ctl/ctl_scsi_all.h>
+#include "ctld.h"
+
#ifdef ICL_KERNEL_PROXY
#include <netdb.h>
#endif
-#include "ctld.h"
+extern bool proxy_mode;
static int ctl_fd = 0;
@@ -599,7 +601,14 @@ kernel_handoff(struct connection *conn)
}
strlcpy(req.data.handoff.target_name,
conn->conn_target->t_name, sizeof(req.data.handoff.target_name));
+#ifdef ICL_KERNEL_PROXY
+ if (proxy_mode)
+ req.data.handoff.connection_id = conn->conn_socket;
+ else
+ req.data.handoff.socket = conn->conn_socket;
+#else
req.data.handoff.socket = conn->conn_socket;
+#endif
req.data.handoff.portal_group_tag =
conn->conn_portal->p_portal_group->pg_tag;
if (conn->conn_header_digest == CONN_DIGEST_CRC32C)