This commit is contained in:
mchristi 2011-02-04 06:10:58 +00:00
parent 8a1566a3ea
commit 67e6c6ab8e
3 changed files with 712 additions and 87 deletions

View File

@ -0,0 +1,614 @@
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/libiscsi/Makefile open-iscsi-2.0-872-rc4-bnx2i.work/libiscsi/Makefile
--- open-iscsi-2.0-872-rc4-bnx2i/libiscsi/Makefile 2011-02-03 23:56:36.000000000 -0600
+++ open-iscsi-2.0-872-rc4-bnx2i.work/libiscsi/Makefile 2011-02-03 23:57:29.000000000 -0600
@@ -13,7 +13,7 @@ TESTS += tests/test_set_auth tests/test_
COMMON_SRCS = sysdeps.o
# sources shared between iscsid, iscsiadm and iscsistart
-ISCSI_LIB_SRCS = netlink.o uip_mgmt_ipc.o transport.o cxgbi.o be2iscsi.o iscsi_timer.o initiator_common.o iscsi_err.o session_info.o iscsi_util.o io.o auth.o discovery.o login.o log.o md5.o sha1.o iface.o idbm.o sysfs.o iscsi_sysfs.o iscsi_net_util.o iscsid_req.o
+ISCSI_LIB_SRCS = dcb_app.o netlink.o uip_mgmt_ipc.o transport.o cxgbi.o be2iscsi.o iscsi_timer.o initiator_common.o iscsi_err.o session_info.o iscsi_util.o io.o auth.o discovery.o login.o log.o md5.o sha1.o iface.o idbm.o sysfs.o iscsi_sysfs.o iscsi_net_util.o iscsid_req.o
FW_PARAM_SRCS = fw_entry.o prom_lex.o prom_parse.tab.o fwparam_ppc.o fwparam_sysfs.o
# sources shared with the userspace utils, note we build these separately
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/dcb_app.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/dcb_app.c
--- open-iscsi-2.0-872-rc4-bnx2i/usr/dcb_app.c 1969-12-31 18:00:00.000000000 -0600
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/dcb_app.c 2011-02-03 23:54:11.000000000 -0600
@@ -0,0 +1,246 @@
+/*******************************************************************************
+
+ DCB application support
+ Copyright(c) 2007-2010 Intel Corporation.
+
+ This program is free software; you can redistribute it and/or modify it
+ under the terms and conditions of the GNU General Public License,
+ version 2, as published by the Free Software Foundation.
+
+ This program is distributed in the hope it will be useful, but WITHOUT
+ ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ more details.
+
+ You should have received a copy of the GNU General Public License along with
+ this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
+
+ The full GNU General Public License is included in this distribution in
+ the file called "COPYING".
+
+ Contact Information:
+ e1000-eedc Mailing List <e1000-eedc@lists.sourceforge.net>
+ Intel Corporation, 5200 N.E. Elam Young Parkway, Hillsboro, OR 97124-6497
+
+*******************************************************************************/
+
+#include <unistd.h>
+#include <stdlib.h>
+#include <string.h>
+#include <errno.h>
+#include <asm/errno.h>
+#include <fcntl.h>
+#include <sys/socket.h>
+#include <net/if.h>
+#include <linux/netlink.h>
+#include <linux/rtnetlink.h>
+#include <linux/dcbnl.h>
+#include "dcb_app.h"
+#include "sysfs.h"
+
+#define NLA_DATA(nla) ((void *)((char*)(nla) + NLA_HDRLEN))
+
+/* Maximum size of response requested or message sent */
+#define MAX_MSG_SIZE 1024
+
+static struct nlmsghdr *start_dcbmsg(__u16 msg_type, __u8 arg)
+{
+ struct nlmsghdr *nlh;
+ struct dcbmsg *d;
+
+ nlh = malloc(MAX_MSG_SIZE);
+ if (!nlh)
+ return NULL;
+ memset(nlh, 0, MAX_MSG_SIZE);
+ nlh->nlmsg_type = msg_type;
+ nlh->nlmsg_flags = NLM_F_REQUEST;
+ nlh->nlmsg_seq = 0;
+ nlh->nlmsg_pid = getpid();
+ if (msg_type != RTM_GETDCB) {
+ free(nlh);
+ return NULL;
+ }
+
+ nlh->nlmsg_len = NLMSG_LENGTH(sizeof(struct dcbmsg));
+ d = NLMSG_DATA(nlh);
+ d->cmd = arg;
+ d->dcb_family = AF_UNSPEC;
+ d->dcb_pad = 0;
+
+ return nlh;
+}
+
+static struct rtattr *add_rta(struct nlmsghdr *nlh, __u16 rta_type,
+ void *attr, __u16 rta_len)
+{
+ struct rtattr *rta;
+
+ rta = (struct rtattr *)((char *)nlh + nlh->nlmsg_len);
+ rta->rta_type = rta_type;
+ rta->rta_len = rta_len + NLA_HDRLEN;
+ if (attr)
+ memcpy(NLA_DATA(rta), attr, rta_len);
+ nlh->nlmsg_len += NLMSG_ALIGN(rta->rta_len);
+
+ return rta;
+}
+
+static int dcbnl_send_msg(int nl_sd, struct nlmsghdr *nlh)
+{
+ struct sockaddr_nl nladdr;
+ void *buf = nlh;
+ int r, len = nlh->nlmsg_len;
+
+ memset(&nladdr, 0, sizeof(nladdr));
+ nladdr.nl_family = AF_NETLINK;
+
+ do {
+ r = sendto(nl_sd, buf, len, 0, (struct sockaddr *)&nladdr,
+ sizeof(nladdr));
+ } while (r < 0 && errno == EINTR);
+
+ if (r < 0)
+ return 1;
+
+ return 0;
+}
+
+static struct nlmsghdr *dcbnl_get_msg(int nl_sd)
+{
+ struct nlmsghdr *nlh;
+ int len;
+
+ nlh = malloc(MAX_MSG_SIZE);
+ if (!nlh)
+ return NULL;
+ memset(nlh, 0, MAX_MSG_SIZE);
+
+ len = recv(nl_sd, (void *)nlh, MAX_MSG_SIZE, 0);
+
+ if (len < 0 || nlh->nlmsg_type == NLMSG_ERROR ||
+ !NLMSG_OK(nlh, (unsigned int)len)) {
+ free(nlh);
+ return NULL;
+ }
+
+ return nlh;
+}
+
+static int get_app_cfg(const char *ifname, __u8 req_idtype, __u16 req_id)
+{
+ struct nlmsghdr *nlh;
+ struct dcbmsg *d;
+ struct rtattr *rta_parent, *rta_child;
+ int rval = 0;
+ int nl_sd;
+ unsigned int seq;
+ __u8 idtype;
+ __u16 id;
+
+ nlh = start_dcbmsg(RTM_GETDCB, DCB_CMD_GAPP);
+ if (!nlh)
+ return -EIO;
+
+ seq = nlh->nlmsg_seq;
+ add_rta(nlh, DCB_ATTR_IFNAME, (void *)ifname, strlen(ifname) + 1);
+ rta_parent = add_rta(nlh, DCB_ATTR_APP, NULL, 0);
+
+ rta_child = add_rta(nlh, DCB_APP_ATTR_IDTYPE,
+ (void *)&req_idtype, sizeof(__u8));
+ rta_parent->rta_len += NLA_ALIGN(rta_child->rta_len);
+
+ rta_child = add_rta(nlh, DCB_APP_ATTR_ID,
+ (void *)&req_id, sizeof(__u16));
+ rta_parent->rta_len += NLA_ALIGN(rta_child->rta_len);
+
+ nl_sd = socket(PF_NETLINK, SOCK_RAW, NETLINK_ROUTE);
+ if (nl_sd < 0)
+ return nl_sd;
+
+ rval = dcbnl_send_msg(nl_sd, nlh);
+ free(nlh);
+ if (rval) {
+ close(nl_sd);
+ return -EIO;
+ }
+
+ nlh = dcbnl_get_msg(nl_sd);
+ close(nl_sd);
+ if (!nlh)
+ return -EIO;
+
+ d = (struct dcbmsg *)NLMSG_DATA(nlh);
+ rta_parent = (struct rtattr *)(((char *)d) +
+ NLMSG_ALIGN(sizeof(struct dcbmsg)));
+
+ if (d->cmd != DCB_CMD_GAPP) {
+ rval = -EIO;
+ goto get_error;
+ }
+ if (rta_parent->rta_type != DCB_ATTR_APP) {
+ rval = -EIO;
+ goto get_error;
+ }
+
+ rta_child = NLA_DATA(rta_parent);
+ rta_parent = (struct rtattr *)((char *)rta_parent +
+ NLMSG_ALIGN(rta_parent->rta_len));
+
+ idtype = *(__u8 *)NLA_DATA(rta_child);
+ rta_child = (struct rtattr *)((char *)rta_child +
+ NLMSG_ALIGN(rta_child->rta_len));
+ if (idtype != req_idtype) {
+ rval = -EIO;
+ goto get_error;
+ }
+
+ id = *(__u16 *)NLA_DATA(rta_child);
+ rta_child = (struct rtattr *)((char *)rta_child +
+ NLMSG_ALIGN(rta_child->rta_len));
+ if (id != req_id) {
+ rval = -EIO;
+ goto get_error;
+ }
+
+ rval = *(__u8 *)NLA_DATA(rta_child);
+ rta_child = (struct rtattr *)((char *)rta_child +
+ NLMSG_ALIGN(rta_child->rta_len));
+
+get_error:
+ free(nlh);
+ return rval;
+}
+
+static int get_link_ifname(const char *ifname, char *link_ifname)
+{
+ int ifindex;
+
+ if (sysfs_get_int(ifname, "net", "iflink", &ifindex))
+ return -EIO;
+
+ if (!if_indextoname(ifindex, link_ifname))
+ return -ENODEV;
+
+ return 0;
+}
+
+int get_dcb_app_pri_by_port(const char *ifname, int port)
+{
+ char link_ifname[IFNAMSIZ];
+
+ if (get_link_ifname(ifname, link_ifname))
+ return 0;
+
+ return get_app_cfg(link_ifname, DCB_APP_IDTYPE_PORTNUM, port);
+}
+
+int get_dcb_app_pri_by_ethtype(const char *ifname, int ethtype)
+{
+ char link_ifname[IFNAMSIZ];
+
+ if (get_link_ifname(ifname, link_ifname))
+ return 0;
+
+ return get_app_cfg(link_ifname, DCB_APP_IDTYPE_ETHTYPE, ethtype);
+}
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/dcb_app.h open-iscsi-2.0-872-rc4-bnx2i.work/usr/dcb_app.h
--- open-iscsi-2.0-872-rc4-bnx2i/usr/dcb_app.h 1969-12-31 18:00:00.000000000 -0600
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/dcb_app.h 2011-02-03 23:54:07.000000000 -0600
@@ -0,0 +1,34 @@
+/*******************************************************************************
+
+ DCB application support
+ Copyright(c) 2007-2010 Intel Corporation.
+
+ This program is free software; you can redistribute it and/or modify it
+ under the terms and conditions of the GNU General Public License,
+ version 2, as published by the Free Software Foundation.
+
+ This program is distributed in the hope it will be useful, but WITHOUT
+ ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ more details.
+
+ You should have received a copy of the GNU General Public License along with
+ this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
+
+ The full GNU General Public License is included in this distribution in
+ the file called "COPYING".
+
+ Contact Information:
+ e1000-eedc Mailing List <e1000-eedc@lists.sourceforge.net>
+ Intel Corporation, 5200 N.E. Elam Young Parkway, Hillsboro, OR 97124-6497
+
+*******************************************************************************/
+
+#ifndef _DCB_APP_H_
+#define _DCB_APP_H_
+
+int get_dcb_app_pri_by_port(const char *iface, int port);
+int get_dcb_app_pri_by_ethtype(const char *iface, int ethtype);
+
+#endif /* _DCB_APP_H_ */
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/io.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/io.c
--- open-iscsi-2.0-872-rc4-bnx2i/usr/io.c 2011-02-04 00:02:19.000000000 -0600
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/io.c 2011-02-03 23:54:15.000000000 -0600
@@ -26,11 +26,14 @@
#include <fcntl.h>
#include <sys/poll.h>
#include <sys/ioctl.h>
+#include <sys/types.h>
+#include <ifaddrs.h>
#include <netinet/tcp.h>
#include <arpa/inet.h>
#include "types.h"
#include "iscsi_proto.h"
+#include "iscsi_settings.h"
#include "initiator.h"
#include "iscsi_ipc.h"
#include "log.h"
@@ -38,6 +41,7 @@
#include "idbm.h"
#include "iface.h"
#include "sysdeps.h"
+#include "dcb_app.h"
#define LOG_CONN_CLOSED(conn) \
do { \
@@ -53,6 +57,13 @@ do { \
log_error("Connection to Discovery Address %s failed", conn->host); \
} while (0)
+union sockaddr_u {
+ struct sockaddr_storage ss;
+ struct sockaddr sa;
+ struct sockaddr_in si;
+ struct sockaddr_in6 si6;
+};
+
static int timedout;
static void
@@ -76,6 +87,90 @@ set_non_blocking(int fd)
}
+static int select_priority(struct iscsi_conn *conn, int pri_mask)
+{
+ int msk;
+
+ if (!pri_mask)
+ return 0;
+
+ /*
+ * TODO: Configure priority selection from the mask
+ * For now, just always take the highest
+ */
+
+ /* Find highest bit set */
+ while ((msk = pri_mask & (pri_mask - 1)))
+ pri_mask = msk;
+
+ return ffs(pri_mask) - 1;
+}
+
+static int
+inet_cmp_addr(const union sockaddr_u *s1, const union sockaddr_u *s2)
+{
+ const struct sockaddr_in *si1 = &s1->si;
+ const struct sockaddr_in *si2 = &s2->si;
+
+ return si1->sin_addr.s_addr != si2->sin_addr.s_addr;
+}
+
+static int
+inet6_cmp_addr(const union sockaddr_u *s1, const union sockaddr_u *s2)
+{
+ const struct sockaddr_in6 *si1 = &s1->si6;
+ const struct sockaddr_in6 *si2 = &s2->si6;
+
+ return memcmp(&si1->sin6_addr, &si2->sin6_addr, sizeof(si1->sin6_addr));
+}
+
+static char *
+find_ifname(const struct ifaddrs *ifa, const union sockaddr_u *ss)
+{
+ for (; ifa; ifa = ifa->ifa_next) {
+ if (ss->ss.ss_family != ifa->ifa_addr->sa_family)
+ continue;
+ switch (ss->ss.ss_family) {
+ case AF_INET:
+ if (inet_cmp_addr(ss, (union sockaddr_u *)ifa->ifa_addr) == 0)
+ return ifa->ifa_name;
+ break;
+ case AF_INET6:
+ if (inet6_cmp_addr(ss, (union sockaddr_u *)ifa->ifa_addr) == 0)
+ return ifa->ifa_name;
+ break;
+ }
+ }
+
+ return NULL;
+}
+
+static void set_dcb_priority(struct iscsi_conn *conn, const char *devname)
+{
+ int pri_mask = 0;
+
+ pri_mask = get_dcb_app_pri_by_port(devname, ISCSI_DEFAULT_PORT);
+ if (pri_mask < 0)
+ log_debug(2, "Getting priority for %s returned %d",
+ devname, pri_mask);
+ else if (pri_mask == 0)
+ log_debug(2, "No priority for %s", devname);
+ else {
+ int pri = select_priority(conn, pri_mask);
+ int rc;
+
+ log_debug(1, "Setting socket %d priority to %d",
+ conn->socket_fd, pri);
+ rc = setsockopt(conn->socket_fd, SOL_SOCKET,
+ SO_PRIORITY, &pri, sizeof(pri));
+ if (rc < 0) {
+ log_warning("Setting socket %d priority to %d failed "
+ "with errno %d", conn->socket_fd,
+ pri, errno);
+ }
+ }
+}
+
#if 0
/* not used by anyone */
static int get_hwaddress_from_netdev(char *netdev, char *hwaddress)
@@ -320,6 +415,10 @@ iscsi_io_tcp_connect(iscsi_conn_t *conn,
log_debug(1, "connecting to %s:%s", conn->host, serv);
if (non_blocking)
set_non_blocking(conn->socket_fd);
+
+ if (conn->session->netdev[0])
+ set_dcb_priority(conn, conn->session->netdev);
+
rc = connect(conn->socket_fd, (struct sockaddr *) ss, sizeof (*ss));
return rc;
}
@@ -368,8 +467,9 @@ iscsi_io_tcp_poll(iscsi_conn_t *conn, in
}
len = sizeof(ss);
- if (log_level > 0 &&
- getsockname(conn->socket_fd, (struct sockaddr *) &ss, &len) >= 0) {
+ if (log_level > 0 || !conn->session->netdev)
+ rc = getsockname(conn->socket_fd, (struct sockaddr *)&ss, &len);
+ if (log_level > 0 && rc >= 0) {
getnameinfo((struct sockaddr *) &conn->saddr,
sizeof(conn->saddr), conn->host,
sizeof(conn->host), serv, sizeof(serv),
@@ -381,6 +481,22 @@ iscsi_io_tcp_poll(iscsi_conn_t *conn, in
log_debug(1, "connected local port %s to %s:%s",
lserv, conn->host, serv);
}
+
+ if (!conn->session->netdev[0] && rc >= 0) {
+ struct ifaddrs *ifa;
+ char *ifname;
+
+ rc = getifaddrs(&ifa);
+ if (rc < 0)
+ log_error("getifaddrs failed with %d\n", errno);
+ else {
+ ifname = find_ifname(ifa, (union sockaddr_u *)&ss);
+ if (ifname)
+ set_dcb_priority(conn, ifname);
+ freeifaddrs(ifa);
+ }
+ }
+
return 1;
}
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/Makefile open-iscsi-2.0-872-rc4-bnx2i.work/usr/Makefile
--- open-iscsi-2.0-872-rc4-bnx2i/usr/Makefile 2011-02-04 00:02:19.000000000 -0600
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/Makefile 2011-02-03 23:54:31.000000000 -0600
@@ -21,10 +21,12 @@ ifeq ($(OSNAME),Linux)
endif
endif
IPC_OBJ=netlink.o
+DCB_OBJ=dcb_app.o
else
ifeq ($(OSNAME),FreeBSD)
IPC_CFLAGS=
IPC_OBJ=ioctl.o
+DCB_OBJ=
endif
endif
@@ -40,7 +42,7 @@ SYSDEPS_SRCS = $(wildcard ../utils/sysde
ISCSI_LIB_SRCS = iscsi_util.o io.o auth.o iscsi_timer.o login.o log.o md5.o \
sha1.o iface.o idbm.o sysfs.o host.o session_info.o iscsi_sysfs.o \
iscsi_net_util.o iscsid_req.o transport.o cxgbi.o be2iscsi.o \
- initiator_common.o iscsi_err.o uip_mgmt_ipc.o $(IPC_OBJ) $(SYSDEPS_SRCS)
+ initiator_common.o iscsi_err.o uip_mgmt_ipc.o $(DCB_OBJ) $(IPC_OBJ) $(SYSDEPS_SRCS)
# core initiator files
INITIATOR_SRCS = initiator.o scsi.o actor.o event_poll.o mgmt_ipc.o
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/Makefile.orig open-iscsi-2.0-872-rc4-bnx2i.work/usr/Makefile.orig
--- open-iscsi-2.0-872-rc4-bnx2i/usr/Makefile.orig 1969-12-31 18:00:00.000000000 -0600
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/Makefile.orig 2011-02-03 23:53:53.000000000 -0600
@@ -0,0 +1,71 @@
+# This Makefile will work only with GNU make.
+
+OSNAME=$(shell uname -s)
+
+# allow users to override these
+# eg to compile for a kernel that you aren't currently running
+KERNELRELEASE ?= $(shell uname -r)
+KSRC ?= /lib/modules/$(KERNELRELEASE)/build
+
+KSUBLEVEL=$(shell cat $(KSRC)/Makefile | awk -F= '/^SUBLEVEL =/ {print $$2}' | \
+ sed 's/^[ \t]*//;s/[ \t]*$$//')
+
+ifeq ($(OSNAME),Linux)
+ ifeq ($(KSUBLEVEL),11)
+ IPC_CFLAGS=-DNETLINK_ISCSI=12 -D_GNU_SOURCE
+ else
+ ifeq ($(KSUBLEVEL),12)
+ IPC_CFLAGS=-DNETLINK_ISCSI=12 -D_GNU_SOURCE
+ else
+ IPC_CFLAGS=-DNETLINK_ISCSI=8 -D_GNU_SOURCE
+ endif
+ endif
+IPC_OBJ=netlink.o
+else
+ifeq ($(OSNAME),FreeBSD)
+IPC_CFLAGS=
+IPC_OBJ=ioctl.o
+endif
+endif
+
+OPTFLAGS ?= -O2 -g
+WARNFLAGS ?= -Wall -Wstrict-prototypes
+CFLAGS += $(OPTFLAGS) $(WARNFLAGS) -I../include -I. -I../utils/open-isns \
+ -D$(OSNAME) $(IPC_CFLAGS) -DISNS_ENABLE
+PROGRAMS = iscsid iscsiadm iscsistart
+
+# libc compat files
+SYSDEPS_SRCS = $(wildcard ../utils/sysdeps/*.o)
+# sources shared between iscsid, iscsiadm and iscsistart
+ISCSI_LIB_SRCS = iscsi_util.o io.o auth.o iscsi_timer.o login.o log.o md5.o \
+ sha1.o iface.o idbm.o sysfs.o host.o session_info.o iscsi_sysfs.o \
+ iscsi_net_util.o iscsid_req.o transport.o cxgbi.o be2iscsi.o \
+ initiator_common.o iscsi_err.o uip_mgmt_ipc.o $(IPC_OBJ) $(SYSDEPS_SRCS)
+# core initiator files
+INITIATOR_SRCS = initiator.o scsi.o actor.o event_poll.o mgmt_ipc.o
+
+# fw boot files
+FW_BOOT_SRCS = $(wildcard ../utils/fwparam_ibft/*.o)
+
+# core discovery files
+DISCOVERY_SRCS = $(FW_BOOT_SRCS) strings.o discovery.o
+
+all: $(PROGRAMS)
+
+iscsid: $(ISCSI_LIB_SRCS) $(INITIATOR_SRCS) $(DISCOVERY_SRCS) \
+ iscsid.o session_mgmt.o discoveryd.o
+ $(CC) $(CFLAGS) $^ -o $@ -L../utils/open-isns -lisns
+
+iscsiadm: $(ISCSI_LIB_SRCS) $(DISCOVERY_SRCS) iscsiadm.o session_mgmt.o
+ $(CC) $(CFLAGS) $^ -o $@ -L../utils/open-isns -lisns
+
+iscsistart: $(ISCSI_LIB_SRCS) $(INITIATOR_SRCS) $(FW_BOOT_SRCS) \
+ iscsistart.o statics.o
+ $(CC) $(CFLAGS) $^ -o $@
+clean:
+ rm -f *.o $(PROGRAMS) .depend $(LIBSYS)
+
+depend:
+ gcc $(CFLAGS) -M `ls *.c` > .depend
+
+-include .depend
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/sysfs.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/sysfs.c
--- open-iscsi-2.0-872-rc4-bnx2i/usr/sysfs.c 2011-02-04 00:02:19.000000000 -0600
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/sysfs.c 2011-02-03 23:54:03.000000000 -0600
@@ -547,7 +547,7 @@ found:
}
-char *sysfs_get_value(char *id, char *subsys, char *param)
+char *sysfs_get_value(const char *id, char *subsys, char *param)
{
char devpath[PATH_SIZE];
char *sysfs_value;
@@ -590,7 +590,7 @@ int sysfs_get_uint(char *id, char *subsy
return 0;
}
-int sysfs_get_int(char *id, char *subsys, char *param, int *value)
+int sysfs_get_int(const char *id, char *subsys, char *param, int *value)
{
char *sysfs_value;
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/sysfs.h open-iscsi-2.0-872-rc4-bnx2i.work/usr/sysfs.h
--- open-iscsi-2.0-872-rc4-bnx2i/usr/sysfs.h 2011-02-04 00:02:19.000000000 -0600
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/sysfs.h 2011-02-03 23:54:03.000000000 -0600
@@ -51,10 +51,10 @@ extern char *sysfs_attr_get_value(const
extern int sysfs_resolve_link(char *path, size_t size);
extern int sysfs_lookup_devpath_by_subsys_id(char *devpath, size_t len, const char *subsystem, const char *id);
-extern char *sysfs_get_value(char *id, char *subsys, char *param);
+extern char *sysfs_get_value(const char *id, char *subsys, char *param);
extern int sysfs_get_uint(char *id, char *subsys, char *param,
unsigned int *value);
-extern int sysfs_get_int(char *id, char *subsys, char *param, int *value);
+extern int sysfs_get_int(const char *id, char *subsys, char *param, int *value);
extern int sysfs_get_str(char *id, char *subsys, char *param, char *value,
int value_size);
extern int sysfs_get_uint64(char *id, char *subsys, char *param,

View File

@ -1,6 +1,6 @@
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/Changelog open-iscsi-2.0-872-rc4-bnx2i.work/Changelog diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/Changelog open-iscsi-2.0-872-rc4-bnx2i.work/Changelog
--- open-iscsi-2.0-872-rc4-bnx2i/Changelog 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/Changelog 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/Changelog 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/Changelog 2011-02-03 20:14:23.000000000 -0600
@@ -1,132 +1,114 @@ @@ -1,132 +1,114 @@
-open-iscsi-2.0-871 - open-iscsi-2.0.870 -open-iscsi-2.0-871 - open-iscsi-2.0.870
+open-iscsi-2.0-872 - open-iscsi-2.0.871 +open-iscsi-2.0-872 - open-iscsi-2.0.871
@ -245,7 +245,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/Changelog open-iscsi-2.0-872-rc4-bnx2i.
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/doc/iscsiadm.8 open-iscsi-2.0-872-rc4-bnx2i.work/doc/iscsiadm.8 diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/doc/iscsiadm.8 open-iscsi-2.0-872-rc4-bnx2i.work/doc/iscsiadm.8
--- open-iscsi-2.0-872-rc4-bnx2i/doc/iscsiadm.8 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/doc/iscsiadm.8 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/doc/iscsiadm.8 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/doc/iscsiadm.8 2011-02-03 20:14:23.000000000 -0600
@@ -49,7 +49,13 @@ print debugging information. Valid value @@ -49,7 +49,13 @@ print debugging information. Valid value
display help text and exit display help text and exit
@ -416,7 +416,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/doc/iscsiadm.8 open-iscsi-2.0-872-rc4-b
.nf .nf
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/etc/initd/initd.suse open-iscsi-2.0-872-rc4-bnx2i.work/etc/initd/initd.suse diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/etc/initd/initd.suse open-iscsi-2.0-872-rc4-bnx2i.work/etc/initd/initd.suse
--- open-iscsi-2.0-872-rc4-bnx2i/etc/initd/initd.suse 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/etc/initd/initd.suse 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/etc/initd/initd.suse 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/etc/initd/initd.suse 2011-02-03 20:14:23.000000000 -0600
@@ -30,7 +30,7 @@ iscsi_login_all_nodes() @@ -30,7 +30,7 @@ iscsi_login_all_nodes()
{ {
echo -n "Setting up iSCSI targets: " echo -n "Setting up iSCSI targets: "
@ -437,7 +437,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/etc/initd/initd.suse open-iscsi-2.0-872
RETVAL=1 RETVAL=1
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/include/iscsi_err.h open-iscsi-2.0-872-rc4-bnx2i.work/include/iscsi_err.h diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/include/iscsi_err.h open-iscsi-2.0-872-rc4-bnx2i.work/include/iscsi_err.h
--- open-iscsi-2.0-872-rc4-bnx2i/include/iscsi_err.h 1969-12-31 18:00:00.000000000 -0600 --- open-iscsi-2.0-872-rc4-bnx2i/include/iscsi_err.h 1969-12-31 18:00:00.000000000 -0600
+++ open-iscsi-2.0-872-rc4-bnx2i.work/include/iscsi_err.h 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/include/iscsi_err.h 2011-02-03 20:14:23.000000000 -0600
@@ -0,0 +1,69 @@ @@ -0,0 +1,69 @@
+/* +/*
+ * Return codes used by iSCSI tools. + * Return codes used by iSCSI tools.
@ -510,7 +510,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/include/iscsi_err.h open-iscsi-2.0-872-
+#endif +#endif
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/include/iscsi_if.h open-iscsi-2.0-872-rc4-bnx2i.work/include/iscsi_if.h diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/include/iscsi_if.h open-iscsi-2.0-872-rc4-bnx2i.work/include/iscsi_if.h
--- open-iscsi-2.0-872-rc4-bnx2i/include/iscsi_if.h 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/include/iscsi_if.h 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/include/iscsi_if.h 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/include/iscsi_if.h 2011-02-03 20:14:23.000000000 -0600
@@ -65,6 +65,8 @@ enum iscsi_uevent_e { @@ -65,6 +65,8 @@ enum iscsi_uevent_e {
ISCSI_UEVENT_PATH_UPDATE = UEVENT_BASE + 20, ISCSI_UEVENT_PATH_UPDATE = UEVENT_BASE + 20,
@ -540,7 +540,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/include/iscsi_if.h open-iscsi-2.0-872-r
#define CAP_SENDTARGETS_OFFLOAD 0x400 /* offload discovery process */ #define CAP_SENDTARGETS_OFFLOAD 0x400 /* offload discovery process */
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/actor.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/actor.c diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/actor.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/actor.c
--- open-iscsi-2.0-872-rc4-bnx2i/usr/actor.c 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/usr/actor.c 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/actor.c 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/actor.c 2011-02-03 20:14:23.000000000 -0600
@@ -113,14 +113,13 @@ actor_schedule_private(actor_t *thread, @@ -113,14 +113,13 @@ actor_schedule_private(actor_t *thread,
* state to scheduled, else add current time to ttschedule and * state to scheduled, else add current time to ttschedule and
* insert in the queue at the correct point */ * insert in the queue at the correct point */
@ -564,7 +564,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/actor.c open-iscsi-2.0-872-rc4-bnx2
if (head) if (head)
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/config.h open-iscsi-2.0-872-rc4-bnx2i.work/usr/config.h diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/config.h open-iscsi-2.0-872-rc4-bnx2i.work/usr/config.h
--- open-iscsi-2.0-872-rc4-bnx2i/usr/config.h 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/usr/config.h 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/config.h 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/config.h 2011-02-03 20:14:23.000000000 -0600
@@ -141,7 +141,8 @@ struct iscsi_sendtargets_config { @@ -141,7 +141,8 @@ struct iscsi_sendtargets_config {
int discoveryd_poll_inval; int discoveryd_poll_inval;
struct iscsi_auth_config auth; struct iscsi_auth_config auth;
@ -617,7 +617,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/cxgb3i.h open-iscsi-2.0-872-rc4-bnx
-#endif -#endif
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/cxgbi.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/cxgbi.c diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/cxgbi.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/cxgbi.c
--- open-iscsi-2.0-872-rc4-bnx2i/usr/cxgbi.c 1969-12-31 18:00:00.000000000 -0600 --- open-iscsi-2.0-872-rc4-bnx2i/usr/cxgbi.c 1969-12-31 18:00:00.000000000 -0600
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/cxgbi.c 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/cxgbi.c 2011-02-03 20:14:23.000000000 -0600
@@ -0,0 +1,24 @@ @@ -0,0 +1,24 @@
+/* +/*
+ * cxgb3i/cxgb4i helpers + * cxgb3i/cxgb4i helpers
@ -645,7 +645,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/cxgbi.c open-iscsi-2.0-872-rc4-bnx2
+} +}
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/cxgbi.h open-iscsi-2.0-872-rc4-bnx2i.work/usr/cxgbi.h diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/cxgbi.h open-iscsi-2.0-872-rc4-bnx2i.work/usr/cxgbi.h
--- open-iscsi-2.0-872-rc4-bnx2i/usr/cxgbi.h 1969-12-31 18:00:00.000000000 -0600 --- open-iscsi-2.0-872-rc4-bnx2i/usr/cxgbi.h 1969-12-31 18:00:00.000000000 -0600
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/cxgbi.h 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/cxgbi.h 2011-02-03 20:14:23.000000000 -0600
@@ -0,0 +1,8 @@ @@ -0,0 +1,8 @@
+#ifndef CXGBI_TRANSPORT +#ifndef CXGBI_TRANSPORT
+#define CXGBI_TRANSPORT +#define CXGBI_TRANSPORT
@ -657,7 +657,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/cxgbi.h open-iscsi-2.0-872-rc4-bnx2
+#endif +#endif
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/discovery.c diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/discovery.c
--- open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/discovery.c 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/discovery.c 2011-02-03 20:14:32.000000000 -0600
@@ -43,6 +43,12 @@ @@ -43,6 +43,12 @@
#include "fw_context.h" #include "fw_context.h"
#include "iscsid_req.h" #include "iscsid_req.h"
@ -947,7 +947,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-
num_targets++; num_targets++;
record = NULL; record = NULL;
str_truncate_buffer(sendtargets, 0); str_truncate_buffer(sendtargets, 0);
@@ -792,110 +788,42 @@ process_sendtargets_response(struct str_ @@ -792,110 +788,47 @@ process_sendtargets_response(struct str_
return 1; return 1;
} }
@ -960,7 +960,8 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-
-/* set timer to now + seconds */ -/* set timer to now + seconds */
-static void -static void
-set_timer(struct timeval *timer, int seconds) -set_timer(struct timeval *timer, int seconds)
-{ +static void iscsi_free_session(struct iscsi_session *session)
{
- if (timer) { - if (timer) {
- memset(timer, 0, sizeof (*timer)); - memset(timer, 0, sizeof (*timer));
- gettimeofday(timer, NULL); - gettimeofday(timer, NULL);
@ -990,8 +991,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-
- -
-static int -static int
-msecs_until(struct timeval *timer) -msecs_until(struct timeval *timer)
+static void iscsi_free_session(struct iscsi_session *session) -{
{
- struct timeval now; - struct timeval now;
- int msecs; - int msecs;
- long partial; - long partial;
@ -1029,22 +1029,28 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-
-init_new_session(struct iscsi_sendtargets_config *config, -init_new_session(struct iscsi_sendtargets_config *config,
- struct iface_rec *iface) - struct iface_rec *iface)
+iscsi_alloc_session(struct iscsi_sendtargets_config *config, +iscsi_alloc_session(struct iscsi_sendtargets_config *config,
+ struct iface_rec *iface) + struct iface_rec *iface, int *rc)
{ {
iscsi_session_t *session; iscsi_session_t *session;
+ *rc = 0;
+
session = calloc(1, sizeof (*session)); session = calloc(1, sizeof (*session));
if (session == NULL) - if (session == NULL)
- goto done; - goto done;
+ if (session == NULL) {
+ *rc = ISCSI_ERR_NOMEM;
+ return NULL; + return NULL;
+ }
+
+ session->t = iscsi_sysfs_get_transport_by_name(iface->transport_name); + session->t = iscsi_sysfs_get_transport_by_name(iface->transport_name);
+ if (!session->t) { + if (!session->t) {
+ log_error("iSCSI driver %s is not loaded. Load the module " + log_error("iSCSI driver %s is not loaded. Load the module "
+ "then retry the command.\n", iface->transport_name); + "then retry the command.\n", iface->transport_name);
+ *rc = ISCSI_ERR_TRANS_NOT_FOUND;
+ goto fail; + goto fail;
+ } + }
+
+ INIT_LIST_HEAD(&session->list); + INIT_LIST_HEAD(&session->list);
/* initialize the session's leading connection */ /* initialize the session's leading connection */
+ session->conn[0].id = 0; + session->conn[0].id = 0;
@ -1078,12 +1084,13 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-
/* OUI and uniqifying number */ /* OUI and uniqifying number */
session->isid[0] = DRIVER_ISID_0; session->isid[0] = DRIVER_ISID_0;
@@ -914,102 +842,27 @@ init_new_session(struct iscsi_sendtarget @@ -914,102 +847,29 @@ init_new_session(struct iscsi_sendtarget
if (initiator_name[0] == '\0') { if (initiator_name[0] == '\0') {
log_error("Cannot perform discovery. Initiatorname " log_error("Cannot perform discovery. Initiatorname "
"required."); "required.");
- free(session); - free(session);
- return NULL; - return NULL;
+ *rc = ISCSI_ERR_INVAL;
+ goto fail; + goto fail;
} }
} }
@ -1104,10 +1111,10 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-
- struct iscsi_sendtargets_config *config) - struct iscsi_sendtargets_config *config)
-{ -{
- int rc; - int rc;
-
- rc = 1;
+ session->id = -1; + session->id = -1;
- rc = 1;
-
- /* if we have any incoming credentials, we insist on authenticating - /* if we have any incoming credentials, we insist on authenticating
- * the target or not logging in at all - * the target or not logging in at all
- */ - */
@ -1134,7 +1141,8 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-
- session->bidirectional_auth = 0; - session->bidirectional_auth = 0;
- } - }
+ /* setup authentication variables for the session*/ + /* setup authentication variables for the session*/
+ if (iscsi_setup_authentication(session, &config->auth)) + *rc = iscsi_setup_authentication(session, &config->auth);
+ if (*rc)
+ goto fail; + goto fail;
- /* copy in whatever credentials we have */ - /* copy in whatever credentials we have */
@ -1192,7 +1200,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-
} }
static int static int
@@ -1018,7 +871,6 @@ process_recvd_pdu(struct iscsi_hdr *pdu, @@ -1018,7 +878,6 @@ process_recvd_pdu(struct iscsi_hdr *pdu,
struct list_head *rec_list, struct list_head *rec_list,
iscsi_session_t *session, iscsi_session_t *session,
struct str_buffer *sendtargets, struct str_buffer *sendtargets,
@ -1200,7 +1208,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-
int *active, int *active,
int *valid_text, int *valid_text,
char *data) char *data)
@@ -1063,8 +915,7 @@ process_recvd_pdu(struct iscsi_hdr *pdu, @@ -1063,8 +922,7 @@ process_recvd_pdu(struct iscsi_hdr *pdu,
process_sendtargets_response(sendtargets, process_sendtargets_response(sendtargets,
final, final,
drec, drec,
@ -1210,7 +1218,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-
if (final) { if (final) {
/* SendTargets exchange is now complete /* SendTargets exchange is now complete
@@ -1096,11 +947,9 @@ process_recvd_pdu(struct iscsi_hdr *pdu, @@ -1096,11 +954,9 @@ process_recvd_pdu(struct iscsi_hdr *pdu,
} }
/* /*
@ -1224,7 +1232,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-
{ {
struct iscsi_logout logout_req; struct iscsi_logout logout_req;
struct iscsi_logout_rsp logout_resp; struct iscsi_logout_rsp logout_resp;
@@ -1128,7 +977,7 @@ iscsi_logout_and_disconnect(iscsi_sessio @@ -1128,7 +984,7 @@ iscsi_logout_and_disconnect(iscsi_sessio
if (!rc) { if (!rc) {
log_error( log_error(
"iscsid: iscsi_logout - failed to send logout PDU."); "iscsid: iscsi_logout - failed to send logout PDU.");
@ -1233,7 +1241,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-
} }
/* /*
@@ -1138,117 +987,278 @@ iscsi_logout_and_disconnect(iscsi_sessio @@ -1138,117 +994,278 @@ iscsi_logout_and_disconnect(iscsi_sessio
rc = iscsi_io_recv_pdu(&session->conn[0], rc = iscsi_io_recv_pdu(&session->conn[0],
(struct iscsi_hdr *)&logout_resp, ISCSI_DIGEST_NONE, NULL, (struct iscsi_hdr *)&logout_resp, ISCSI_DIGEST_NONE, NULL,
0, ISCSI_DIGEST_NONE, 1); 0, ISCSI_DIGEST_NONE, 1);
@ -1248,7 +1256,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-
logout_resp.response); logout_resp.response);
} }
+} +}
+
+static void iscsi_destroy_session(struct iscsi_session *session) +static void iscsi_destroy_session(struct iscsi_session *session)
+{ +{
+ struct iscsi_transport *t = session->t; + struct iscsi_transport *t = session->t;
@ -1282,7 +1290,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-
+ session->id, conn->id, rc); + session->id, conn->id, rc);
+ goto done; + goto done;
+ } + }
+
+ log_debug(2, "%s destroy session", __FUNCTION__); + log_debug(2, "%s destroy session", __FUNCTION__);
+ rc = ipc->destroy_session(session->t->handle, session->id); + rc = ipc->destroy_session(session->t->handle, session->id);
+ if (rc) + if (rc)
@ -1583,7 +1591,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-
/* slowly back off the frequency of login attempts */ /* slowly back off the frequency of login attempts */
if (login_failures == 0) if (login_failures == 0)
login_delay = 0; login_delay = 0;
@@ -1263,47 +1273,44 @@ redirect_reconnect: @@ -1263,47 +1280,44 @@ redirect_reconnect:
else else
login_delay = 60; /* after 2 minutes, try once a minute */ login_delay = 60; /* after 2 minutes, try once a minute */
@ -1654,7 +1662,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-
case LOGIN_OK: case LOGIN_OK:
case LOGIN_REDIRECT: case LOGIN_REDIRECT:
break; break;
@@ -1311,8 +1318,7 @@ redirect_reconnect: @@ -1311,8 +1325,7 @@ redirect_reconnect:
case LOGIN_IO_ERROR: case LOGIN_IO_ERROR:
case LOGIN_REDIRECTION_FAILED: case LOGIN_REDIRECTION_FAILED:
/* try again */ /* try again */
@ -1664,7 +1672,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-
login_failures++; login_failures++;
goto set_address; goto set_address;
@@ -1322,16 +1328,16 @@ redirect_reconnect: @@ -1322,16 +1335,16 @@ redirect_reconnect:
case LOGIN_AUTHENTICATION_FAILED: case LOGIN_AUTHENTICATION_FAILED:
case LOGIN_VERSION_MISMATCH: case LOGIN_VERSION_MISMATCH:
case LOGIN_INVALID_PDU: case LOGIN_INVALID_PDU:
@ -1686,7 +1694,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-
login_failures = 0; login_failures = 0;
break; break;
case ISCSI_STATUS_CLS_REDIRECT: case ISCSI_STATUS_CLS_REDIRECT:
@@ -1343,14 +1349,16 @@ redirect_reconnect: @@ -1343,14 +1356,16 @@ redirect_reconnect:
case ISCSI_LOGIN_STATUS_TGT_MOVED_TEMP: case ISCSI_LOGIN_STATUS_TGT_MOVED_TEMP:
log_warning( log_warning(
"discovery login temporarily redirected to " "discovery login temporarily redirected to "
@ -1706,7 +1714,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-
goto redirect_reconnect; goto redirect_reconnect;
default: default:
log_error( log_error(
@@ -1361,32 +1369,134 @@ redirect_reconnect: @@ -1361,32 +1376,130 @@ redirect_reconnect:
} }
break; break;
case ISCSI_STATUS_CLS_INITIATOR_ERR: case ISCSI_STATUS_CLS_INITIATOR_ERR:
@ -1792,7 +1800,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-
+ int active = 0, valid_text = 0; + int active = 0, valid_text = 0;
+ struct timeval connection_timer; + struct timeval connection_timer;
+ int timeout; + int timeout;
+ int rc; + int rc = 0;
+ struct str_buffer sendtargets; + struct str_buffer sendtargets;
+ unsigned int data_len; + unsigned int data_len;
+ struct iscsi_sendtargets_config *config = &drec->u.sendtargets; + struct iscsi_sendtargets_config *config = &drec->u.sendtargets;
@ -1804,13 +1812,9 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-
+ iscsi_timer_clear(&connection_timer); + iscsi_timer_clear(&connection_timer);
+ +
+ /* allocate a new session, and initialize default values */ + /* allocate a new session, and initialize default values */
+ session = iscsi_alloc_session(config, iface); + session = iscsi_alloc_session(config, iface, &rc);
+ if (session == NULL) { + if (rc)
+ log_error("Discovery process to %s:%d failed to " + return rc;
+ "create a discovery session.",
+ drec->address, drec->port);
+ return ISCSI_ERR_NOMEM;
+ }
+ +
+ ipc_ev_context.conn = &session->conn[0]; + ipc_ev_context.conn = &session->conn[0];
+ ipc_register_ev_callback(&ipc_clbk); + ipc_register_ev_callback(&ipc_clbk);
@ -1852,7 +1856,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-
/* reinitialize */ /* reinitialize */
str_truncate_buffer(&sendtargets, 0); str_truncate_buffer(&sendtargets, 0);
@@ -1397,7 +1507,7 @@ redirect_reconnect: @@ -1397,7 +1510,7 @@ redirect_reconnect:
active = 1; active = 1;
/* set timeouts */ /* set timeouts */
@ -1861,7 +1865,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-
/* prepare to poll */ /* prepare to poll */
memset(&pfd, 0, sizeof (pfd)); memset(&pfd, 0, sizeof (pfd));
@@ -1405,7 +1515,7 @@ redirect_reconnect: @@ -1405,7 +1518,7 @@ redirect_reconnect:
pfd.events = POLLIN | POLLPRI; pfd.events = POLLIN | POLLPRI;
repoll: repoll:
@ -1870,7 +1874,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-
/* block until we receive a PDU, a TCP FIN, a TCP RST, /* block until we receive a PDU, a TCP FIN, a TCP RST,
* or a timeout * or a timeout
*/ */
@@ -1422,31 +1532,30 @@ repoll: @@ -1422,31 +1535,30 @@ repoll:
"discovery process to %s:%d returned from poll, rc %d", "discovery process to %s:%d returned from poll, rc %d",
drec->address, drec->port, rc); drec->address, drec->port, rc);
@ -1915,7 +1919,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-
goto free_sendtargets; goto free_sendtargets;
} }
@@ -1455,14 +1564,13 @@ repoll: @@ -1455,14 +1567,13 @@ repoll:
*/ */
rc = process_recvd_pdu(pdu, drec, rec_list, rc = process_recvd_pdu(pdu, drec, rec_list,
session, &sendtargets, session, &sendtargets,
@ -1931,7 +1935,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-
session->conn[0].active_timeout); session->conn[0].active_timeout);
goto repoll; goto repoll;
} }
@@ -1472,8 +1580,7 @@ repoll: @@ -1472,8 +1583,7 @@ repoll:
log_warning("discovery session to %s:%d " log_warning("discovery session to %s:%d "
"terminating after hangup", "terminating after hangup",
drec->address, drec->port); drec->address, drec->port);
@ -1941,7 +1945,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-
goto free_sendtargets; goto free_sendtargets;
} }
@@ -1489,18 +1596,9 @@ repoll: @@ -1489,18 +1599,9 @@ repoll:
goto reconnect; goto reconnect;
} }
} else if (rc < 0) { } else if (rc < 0) {
@ -1963,7 +1967,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-
} }
log_debug(1, "discovery process to %s:%d exiting", log_debug(1, "discovery process to %s:%d exiting",
@@ -1510,8 +1608,9 @@ repoll: @@ -1510,8 +1611,9 @@ repoll:
free_sendtargets: free_sendtargets:
str_free_buffer(&sendtargets); str_free_buffer(&sendtargets);
free(data); free(data);
@ -1976,7 +1980,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discovery.c open-iscsi-2.0-872-rc4-
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discoveryd.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/discoveryd.c diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discoveryd.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/discoveryd.c
--- open-iscsi-2.0-872-rc4-bnx2i/usr/discoveryd.c 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/usr/discoveryd.c 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/discoveryd.c 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/discoveryd.c 2011-02-03 20:14:23.000000000 -0600
@@ -44,6 +44,7 @@ @@ -44,6 +44,7 @@
#include "isns.h" #include "isns.h"
#include "paths.h" #include "paths.h"
@ -2222,7 +2226,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/discoveryd.c open-iscsi-2.0-872-rc4
return 0; return 0;
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/event_poll.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/event_poll.c diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/event_poll.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/event_poll.c
--- open-iscsi-2.0-872-rc4-bnx2i/usr/event_poll.c 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/usr/event_poll.c 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/event_poll.c 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/event_poll.c 2011-02-03 20:14:23.000000000 -0600
@@ -35,6 +35,7 @@ @@ -35,6 +35,7 @@
#include "iscsi_ipc.h" #include "iscsi_ipc.h"
#include "actor.h" #include "actor.h"
@ -2240,7 +2244,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/event_poll.c open-iscsi-2.0-872-rc4
} }
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/host.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/host.c diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/host.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/host.c
--- open-iscsi-2.0-872-rc4-bnx2i/usr/host.c 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/usr/host.c 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/host.c 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/host.c 2011-02-03 20:14:23.000000000 -0600
@@ -33,6 +33,7 @@ @@ -33,6 +33,7 @@
#include "transport.h" #include "transport.h"
#include "initiator.h" #include "initiator.h"
@ -2271,7 +2275,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/host.c open-iscsi-2.0-872-rc4-bnx2i
} }
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/idbm.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/idbm.c diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/idbm.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/idbm.c
--- open-iscsi-2.0-872-rc4-bnx2i/usr/idbm.c 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/usr/idbm.c 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/idbm.c 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/idbm.c 2011-02-03 20:14:23.000000000 -0600
@@ -40,6 +40,7 @@ @@ -40,6 +40,7 @@
#include "iface.h" #include "iface.h"
#include "sysdeps.h" #include "sysdeps.h"
@ -2970,7 +2974,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/idbm.c open-iscsi-2.0-872-rc4-bnx2i
iface_setup_defaults(&rec->iface); iface_setup_defaults(&rec->iface);
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/idbm.h open-iscsi-2.0-872-rc4-bnx2i.work/usr/idbm.h diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/idbm.h open-iscsi-2.0-872-rc4-bnx2i.work/usr/idbm.h
--- open-iscsi-2.0-872-rc4-bnx2i/usr/idbm.h 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/usr/idbm.h 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/idbm.h 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/idbm.h 2011-02-03 20:14:23.000000000 -0600
@@ -93,9 +93,6 @@ struct rec_op_data { @@ -93,9 +93,6 @@ struct rec_op_data {
node_rec_t *match_rec; node_rec_t *match_rec;
idbm_iface_op_fn *fn; idbm_iface_op_fn *fn;
@ -2983,7 +2987,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/idbm.h open-iscsi-2.0-872-rc4-bnx2i
extern int idbm_for_each_node(int *found, void *data, extern int idbm_for_each_node(int *found, void *data,
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iface.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/iface.c diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iface.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/iface.c
--- open-iscsi-2.0-872-rc4-bnx2i/usr/iface.c 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/usr/iface.c 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/iface.c 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/iface.c 2011-02-03 20:14:23.000000000 -0600
@@ -39,6 +39,7 @@ @@ -39,6 +39,7 @@
#include "host.h" #include "host.h"
#include "fw_context.h" #include "fw_context.h"
@ -3142,7 +3146,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iface.c open-iscsi-2.0-872-rc4-bnx2
INIT_LIST_HEAD(&iface_copy->list); INIT_LIST_HEAD(&iface_copy->list);
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/initiator.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/initiator.c diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/initiator.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/initiator.c
--- open-iscsi-2.0-872-rc4-bnx2i/usr/initiator.c 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/usr/initiator.c 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/initiator.c 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/initiator.c 2011-02-03 20:14:23.000000000 -0600
@@ -46,6 +46,7 @@ @@ -46,6 +46,7 @@
#include "iscsi_settings.h" #include "iscsi_settings.h"
#include "iface.h" #include "iface.h"
@ -4701,7 +4705,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/initiator.c open-iscsi-2.0-872-rc4-
+} +}
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/initiator_common.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/initiator_common.c diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/initiator_common.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/initiator_common.c
--- open-iscsi-2.0-872-rc4-bnx2i/usr/initiator_common.c 1969-12-31 18:00:00.000000000 -0600 --- open-iscsi-2.0-872-rc4-bnx2i/usr/initiator_common.c 1969-12-31 18:00:00.000000000 -0600
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/initiator_common.c 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/initiator_common.c 2011-02-03 20:14:23.000000000 -0600
@@ -0,0 +1,601 @@ @@ -0,0 +1,601 @@
+/* +/*
+ * Common code for setting up discovery and normal sessions. + * Common code for setting up discovery and normal sessions.
@ -5306,7 +5310,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/initiator_common.c open-iscsi-2.0-8
+} +}
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/initiator.h open-iscsi-2.0-872-rc4-bnx2i.work/usr/initiator.h diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/initiator.h open-iscsi-2.0-872-rc4-bnx2i.work/usr/initiator.h
--- open-iscsi-2.0-872-rc4-bnx2i/usr/initiator.h 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/usr/initiator.h 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/initiator.h 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/initiator.h 2011-02-03 20:14:23.000000000 -0600
@@ -67,6 +67,7 @@ typedef enum conn_login_status_e { @@ -67,6 +67,7 @@ typedef enum conn_login_status_e {
CONN_LOGIN_RETRY = 3, CONN_LOGIN_RETRY = 3,
CONN_LOGIN_IMM_RETRY = 4, CONN_LOGIN_IMM_RETRY = 4,
@ -5418,7 +5422,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/initiator.h open-iscsi-2.0-872-rc4-
#endif /* INITIATOR_H */ #endif /* INITIATOR_H */
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/io.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/io.c diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/io.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/io.c
--- open-iscsi-2.0-872-rc4-bnx2i/usr/io.c 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/usr/io.c 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/io.c 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/io.c 2011-02-03 20:14:23.000000000 -0600
@@ -401,7 +401,6 @@ iscsi_io_connect(iscsi_conn_t *conn) @@ -401,7 +401,6 @@ iscsi_io_connect(iscsi_conn_t *conn)
int rc, ret; int rc, ret;
struct sigaction action; struct sigaction action;
@ -5623,7 +5627,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/io.c open-iscsi-2.0-872-rc4-bnx2i.w
return h_bytes + ahs_bytes + d_bytes; return h_bytes + ahs_bytes + d_bytes;
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsiadm.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsiadm.c diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsiadm.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsiadm.c
--- open-iscsi-2.0-872-rc4-bnx2i/usr/iscsiadm.c 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/usr/iscsiadm.c 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsiadm.c 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsiadm.c 2011-02-03 20:14:23.000000000 -0600
@@ -48,10 +48,11 @@ @@ -48,10 +48,11 @@
#include "session_mgmt.h" #include "session_mgmt.h"
#include "iscsid_req.h" #include "iscsid_req.h"
@ -6742,7 +6746,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsiadm.c open-iscsi-2.0-872-rc4-b
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsid.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsid.c diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsid.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsid.c
--- open-iscsi-2.0-872-rc4-bnx2i/usr/iscsid.c 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/usr/iscsid.c 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsid.c 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsid.c 2011-02-03 20:14:23.000000000 -0600
@@ -31,6 +31,8 @@ @@ -31,6 +31,8 @@
#include <sys/utsname.h> #include <sys/utsname.h>
#include <sys/types.h> #include <sys/types.h>
@ -6910,7 +6914,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsid.c open-iscsi-2.0-872-rc4-bnx
actor_init(); actor_init();
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsid.h open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsid.h diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsid.h open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsid.h
--- open-iscsi-2.0-872-rc4-bnx2i/usr/iscsid.h 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/usr/iscsid.h 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsid.h 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsid.h 2011-02-03 20:14:23.000000000 -0600
@@ -31,6 +31,5 @@ struct iscsi_daemon_config { @@ -31,6 +31,5 @@ struct iscsi_daemon_config {
char *initiator_alias; char *initiator_alias;
}; };
@ -6920,7 +6924,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsid.h open-iscsi-2.0-872-rc4-bnx
#endif /* ISCSID_H */ #endif /* ISCSID_H */
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsid_req.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsid_req.c diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsid_req.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsid_req.c
--- open-iscsi-2.0-872-rc4-bnx2i/usr/iscsid_req.c 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/usr/iscsid_req.c 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsid_req.c 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsid_req.c 2011-02-03 20:14:23.000000000 -0600
@@ -31,6 +31,7 @@ @@ -31,6 +31,7 @@
#include "mgmt_ipc.h" #include "mgmt_ipc.h"
#include "iscsi_util.h" #include "iscsi_util.h"
@ -7045,7 +7049,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsid_req.c open-iscsi-2.0-872-rc4
-} -}
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsid_req.h open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsid_req.h diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsid_req.h open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsid_req.h
--- open-iscsi-2.0-872-rc4-bnx2i/usr/iscsid_req.h 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/usr/iscsid_req.h 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsid_req.h 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsid_req.h 2011-02-03 20:14:23.000000000 -0600
@@ -27,7 +27,6 @@ struct node_rec; @@ -27,7 +27,6 @@ struct node_rec;
extern int iscsid_exec_req(struct iscsiadm_req *req, struct iscsiadm_rsp *rsp, extern int iscsid_exec_req(struct iscsiadm_req *req, struct iscsiadm_rsp *rsp,
@ -7056,7 +7060,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsid_req.h open-iscsi-2.0-872-rc4
extern int iscsid_req_by_rec(int cmd, struct node_rec *rec); extern int iscsid_req_by_rec(int cmd, struct node_rec *rec);
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_err.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsi_err.c diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_err.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsi_err.c
--- open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_err.c 1969-12-31 18:00:00.000000000 -0600 --- open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_err.c 1969-12-31 18:00:00.000000000 -0600
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsi_err.c 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsi_err.c 2011-02-03 20:14:23.000000000 -0600
@@ -0,0 +1,72 @@ @@ -0,0 +1,72 @@
+/* +/*
+ * iSCSI error helpers + * iSCSI error helpers
@ -7132,7 +7136,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_err.c open-iscsi-2.0-872-rc4-
+} +}
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_ipc.h open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsi_ipc.h diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_ipc.h open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsi_ipc.h
--- open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_ipc.h 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_ipc.h 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsi_ipc.h 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsi_ipc.h 2011-02-03 20:14:23.000000000 -0600
@@ -34,6 +34,26 @@ enum { @@ -34,6 +34,26 @@ enum {
}; };
@ -7162,7 +7166,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_ipc.h open-iscsi-2.0-872-rc4-
* struct iscsi_ipc - Open-iSCSI Interface for Kernel IPC * struct iscsi_ipc - Open-iSCSI Interface for Kernel IPC
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_net_util.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsi_net_util.c diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_net_util.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsi_net_util.c
--- open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_net_util.c 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_net_util.c 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsi_net_util.c 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsi_net_util.c 2011-02-03 20:14:23.000000000 -0600
@@ -41,6 +41,7 @@ struct iscsi_net_driver { @@ -41,6 +41,7 @@ struct iscsi_net_driver {
static struct iscsi_net_driver net_drivers[] = { static struct iscsi_net_driver net_drivers[] = {
#ifdef OFFLOAD_BOOT_SUPPORTED #ifdef OFFLOAD_BOOT_SUPPORTED
@ -7173,7 +7177,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_net_util.c open-iscsi-2.0-872
#endif #endif
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsistart.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsistart.c diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsistart.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsistart.c
--- open-iscsi-2.0-872-rc4-bnx2i/usr/iscsistart.c 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/usr/iscsistart.c 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsistart.c 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsistart.c 2011-02-03 20:14:23.000000000 -0600
@@ -47,6 +47,7 @@ @@ -47,6 +47,7 @@
#include "iface.h" #include "iface.h"
#include "sysdeps.h" #include "sysdeps.h"
@ -7338,7 +7342,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsistart.c open-iscsi-2.0-872-rc4
ipc->ctldev_close(); ipc->ctldev_close();
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_sysfs.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsi_sysfs.c diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_sysfs.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsi_sysfs.c
--- open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_sysfs.c 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_sysfs.c 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsi_sysfs.c 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsi_sysfs.c 2011-02-03 20:14:23.000000000 -0600
@@ -36,6 +36,7 @@ @@ -36,6 +36,7 @@
#include "iface.h" #include "iface.h"
#include "session_info.h" #include "session_info.h"
@ -7608,7 +7612,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_sysfs.c open-iscsi-2.0-872-rc
snprintf(path_full, sizeof(path_full), "%s%s/device/target%d:0:%d", snprintf(path_full, sizeof(path_full), "%s%s/device/target%d:0:%d",
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_timer.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsi_timer.c diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_timer.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsi_timer.c
--- open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_timer.c 1969-12-31 18:00:00.000000000 -0600 --- open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_timer.c 1969-12-31 18:00:00.000000000 -0600
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsi_timer.c 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsi_timer.c 2011-02-03 20:14:23.000000000 -0600
@@ -0,0 +1,86 @@ @@ -0,0 +1,86 @@
+/* +/*
+ * iSCSI timer + * iSCSI timer
@ -7698,7 +7702,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_timer.c open-iscsi-2.0-872-rc
+} +}
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_timer.h open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsi_timer.h diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_timer.h open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsi_timer.h
--- open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_timer.h 1969-12-31 18:00:00.000000000 -0600 --- open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_timer.h 1969-12-31 18:00:00.000000000 -0600
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsi_timer.h 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/iscsi_timer.h 2011-02-03 20:14:23.000000000 -0600
@@ -0,0 +1,28 @@ @@ -0,0 +1,28 @@
+/* +/*
+ * iSCSI timer + * iSCSI timer
@ -7730,7 +7734,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/iscsi_timer.h open-iscsi-2.0-872-rc
+#endif +#endif
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/login.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/login.c diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/login.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/login.c
--- open-iscsi-2.0-872-rc4-bnx2i/usr/login.c 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/usr/login.c 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/login.c 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/login.c 2011-02-03 20:14:23.000000000 -0600
@@ -27,11 +27,14 @@ @@ -27,11 +27,14 @@
#include <stdio.h> #include <stdio.h>
#include <stdlib.h> #include <stdlib.h>
@ -7865,7 +7869,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/login.c open-iscsi-2.0-872-rc4-bnx2
c->ret = LOGIN_OK; c->ret = LOGIN_OK;
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/Makefile open-iscsi-2.0-872-rc4-bnx2i.work/usr/Makefile diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/Makefile open-iscsi-2.0-872-rc4-bnx2i.work/usr/Makefile
--- open-iscsi-2.0-872-rc4-bnx2i/usr/Makefile 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/usr/Makefile 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/Makefile 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/Makefile 2011-02-03 20:14:23.000000000 -0600
@@ -37,12 +37,13 @@ PROGRAMS = iscsid iscsiadm iscsistart @@ -37,12 +37,13 @@ PROGRAMS = iscsid iscsiadm iscsistart
# libc compat files # libc compat files
SYSDEPS_SRCS = $(wildcard ../utils/sysdeps/*.o) SYSDEPS_SRCS = $(wildcard ../utils/sysdeps/*.o)
@ -7904,7 +7908,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/Makefile open-iscsi-2.0-872-rc4-bnx
clean: clean:
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/mgmt_ipc.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/mgmt_ipc.c diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/mgmt_ipc.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/mgmt_ipc.c
--- open-iscsi-2.0-872-rc4-bnx2i/usr/mgmt_ipc.c 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/usr/mgmt_ipc.c 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/mgmt_ipc.c 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/mgmt_ipc.c 2011-02-03 20:14:23.000000000 -0600
@@ -35,6 +35,7 @@ @@ -35,6 +35,7 @@
#include "transport.h" #include "transport.h"
#include "sysdeps.h" #include "sysdeps.h"
@ -8205,7 +8209,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/mgmt_ipc.c open-iscsi-2.0-872-rc4-b
err: err:
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/mgmt_ipc.h open-iscsi-2.0-872-rc4-bnx2i.work/usr/mgmt_ipc.h diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/mgmt_ipc.h open-iscsi-2.0-872-rc4-bnx2i.work/usr/mgmt_ipc.h
--- open-iscsi-2.0-872-rc4-bnx2i/usr/mgmt_ipc.h 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/usr/mgmt_ipc.h 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/mgmt_ipc.h 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/mgmt_ipc.h 2011-02-03 20:14:23.000000000 -0600
@@ -26,30 +26,6 @@ @@ -26,30 +26,6 @@
#define ISCSIADM_NAMESPACE "ISCSIADM_ABSTRACT_NAMESPACE" #define ISCSIADM_NAMESPACE "ISCSIADM_ABSTRACT_NAMESPACE"
#define PEERUSER_MAX 64 #define PEERUSER_MAX 64
@ -8277,7 +8281,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/mgmt_ipc.h open-iscsi-2.0-872-rc4-b
void mgmt_ipc_handle(int accept_fd); void mgmt_ipc_handle(int accept_fd);
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/netlink.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/netlink.c diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/netlink.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/netlink.c
--- open-iscsi-2.0-872-rc4-bnx2i/usr/netlink.c 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/usr/netlink.c 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/netlink.c 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/netlink.c 2011-02-03 20:14:23.000000000 -0600
@@ -33,7 +33,6 @@ @@ -33,7 +33,6 @@
#include "types.h" #include "types.h"
@ -8509,7 +8513,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/netlink.c open-iscsi-2.0-872-rc4-bn
+} +}
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/session_info.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/session_info.c diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/session_info.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/session_info.c
--- open-iscsi-2.0-872-rc4-bnx2i/usr/session_info.c 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/usr/session_info.c 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/session_info.c 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/session_info.c 2011-02-03 20:14:23.000000000 -0600
@@ -13,6 +13,7 @@ @@ -13,6 +13,7 @@
#include "initiator.h" #include "initiator.h"
#include "iface.h" #include "iface.h"
@ -8547,7 +8551,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/session_info.c open-iscsi-2.0-872-r
} }
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/session_mgmt.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/session_mgmt.c diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/session_mgmt.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/session_mgmt.c
--- open-iscsi-2.0-872-rc4-bnx2i/usr/session_mgmt.c 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/usr/session_mgmt.c 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/session_mgmt.c 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/session_mgmt.c 2011-02-03 20:14:23.000000000 -0600
@@ -32,6 +32,7 @@ @@ -32,6 +32,7 @@
#include "iscsi_sysfs.h" #include "iscsi_sysfs.h"
#include "log.h" #include "log.h"
@ -8663,7 +8667,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/session_mgmt.c open-iscsi-2.0-872-r
} }
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/transport.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/transport.c diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/transport.c open-iscsi-2.0-872-rc4-bnx2i.work/usr/transport.c
--- open-iscsi-2.0-872-rc4-bnx2i/usr/transport.c 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/usr/transport.c 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/transport.c 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/usr/transport.c 2011-02-03 20:14:23.000000000 -0600
@@ -25,7 +25,7 @@ @@ -25,7 +25,7 @@
#include "log.h" #include "log.h"
#include "iscsi_util.h" #include "iscsi_util.h"
@ -8710,7 +8714,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/usr/transport.c open-iscsi-2.0-872-rc4-
} }
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/utils/fwparam_ibft/fw_entry.c open-iscsi-2.0-872-rc4-bnx2i.work/utils/fwparam_ibft/fw_entry.c diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/utils/fwparam_ibft/fw_entry.c open-iscsi-2.0-872-rc4-bnx2i.work/utils/fwparam_ibft/fw_entry.c
--- open-iscsi-2.0-872-rc4-bnx2i/utils/fwparam_ibft/fw_entry.c 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/utils/fwparam_ibft/fw_entry.c 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/utils/fwparam_ibft/fw_entry.c 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/utils/fwparam_ibft/fw_entry.c 2011-02-03 20:14:23.000000000 -0600
@@ -34,6 +34,7 @@ @@ -34,6 +34,7 @@
#include "fwparam.h" #include "fwparam.h"
#include "idbm_fields.h" #include "idbm_fields.h"
@ -8742,7 +8746,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/utils/fwparam_ibft/fw_entry.c open-iscs
/** /**
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/utils/fwparam_ibft/fwparam_ppc.c open-iscsi-2.0-872-rc4-bnx2i.work/utils/fwparam_ibft/fwparam_ppc.c diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/utils/fwparam_ibft/fwparam_ppc.c open-iscsi-2.0-872-rc4-bnx2i.work/utils/fwparam_ibft/fwparam_ppc.c
--- open-iscsi-2.0-872-rc4-bnx2i/utils/fwparam_ibft/fwparam_ppc.c 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/utils/fwparam_ibft/fwparam_ppc.c 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/utils/fwparam_ibft/fwparam_ppc.c 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/utils/fwparam_ibft/fwparam_ppc.c 2011-02-03 20:14:23.000000000 -0600
@@ -30,6 +30,7 @@ @@ -30,6 +30,7 @@
#include "iscsi_obp.h" #include "iscsi_obp.h"
#include "prom_parse.h" #include "prom_parse.h"
@ -8837,7 +8841,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/utils/fwparam_ibft/fwparam_ppc.c open-i
list_add_tail(&context->list, list); list_add_tail(&context->list, list);
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/utils/fwparam_ibft/fwparam_sysfs.c open-iscsi-2.0-872-rc4-bnx2i.work/utils/fwparam_ibft/fwparam_sysfs.c diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/utils/fwparam_ibft/fwparam_sysfs.c open-iscsi-2.0-872-rc4-bnx2i.work/utils/fwparam_ibft/fwparam_sysfs.c
--- open-iscsi-2.0-872-rc4-bnx2i/utils/fwparam_ibft/fwparam_sysfs.c 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/utils/fwparam_ibft/fwparam_sysfs.c 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/utils/fwparam_ibft/fwparam_sysfs.c 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/utils/fwparam_ibft/fwparam_sysfs.c 2011-02-03 20:14:23.000000000 -0600
@@ -36,6 +36,7 @@ @@ -36,6 +36,7 @@
#include "fwparam.h" #include "fwparam.h"
#include "sysdeps.h" #include "sysdeps.h"
@ -8949,7 +8953,7 @@ diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/utils/fwparam_ibft/fwparam_sysfs.c open
return rc; return rc;
diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/utils/open-isns/socket.c open-iscsi-2.0-872-rc4-bnx2i.work/utils/open-isns/socket.c diff -Naurp open-iscsi-2.0-872-rc4-bnx2i/utils/open-isns/socket.c open-iscsi-2.0-872-rc4-bnx2i.work/utils/open-isns/socket.c
--- open-iscsi-2.0-872-rc4-bnx2i/utils/open-isns/socket.c 2010-07-11 04:05:58.000000000 -0500 --- open-iscsi-2.0-872-rc4-bnx2i/utils/open-isns/socket.c 2010-07-11 04:05:58.000000000 -0500
+++ open-iscsi-2.0-872-rc4-bnx2i.work/utils/open-isns/socket.c 2011-01-31 02:26:39.000000000 -0600 +++ open-iscsi-2.0-872-rc4-bnx2i.work/utils/open-isns/socket.c 2011-02-03 20:14:23.000000000 -0600
@@ -805,7 +805,7 @@ isns_net_stream_xmit(isns_socket_t *sock @@ -805,7 +805,7 @@ isns_net_stream_xmit(isns_socket_t *sock
void void
isns_net_stream_hup(isns_socket_t *sock) isns_net_stream_hup(isns_socket_t *sock)

View File

@ -3,7 +3,7 @@
Summary: iSCSI daemon and utility programs Summary: iSCSI daemon and utility programs
Name: iscsi-initiator-utils Name: iscsi-initiator-utils
Version: 6.2.0.872 Version: 6.2.0.872
Release: 14%{?dist} Release: 15%{?dist}
Source0: http://people.redhat.com/mchristi/iscsi/rhel6.0/source/open-iscsi-2.0-872-rc4-bnx2i.tar.gz Source0: http://people.redhat.com/mchristi/iscsi/rhel6.0/source/open-iscsi-2.0-872-rc4-bnx2i.tar.gz
Source1: iscsid.init Source1: iscsid.init
Source2: iscsidevs.init Source2: iscsidevs.init
@ -11,7 +11,7 @@ Source3: 04-iscsi
# sync brcm to 0.6.2.13 # sync brcm to 0.6.2.13
Patch0: iscsi-initiator-utils-sync-brcm-0.6.2.13.patch Patch0: iscsi-initiator-utils-sync-brcm-0.6.2.13.patch
# sync iscsi tools to upstream commit cc425fd44b24d9fda74395951570460fc919d076 # sync iscsi tools to upstream commit 2e281f047571e9fb99b9b0b11ff479a487a8e6b1
Patch1: iscsi-initiator-utils-sync-iscsi.patch Patch1: iscsi-initiator-utils-sync-iscsi.patch
# Add Red Hat specific info to docs. # Add Red Hat specific info to docs.
Patch2: iscsi-initiator-utils-update-initscripts-and-docs.patch Patch2: iscsi-initiator-utils-update-initscripts-and-docs.patch
@ -39,12 +39,14 @@ Patch12: iscsi-initiator-utils-brcm-man.patch
Patch13: iscsi-initiator-utils-disable-dsa-code.patch Patch13: iscsi-initiator-utils-disable-dsa-code.patch
# support hostnames in node mode # support hostnames in node mode
Patch14: iscsi-initiator-utils-node-mode-hostname.patch Patch14: iscsi-initiator-utils-node-mode-hostname.patch
# DCB iscsi support
Patch15: iscsi-initiator-utils-dcb.patch
Group: System Environment/Daemons Group: System Environment/Daemons
License: GPLv2+ License: GPLv2+
URL: http://www.open-iscsi.org URL: http://www.open-iscsi.org
Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: openssl-devel flex bison python-devel doxygen BuildRequires: openssl-devel flex bison python-devel doxygen kernel-headers
Requires(post): chkconfig Requires(post): chkconfig
Requires(preun): chkconfig /sbin/service Requires(preun): chkconfig /sbin/service
@ -81,6 +83,7 @@ developing applications that use %{name}.
%patch12 -p1 -b .brcm-man %patch12 -p1 -b .brcm-man
%patch13 -p1 -b .disable-dsa-code %patch13 -p1 -b .disable-dsa-code
%patch14 -p1 -b .node-mode-hostname %patch14 -p1 -b .node-mode-hostname
%patch15 -p1 -b .dcb
%build %build
cd utils/open-isns cd utils/open-isns
@ -199,7 +202,11 @@ fi
%{_includedir}/libiscsi.h %{_includedir}/libiscsi.h
%changelog %changelog
* Mon Jan 31 2011 Mike Christie <akozumpl@redhat.com> 6.2.0.872.14 * Thu Feb 3 2011 Mike Christie <mcrhsit@redhat.com> 6.2.0.872.15
- 640340 fix iscsiadm exit codes.
- 523492 iSCSI DCB support
* Mon Jan 31 2011 Mike Christie <mchristi@redhat.com> 6.2.0.872.14
- 593269 iscsi was built against libcrypto, but was not using the code - 593269 iscsi was built against libcrypto, but was not using the code
so this disabled the building of that code. so this disabled the building of that code.
- 599539 document brcm_iscsiuio options in man page. - 599539 document brcm_iscsiuio options in man page.