iOnly allo a-zA-Z0-9_ in filenames. - pointtools - Simple point utilities to hold text presentations. Err bitreich.org 70 hgit clone git://bitreich.org/pointtools/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/pointtools/ URL:git://bitreich.org/pointtools/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/pointtools/ bitreich.org 70 1Log /scm/pointtools/log.gph bitreich.org 70 1Files /scm/pointtools/files.gph bitreich.org 70 1Refs /scm/pointtools/refs.gph bitreich.org 70 1Tags /scm/pointtools/tag bitreich.org 70 1README /scm/pointtools/file/README.md.gph bitreich.org 70 1LICENSE /scm/pointtools/file/LICENSE.gph bitreich.org 70 i--- Err bitreich.org 70 1commit ad95b9aa5689e07c7febceddbc9db5e8574f2699 /scm/pointtools/commit/ad95b9aa5689e07c7febceddbc9db5e8574f2699.gph bitreich.org 70 1parent d56297fed58c06e726860efbd7be4c72bfc4429e /scm/pointtools/commit/d56297fed58c06e726860efbd7be4c72bfc4429e.gph bitreich.org 70 hAuthor: Christoph Lohmann <20h@r-36.net> URL:mailto:20h@r-36.net bitreich.org 70 iDate: Sun, 13 Jun 2021 14:00:52 +0200 Err bitreich.org 70 i Err bitreich.org 70 iOnly allo a-zA-Z0-9_ in filenames. Err bitreich.org 70 i Err bitreich.org 70 iThanks Od1n for reporting this. Err bitreich.org 70 i Err bitreich.org 70 iDiffstat: Err bitreich.org 70 i M md2point.c | 25 +++++++++++-------------- Err bitreich.org 70 i Err bitreich.org 70 i1 file changed, 11 insertions(+), 14 deletions(-) Err bitreich.org 70 i--- Err bitreich.org 70 1diff --git a/md2point.c b/md2point.c /scm/pointtools/file/md2point.c.gph bitreich.org 70 i@@ -62,23 +62,20 @@ void Err bitreich.org 70 i escapechars(char *s) Err bitreich.org 70 i { Err bitreich.org 70 i for (; *s; s++) { Err bitreich.org 70 i- switch (*s) { Err bitreich.org 70 i- case '#': Err bitreich.org 70 i- case ' ': Err bitreich.org 70 i- case '\t': Err bitreich.org 70 i- case ':': Err bitreich.org 70 i- case '.': Err bitreich.org 70 i- case '(': Err bitreich.org 70 i- case ')': Err bitreich.org 70 i- case '/': Err bitreich.org 70 i- *s = '_'; Err bitreich.org 70 i- break; Err bitreich.org 70 i- case '\n': Err bitreich.org 70 i+ if (*s == '\n') { Err bitreich.org 70 i *s = '\0'; Err bitreich.org 70 i return; Err bitreich.org 70 i- default: Err bitreich.org 70 i- break; Err bitreich.org 70 i } Err bitreich.org 70 i+ Err bitreich.org 70 i+ /* Err bitreich.org 70 i+ * Only allow ASCII printable a-zA-Z0-9 for simplicity. Err bitreich.org 70 i+ */ Err bitreich.org 70 i+ if ((*s >= 'a' && *s <= 'z') Err bitreich.org 70 i+ || (*s >= 'A' && *s <= 'Z') Err bitreich.org 70 i+ || (*s >= '0' && *s <= '9')) { Err bitreich.org 70 i+ continue; Err bitreich.org 70 i+ } Err bitreich.org 70 i+ *s = '_'; Err bitreich.org 70 i } Err bitreich.org 70 i } Err bitreich.org 70 i Err bitreich.org 70 .