summaryrefslogtreecommitdiff
path: root/usr/transport.h
diff options
context:
space:
mode:
authormnc <mnc@d7303112-9cec-0310-bdd2-e83a94d6c2b6>2007-04-24 05:49:21 +0000
committermnc <mnc@d7303112-9cec-0310-bdd2-e83a94d6c2b6>2007-04-24 05:49:21 +0000
commit74f30ac74993918f2fd1ed3e8a6575f9460a02c8 (patch)
tree6eae72d9cd5c96a3c0341d7599715e1a042973b3 /usr/transport.h
parentd1d7e581e15f8b1cdfd9254f7230fede9e4da516 (diff)
downloadopen-iscsi-74f30ac74993918f2fd1ed3e8a6575f9460a02c8.tar.gz
Rename iface.name to iface.hwaddress and make transport name part of the iface (driver and hardware are bound). Also merge the -D and -I arguments so they are now -I driver,hwaddress. Also add some basic qla4xxx support. We can rescan/scan it and perform sendtargets through it but it stores the targets it finds in Flash and then logs into all of them autmatically (when we do discovery and later when reload the driver). So qla4xxx support is mostly to make sure we have the --interfae argument right. We will have to decide how to set other params, manage nodes, and if we should move scanning to the kernel and then also move some error recovery code to the kernel (today qla4xxx is calling block directly and is not able to export it iscsi state yet (the beginnings to fix that is in the git tree but we still need to reduce some code duplcation)). qla4xxx behavior and functionality is going to change as we learn more about the hw (what format the flash data is supposed to be in for example).
git-svn-id: svn://svn.berlios.de/open-iscsi@816 d7303112-9cec-0310-bdd2-e83a94d6c2b6
Diffstat (limited to 'usr/transport.h')
-rw-r--r--usr/transport.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/usr/transport.h b/usr/transport.h
index b0292d1..2df8d8b 100644
--- a/usr/transport.h
+++ b/usr/transport.h
@@ -18,6 +18,7 @@
#define ISCSI_TRANSPORT_H
#include "types.h"
+#include "config.h"
struct iscsi_transport;
struct iscsi_conn;
@@ -30,6 +31,16 @@ struct iscsi_transport_template {
void (*ep_disconnect) (iscsi_conn_t *conn);
};
+/* represents data path provider */
+struct iscsi_transport {
+ struct list_head list;
+ uint64_t handle;
+ uint32_t caps;
+ char name[ISCSI_TRANSPORT_NAME_MAXLEN];
+ struct list_head sessions;
+ struct iscsi_transport_template *template;
+};
+
extern int set_transport_template(struct iscsi_transport *t);
#endif