iscsi-initiator-utils/open-iscsi-2.0-870.1-fwparam-ppc-crash.patch

56 lines
1.7 KiB
Diff
Raw Normal View History

diff -up open-iscsi-2.0-870.1/utils/fwparam_ibft/fwparam_ppc.c.crash open-iscsi-2.0-870.1/utils/fwparam_ibft/fwparam_ppc.c
--- open-iscsi-2.0-870.1/utils/fwparam_ibft/fwparam_ppc.c.crash 2008-11-22 18:06:46.000000000 +0100
+++ open-iscsi-2.0-870.1/utils/fwparam_ibft/fwparam_ppc.c 2009-04-27 20:33:33.000000000 +0200
@@ -341,6 +341,7 @@ static int loop_devs(const char *devtree
int i;
char prefix[256];
+ nic_count = 0;
error = nftw(devtree, find_nics, 20, 0);
if (error)
return error;
@@ -352,6 +353,7 @@ static int loop_devs(const char *devtree
qsort(niclist, nic_count, sizeof(char *), nic_cmp);
snprintf(prefix, sizeof(prefix), "%s/%s", devtree, "aliases");
+ dev_count = 0;
error = nftw(prefix, find_initiator, 20, 0);
if (error)
return error;
@@ -366,8 +368,6 @@ static int loop_devs(const char *devtree
}
}
- if (!error)
- putchar('\n');
return error;
}
@@ -425,7 +425,7 @@ static void fill_context(struct boot_con
int fwparam_ppc(struct boot_context *context, const char *filepath)
{
int error;
- int fplen = 0;
+ int dev_count;
char *devtree;
/*
@@ -435,13 +435,10 @@ int fwparam_ppc(struct boot_context *con
* systems that can support iscsi are the ones that provide
* the appropriate FCODE with a load method.
*/
- if (filepath) {
- strncat(filename, filepath, FILENAMESZ);
- fplen = strlen(filename);
- } else
- strncat(filename, DT_TOP, FILENAMESZ);
-
- strncat(filename + fplen, BOOTPATH, FILENAMESZ - fplen);
+ if (filepath)
+ snprintf(filename, FILENAMESZ, "%s%s", filepath, BOOTPATH);
+ else
+ snprintf(filename, FILENAMESZ, "%s%s", DT_TOP, BOOTPATH);
if (debug)
fprintf(stderr, "%s: file:%s; debug:%d\n", __func__, filename,