diff options
author | Dan Carpenter <dan.carpenter@oracle.com> | 2012-01-27 07:50:55 -0500 |
---|---|---|
committer | Nicholas Bellinger <nab@linux-iscsi.org> | 2012-02-07 01:48:40 -0500 |
commit | 3011684c0b0b77b0f88113ef1c15b18befc6734a (patch) | |
tree | fcac41c9b6cb8de95214e74d0f1c1b84aa979655 /drivers/target | |
parent | c3bc93da24c8f315d9ece741f6e6414a38879ec6 (diff) |
target: handle empty string writes in sysfs
These are root only and we're not likely to hit the problem in practise,
but it makes the static checkers happy.
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
Diffstat (limited to 'drivers/target')
-rw-r--r-- | drivers/target/target_core_configfs.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/drivers/target/target_core_configfs.c b/drivers/target/target_core_configfs.c index 0955bb8979fb..6e043eeb1db9 100644 --- a/drivers/target/target_core_configfs.c +++ b/drivers/target/target_core_configfs.c | |||
@@ -1704,13 +1704,15 @@ static ssize_t target_core_store_dev_alias( | |||
1704 | return -EINVAL; | 1704 | return -EINVAL; |
1705 | } | 1705 | } |
1706 | 1706 | ||
1707 | se_dev->su_dev_flags |= SDF_USING_ALIAS; | ||
1708 | read_bytes = snprintf(&se_dev->se_dev_alias[0], SE_DEV_ALIAS_LEN, | 1707 | read_bytes = snprintf(&se_dev->se_dev_alias[0], SE_DEV_ALIAS_LEN, |
1709 | "%s", page); | 1708 | "%s", page); |
1710 | 1709 | if (!read_bytes) | |
1710 | return -EINVAL; | ||
1711 | if (se_dev->se_dev_alias[read_bytes - 1] == '\n') | 1711 | if (se_dev->se_dev_alias[read_bytes - 1] == '\n') |
1712 | se_dev->se_dev_alias[read_bytes - 1] = '\0'; | 1712 | se_dev->se_dev_alias[read_bytes - 1] = '\0'; |
1713 | 1713 | ||
1714 | se_dev->su_dev_flags |= SDF_USING_ALIAS; | ||
1715 | |||
1714 | pr_debug("Target_Core_ConfigFS: %s/%s set alias: %s\n", | 1716 | pr_debug("Target_Core_ConfigFS: %s/%s set alias: %s\n", |
1715 | config_item_name(&hba->hba_group.cg_item), | 1717 | config_item_name(&hba->hba_group.cg_item), |
1716 | config_item_name(&se_dev->se_dev_group.cg_item), | 1718 | config_item_name(&se_dev->se_dev_group.cg_item), |
@@ -1753,13 +1755,15 @@ static ssize_t target_core_store_dev_udev_path( | |||
1753 | return -EINVAL; | 1755 | return -EINVAL; |
1754 | } | 1756 | } |
1755 | 1757 | ||
1756 | se_dev->su_dev_flags |= SDF_USING_UDEV_PATH; | ||
1757 | read_bytes = snprintf(&se_dev->se_dev_udev_path[0], SE_UDEV_PATH_LEN, | 1758 | read_bytes = snprintf(&se_dev->se_dev_udev_path[0], SE_UDEV_PATH_LEN, |
1758 | "%s", page); | 1759 | "%s", page); |
1759 | 1760 | if (!read_bytes) | |
1761 | return -EINVAL; | ||
1760 | if (se_dev->se_dev_udev_path[read_bytes - 1] == '\n') | 1762 | if (se_dev->se_dev_udev_path[read_bytes - 1] == '\n') |
1761 | se_dev->se_dev_udev_path[read_bytes - 1] = '\0'; | 1763 | se_dev->se_dev_udev_path[read_bytes - 1] = '\0'; |
1762 | 1764 | ||
1765 | se_dev->su_dev_flags |= SDF_USING_UDEV_PATH; | ||
1766 | |||
1763 | pr_debug("Target_Core_ConfigFS: %s/%s set udev_path: %s\n", | 1767 | pr_debug("Target_Core_ConfigFS: %s/%s set udev_path: %s\n", |
1764 | config_item_name(&hba->hba_group.cg_item), | 1768 | config_item_name(&hba->hba_group.cg_item), |
1765 | config_item_name(&se_dev->se_dev_group.cg_item), | 1769 | config_item_name(&se_dev->se_dev_group.cg_item), |