lkml.org 
[lkml]   [2022]   [Apr]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH v7 3/5] certs: Make blacklist_vet_description() more strict
Date
Mickaël Salaün <mic@digikod.net> wrote:

> + /* The following algorithm only works if prefix lengths match. */
> + BUILD_BUG_ON(sizeof(tbs_prefix) != sizeof(bin_prefix));
> + prefix_len = sizeof(tbs_prefix) - 1;
> + for (i = 0; *desc; desc++, i++) {
> + if (*desc == ':') {
> + if (tbs_step == prefix_len)
> + goto found_colon;
> + if (bin_step == prefix_len)
> + goto found_colon;
> + return -EINVAL;
> + }
> + if (i >= prefix_len)
> + return -EINVAL;
> + if (*desc == tbs_prefix[i])
> + tbs_step++;
> + if (*desc == bin_prefix[i])
> + bin_step++;
> + }

I wonder if:

static const char tbs_prefix[] = "tbs:";
static const char bin_prefix[] = "bin:";

if (strncmp(desc, tbs_prefix, sizeof(tbs_prefix) - 1) == 0 ||
strncmp(desc, bin_prefix, sizeof(bin_prefix) - 1) == 0)
goto found_colon;

might be better.

David

\
 
 \ /
  Last update: 2022-04-20 12:30    [W:0.205 / U:0.440 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site