On Thu, Aug 27, 2020 at 09:12:06PM -0700, Joe Perches wrote:
> Perhaps something like the below with a sample conversion
> that uses single and multiple sysfs_emit uses.

On quick review, I like it. :)

> [...]
> +int sysfs_emit(char *buf, char *pos, const char *fmt, ...)
> +{
> +     int len;
> +     va_list args;
> +
> +     WARN(pos < buf, "pos < buf\n");
> +     WARN(pos - buf >= PAGE_SIZE, "pos >= PAGE_SIZE (%tu > %lu)\n",
> +          pos - buf, PAGE_SIZE);
> +     if (pos < buf || pos - buf >= PAGE_SIZE)
> +             return 0;

This can be:

        if (WARN(pos < buf, "pos < buf\n") ||
            WARN(pos - buf >= PAGE_SIZE, "pos >= PAGE_SIZE (%tu > %lu)\n",
                 pos - buf, PAGE_SIZE))
                return 0;

-- 
Kees Cook
_______________________________________________
Cocci mailing list
Cocci@systeme.lip6.fr
https://systeme.lip6.fr/mailman/listinfo/cocci

Reply via email to