aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/ipr.c
diff options
context:
space:
mode:
authorChris Wright <chrisw@sous-sol.org>2010-05-12 21:28:57 -0400
committerGreg Kroah-Hartman <gregkh@suse.de>2010-05-21 12:37:31 -0400
commit2c3c8bea608866d8bd9dcf92657d57fdcac011c5 (patch)
treef509b958d0a65c46c831dbdd447a81e706dd995a /drivers/scsi/ipr.c
parent68d75ed4b84a0806ecd4bc14da4759713b23a532 (diff)
sysfs: add struct file* to bin_attr callbacks
This allows bin_attr->read,write,mmap callbacks to check file specific data (such as inode owner) as part of any privilege validation. Signed-off-by: Chris Wright <chrisw@sous-sol.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/scsi/ipr.c')
-rw-r--r--drivers/scsi/ipr.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/drivers/scsi/ipr.c b/drivers/scsi/ipr.c
index b90c118119d7..6a6661c35b2f 100644
--- a/drivers/scsi/ipr.c
+++ b/drivers/scsi/ipr.c
@@ -3120,6 +3120,7 @@ restart:
3120#ifdef CONFIG_SCSI_IPR_TRACE 3120#ifdef CONFIG_SCSI_IPR_TRACE
3121/** 3121/**
3122 * ipr_read_trace - Dump the adapter trace 3122 * ipr_read_trace - Dump the adapter trace
3123 * @filp: open sysfs file
3123 * @kobj: kobject struct 3124 * @kobj: kobject struct
3124 * @bin_attr: bin_attribute struct 3125 * @bin_attr: bin_attribute struct
3125 * @buf: buffer 3126 * @buf: buffer
@@ -3129,7 +3130,7 @@ restart:
3129 * Return value: 3130 * Return value:
3130 * number of bytes printed to buffer 3131 * number of bytes printed to buffer
3131 **/ 3132 **/
3132static ssize_t ipr_read_trace(struct kobject *kobj, 3133static ssize_t ipr_read_trace(struct file *filp, struct kobject *kobj,
3133 struct bin_attribute *bin_attr, 3134 struct bin_attribute *bin_attr,
3134 char *buf, loff_t off, size_t count) 3135 char *buf, loff_t off, size_t count)
3135{ 3136{
@@ -3764,6 +3765,7 @@ static struct device_attribute *ipr_ioa_attrs[] = {
3764#ifdef CONFIG_SCSI_IPR_DUMP 3765#ifdef CONFIG_SCSI_IPR_DUMP
3765/** 3766/**
3766 * ipr_read_dump - Dump the adapter 3767 * ipr_read_dump - Dump the adapter
3768 * @filp: open sysfs file
3767 * @kobj: kobject struct 3769 * @kobj: kobject struct
3768 * @bin_attr: bin_attribute struct 3770 * @bin_attr: bin_attribute struct
3769 * @buf: buffer 3771 * @buf: buffer
@@ -3773,7 +3775,7 @@ static struct device_attribute *ipr_ioa_attrs[] = {
3773 * Return value: 3775 * Return value:
3774 * number of bytes printed to buffer 3776 * number of bytes printed to buffer
3775 **/ 3777 **/
3776static ssize_t ipr_read_dump(struct kobject *kobj, 3778static ssize_t ipr_read_dump(struct file *filp, struct kobject *kobj,
3777 struct bin_attribute *bin_attr, 3779 struct bin_attribute *bin_attr,
3778 char *buf, loff_t off, size_t count) 3780 char *buf, loff_t off, size_t count)
3779{ 3781{
@@ -3927,6 +3929,7 @@ static int ipr_free_dump(struct ipr_ioa_cfg *ioa_cfg)
3927 3929
3928/** 3930/**
3929 * ipr_write_dump - Setup dump state of adapter 3931 * ipr_write_dump - Setup dump state of adapter
3932 * @filp: open sysfs file
3930 * @kobj: kobject struct 3933 * @kobj: kobject struct
3931 * @bin_attr: bin_attribute struct 3934 * @bin_attr: bin_attribute struct
3932 * @buf: buffer 3935 * @buf: buffer
@@ -3936,7 +3939,7 @@ static int ipr_free_dump(struct ipr_ioa_cfg *ioa_cfg)
3936 * Return value: 3939 * Return value:
3937 * number of bytes printed to buffer 3940 * number of bytes printed to buffer
3938 **/ 3941 **/
3939static ssize_t ipr_write_dump(struct kobject *kobj, 3942static ssize_t ipr_write_dump(struct file *filp, struct kobject *kobj,
3940 struct bin_attribute *bin_attr, 3943 struct bin_attribute *bin_attr,
3941 char *buf, loff_t off, size_t count) 3944 char *buf, loff_t off, size_t count)
3942{ 3945{