diff --git a/nfs.zig b/nfs.zig index 1817e141e4a4bd5563574ffac9ff07c8ac406d63..759940a4f2302205766de7ab7b2bc6d9338b8ac6 100644 --- a/nfs.zig +++ b/nfs.zig @@ -44,3 +44,11 @@ pub fn memfd_create(name: [*:0]const u8, flags: c_uint) !File { pub fn munmap(region: []const u8) void { return sys.munmap(region.ptr, region.len) catch {}; } + +pub fn mkdtemp() !Dir { + var template = "/tmp/tmp.XXXXXX\x00".*; + const path_p = try sys.mkdtemp(template[0 .. template.len - 1 :0].ptr); + const path = std.mem.sliceTo(path_p, 0); + std.log.debug("path: {s}", .{path}); + return cwd().openDir(path, .{}); +}