version 20071205.
Fix the bug where multiple targets appeared as one. With huge thanks to
Greg Oster for his work in squashing this one.
Module Name: src
Committed By: oster
Date: Tue Dec 4 16:25:37 UTC 2007
Modified Files:
src/dist/iscsi/src: disk.c
Log Message:
Set "lun = sess->d" early on (but not too early), and allow multiple
targets to now work correctly. XXX: This will need to be re-visited
at some point, and fixed properly.
Commit requested by: agc
To generate a diff of this commit:
cvs rdiff -r1.34 -r1.35 src/dist/iscsi/src/disk.c
Also, the initiator has been modified to attach to multiple targets,
again thanks to Greg Oster.
Module Name: src
Committed By: oster
Date: Tue Dec 4 16:22:39 UTC 2007
Modified Files:
src/share/examples/refuse/iscsi-initiator: iscsifs.c
Log Message:
Add a '-D' option to allow "Discovery" of the targets provided by a host.
Initial support for multiple targets from the same host.
Base 'MaxTargets' on a #define, rather than hard-coding.
Reviewed by: agc
incorporate two important bug fixes:
Module Name: src
Committed By: agc
Date: Wed Nov 28 16:46:38 UTC 2007
Modified Files:
src/dist/iscsi/src: md5.c
Log Message:
Do runtime detection of machine's endianness, rather than relying on a cpp
macro which was never changed. This is the QAD fix, longer term we will
move to use native md5 routines if available.
Should go some way to fixing authentication problems when using an
initiator and target of different endianness.
To generate a diff of this commit:
cvs rdiff -r1.2 -r1.3 src/dist/iscsi/src/md5.c
and
Module Name: src
Committed By: oster
Date: Fri Nov 30 00:33:35 UTC 2007
Modified Files:
src/dist/iscsi/src: parameters.c
Log Message:
We have 4 cases here: rx_answer, tx_answer, rx_offer, and tx_offer.
When determining what to put in to param->negotiated, it is *NOT*
sufficient to just pick one of offer_tx or offer_rx -- we may need to
use answer_rx or answer_tx as the negotiated parameter. Failure to
pay attention to which case we are handling means we will occasionally
get "old parameter values" stuffed into responses, resulting in
obscure behavior (such as getting luns mixed up after a normal
connection is made) that is very difficult to replicate.
To generate a diff of this commit:
cvs rdiff -r1.9 -r1.10 src/dist/iscsi/src/parameters.c
Collection.
This initiator is based on FUSE/ReFUSE.
iSCSI is an IETF standard (RFC 3720) for remote access to block-level
storage. It can be thought of as similar to NFS, except that an NFS
server exports files; the iSCSI target exports blocks to the iSCSI
initiators, which are the clients.
The NetBSD iSCSI initiator is based on FUSE/ReFUSE, and provides a
portable initiator for any operating system with a FUSE-like
interface.