[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Bug-wget] [PATCH 09/25] Enforce Metalink file name verification, st
From: |
Matthew White |
Subject: |
Re: [Bug-wget] [PATCH 09/25] Enforce Metalink file name verification, strip directory if necessary |
Date: |
Tue, 13 Sep 2016 05:44:12 +0200 |
On Mon, 12 Sep 2016 20:18:30 +0300
Eli Zaretskii <address@hidden> wrote:
> > From: Tim Ruehsen <address@hidden>
> > Date: Mon, 12 Sep 2016 13:00:32 +0200
> >
> > > + char *basename = name;
> > > +
> > > + while ((name = strstr (basename, "/")))
> > > + basename = name + 1;
> >
> > Could you use strrchr() ? something like
> >
> > char *basename = strrchr (name, '/');
> >
> > if (basename)
> > basename += 1;
> > else
> > basename = name;
>
> I think we want to use ISSEP, no? Otherwise Windows file names with
> backslashes will misfire.
>
Thanks Eli. A possible implementation if ISSEP is shown below.
#if defined(WINDOWS) || defined(MSDOS)
# define ISSEP(c) ((c) == '/' || (c) == '\\')
#else
# define ISSEP(c) ((c) == '/')
#endif
char *
get_metalink_basename (char *name)
{
char *basename;
if (!name)
return NULL;
basename = name + strlen (name);
while (basename > name && !ISSEP (*basename))
--basename;
if (ISSEP (*basename))
++basename;
return metalink_check_safe_path (basename) ? basename : NULL;
}
Regards,
Matthew
--
Matthew White <address@hidden>
pgpJgIqr_ECHm.pgp
Description: PGP signature
- [Bug-wget] [PATCH 09/25] Enforce Metalink file name verification, strip directory if necessary, Matthew White, 2016/09/10
- Re: [Bug-wget] [PATCH 09/25] Enforce Metalink file name verification, strip directory if necessary, Tim Ruehsen, 2016/09/12
- Re: [Bug-wget] [PATCH 09/25] Enforce Metalink file name verification, strip directory if necessary, Eli Zaretskii, 2016/09/12
- Re: [Bug-wget] [PATCH 09/25] Enforce Metalink file name verification, strip directory if necessary, Tim Rühsen, 2016/09/12
- Re: [Bug-wget] [PATCH 09/25] Enforce Metalink file name verification, strip directory if necessary, Matthew White, 2016/09/12
- Re: [Bug-wget] [PATCH 09/25] Enforce Metalink file name verification, strip directory if necessary, Tim Ruehsen, 2016/09/13
- Re: [Bug-wget] [PATCH 09/25] Enforce Metalink file name verification, strip directory if necessary, Matthew White, 2016/09/13
- Re: [Bug-wget] [PATCH 09/25] Enforce Metalink file name verification, strip directory if necessary, Tim Ruehsen, 2016/09/13
- Re: [Bug-wget] [PATCH 09/25] Enforce Metalink file name verification, strip directory if necessary, Matthew White, 2016/09/13
- Re: [Bug-wget] [PATCH 09/25] Enforce Metalink file name verification, strip directory if necessary,
Matthew White <=
Re: [Bug-wget] [PATCH 09/25] Enforce Metalink file name verification, strip directory if necessary, Matthew White, 2016/09/12