文件操作 - device_attr_show.cocci
返回文件管理
返回主菜单
删除本文件
文件: /usr/src/linux-headers-5.15.0-113/scripts/coccinelle/api/device_attr_show.cocci
编辑文件内容
// SPDX-License-Identifier: GPL-2.0-only /// /// From Documentation/filesystems/sysfs.rst: /// show() must not use snprintf() when formatting the value to be /// returned to user space. If you can guarantee that an overflow /// will never happen you can use sprintf() otherwise you must use /// scnprintf(). /// // Confidence: High // Copyright: (C) 2020 Denis Efremov ISPRAS // Options: --no-includes --include-headers // virtual report virtual org virtual context virtual patch @r depends on !patch@ identifier show, dev, attr, buf; position p; @@ ssize_t show(struct device *dev, struct device_attribute *attr, char *buf) { <... * return snprintf@p(...); ...> } @rp depends on patch@ identifier show, dev, attr, buf; @@ ssize_t show(struct device *dev, struct device_attribute *attr, char *buf) { <... return - snprintf + scnprintf (...); ...> } @script: python depends on report@ p << r.p; @@ coccilib.report.print_report(p[0], "WARNING: use scnprintf or sprintf") @script: python depends on org@ p << r.p; @@ coccilib.org.print_todo(p[0], "WARNING: use scnprintf or sprintf")
修改文件时间
将文件时间修改为当前时间的前一年
删除文件