diff options
author | Mike Christie <michaelc@cs.wisc.edu> | 2011-10-12 01:00:31 -0500 |
---|---|---|
committer | Mike Christie <michaelc@cs.wisc.edu> | 2011-10-12 01:00:31 -0500 |
commit | 36d20a2032ec45ce82b086841d8810d8c7a78428 (patch) | |
tree | 1fcc8511c3ca822a0e2ca50936a9e03c8c2e499f | |
parent | 953f1d229519e988125b504f3813544de41dab32 (diff) | |
download | open-iscsi-36d20a2032ec45ce82b086841d8810d8c7a78428.tar.gz |
iscsi tools: fix ipv6 ibft/firmware boot
The address buffers are too short for many ipv6 addresses
and if ibft/firmware gives us a hostname. As a result iscsistart
and iscsiadm were printing/getting a truncated address which
would cause login and network startup to fail.
-rw-r--r-- | include/fw_context.h | 15 | ||||
-rw-r--r-- | utils/fwparam_ibft/Makefile | 2 |
2 files changed, 9 insertions, 8 deletions
diff --git a/include/fw_context.h b/include/fw_context.h index 770b41a..1640859 100644 --- a/include/fw_context.h +++ b/include/fw_context.h @@ -21,6 +21,7 @@ #ifndef FWPARAM_CONTEXT_H_ #define FWPARAM_CONTEXT_H_ +#include <netdb.h> #include <net/if.h> #include "iscsi_proto.h" @@ -33,7 +34,7 @@ struct boot_context { /* target settings */ int target_port; char targetname[TARGET_NAME_MAXLEN + 1]; - char target_ipaddr[32]; + char target_ipaddr[NI_MAXHOST]; char chap_name[AUTH_STR_MAX_LEN]; char chap_password[AUTH_STR_MAX_LEN]; char chap_name_in[AUTH_STR_MAX_LEN]; @@ -44,14 +45,14 @@ struct boot_context { char initiatorname[TARGET_NAME_MAXLEN + 1]; /* network settings */ - char dhcp[18]; + char dhcp[NI_MAXHOST]; char iface[IF_NAMESIZE]; char mac[18]; - char ipaddr[18]; - char gateway[18]; - char primary_dns[18]; - char secondary_dns[18]; - char mask[18]; + char ipaddr[NI_MAXHOST]; + char gateway[NI_MAXHOST]; + char primary_dns[NI_MAXHOST]; + char secondary_dns[NI_MAXHOST]; + char mask[NI_MAXHOST]; char lun[17]; char vlan[15]; diff --git a/utils/fwparam_ibft/Makefile b/utils/fwparam_ibft/Makefile index ca07b76..c72bb7f 100644 --- a/utils/fwparam_ibft/Makefile +++ b/utils/fwparam_ibft/Makefile @@ -28,7 +28,7 @@ CLEANFILES = $(OBJS) *.output *~ OPTFLAGS ?= -O2 -g -fPIC WARNFLAGS ?= -Wall -Wstrict-prototypes -CFLAGS += $(OPTFLAGS) $(WARNFLAGS) -I../../include -I../../usr +CFLAGS += $(OPTFLAGS) $(WARNFLAGS) -I../../include -I../../usr -D_GNU_SOURCE all: $(OBJS) |