ensurefds012

package
v2.2.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 20, 2021 License: MIT Imports: 3 Imported by: 0

Documentation

Overview

Package ensurefds012 ensures that file descriptors 0,1,2 are open. It opens multiple copies of /dev/null as required. The Go stdlib as well as the gocryptfs code rely on the fact that fds 0,1,2 are always open.

Use like this:

import _ "github.com/rfjakob/gocryptfs/v2/internal/ensurefds012"

The import line MUST be in the alphabitcally first source code file of package main!

You can test if it works as expected by inserting a long sleep into main, startings gocryptfs with all fds closed like this,

$ ./gocryptfs 0<&- 1>&- 2>&-

and then checking the open fds. It should look like this:

$ ls -l /proc/$(pgrep gocryptfs)/fd
total 0
lrwx------. 1 jakob jakob 64 Jan  5 15:54 0 -> /dev/null
lrwx------. 1 jakob jakob 64 Jan  5 15:54 1 -> /dev/null
lrwx------. 1 jakob jakob 64 Jan  5 15:54 2 -> /dev/null
l-wx------. 1 jakob jakob 64 Jan  5 15:54 3 -> /dev/null
lrwx------. 1 jakob jakob 64 Jan  5 15:54 4 -> 'anon_inode:[eventpoll]'

See https://github.com/rfjakob/gocryptfs/issues/320 for details.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL