ref: 3fc6d7a0f87a487c5d33b838ff5b5b9968b7b1cc
parent: ee5dbf6528365a9dd306665f85c707571b974e5c
author: kvik <kvik@a-b.xyz>
date: Sun Apr 18 21:39:57 EDT 2021
misc: implement p9.cleanname()
--- a/mkfile
+++ b/mkfile
@@ -17,4 +17,4 @@
%.$O: %.c
$CC $CFLAGS $stem.c
-p9.$O: p9.c fs.c walk.c env.c ns.c proc.c
+p9.$O: p9.c fs.c walk.c env.c ns.c proc.c misc.c
--- a/p9.c
+++ b/p9.c
@@ -95,6 +95,7 @@
#include "env.c"
#include "ns.c"
#include "proc.c"
+#include "misc.c"
typedef struct Data {
char *key;
@@ -174,6 +175,8 @@
{"sleep", p9_sleep},
{"alarm", p9_alarm},
{"rfork", p9_rfork},
+
+ {"cleanname", p9_cleanname},
{nil, nil}
};
--- a/test.lua
+++ b/test.lua
@@ -256,3 +256,13 @@
and #e == 3 and e[1] == "d" and e[2] == "e" and e[3] == "f")
p9.env.test = nil
end
+
+
+
+
+-- Misc.
+
+-- cleanname
+do
+ assert(p9.cleanname("/usr///./glenda/.") == "/usr/glenda")
+end