diff options
author | Mike Christie <michaelc@cs.wisc.edu> | 2014-02-07 10:41:42 +0400 |
---|---|---|
committer | James Bottomley <JBottomley@Parallels.com> | 2014-03-15 21:19:19 +0400 |
commit | eee2b5c840d93f704554f4a2884cef72742f22e2 (patch) | |
tree | 48754404f215a393fa2025e997357edeb7e9ea75 /drivers/scsi/iscsi_tcp.c | |
parent | 9cb48e7b9efb02beedb874855c74a226c1b08f6b (diff) | |
download | linux-eee2b5c840d93f704554f4a2884cef72742f22e2.tar.xz |
[SCSI] iscsi_tcp: check for valid session before accessing
Check that the session is setup before accessing its
connection. This fixes a oops where userspace tries
to get the ip address before the session is bound to
a host.
Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Diffstat (limited to 'drivers/scsi/iscsi_tcp.c')
-rw-r--r-- | drivers/scsi/iscsi_tcp.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/scsi/iscsi_tcp.c b/drivers/scsi/iscsi_tcp.c index 12b351213c59..bfb6d07d87f0 100644 --- a/drivers/scsi/iscsi_tcp.c +++ b/drivers/scsi/iscsi_tcp.c @@ -759,6 +759,9 @@ static int iscsi_sw_tcp_host_get_param(struct Scsi_Host *shost, switch (param) { case ISCSI_HOST_PARAM_IPADDRESS: + if (!session) + return -ENOTCONN; + spin_lock_bh(&session->frwd_lock); conn = session->leadconn; if (!conn) { |