Re: [hackers] [dwm] [PATCH] add a comment to clarify a potential overflow of ltsymbol

From: Hiltjo Posthuma <hiltjo_AT_codemadness.org>
Date: Wed, 15 Feb 2023 18:14:13 +0100

On Wed, Feb 15, 2023 at 11:29:26AM +0000, Tom Schwindl wrote:
> In case the strncpy() call is advised to copy >=16 characters, ltsymbol overflows.
> As dwm does not expect to have a ltsymbol bigger than 15 characters, there will be
> no length check[0]. Our target audience are programmers, they should be able
> to figure out how to extend the length by themselves. The reason to add this comment
> is that some inexperienced users are easily confused by this and the topic comes up
> from time to time[1].
>
> [0] https://lists.suckless.org/hackers/2208/18484.html
> [1] https://lists.suckless.org/dev/2210/35000.html
>
> ---
> I know that this patch looks like bikeshedding, but the comment is convenient.
> I also got messaged in private a few(!) times about that exact issue, but
> I'm not sure if I'm allowed to quote these mails here. Anyways, the point is
> that this issue arises from time to time and a comment would make our/their
> lifes easier.
>
> ---
> dwm.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/dwm.c b/dwm.c
> index c2bd8710544e..e400aa028587 100644
> --- a/dwm.c
> +++ b/dwm.c
> _AT_@ -396,6 +396,9 @@ arrange(Monitor *m)
> void
> arrangemon(Monitor *m)
> {
> + /* dwm supports a ltsymbol size up to 15 chars (plus terminating NUL-byte).
> + * Anything greater than that will cause issues. If the user wants a name
> + * containing more chars, they need to modify the code to fit their needs */
> strncpy(m->ltsymbol, m->lt[m->sellt]->symbol, sizeof m->ltsymbol);
> if (m->lt[m->sellt]->arrange)
> m->lt[m->sellt]->arrange(m);
> --
> 2.39.1
>
>

Hi,

I think it is too verbose and don't think the comment is neccesary.

-- 
Kind regards,
Hiltjo
Received on Wed Feb 15 2023 - 18:14:13 CET

This archive was generated by hypermail 2.3.0 : Wed Feb 15 2023 - 18:24:39 CET