mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
86f080cff0
Update golang.org/x/sys to 8dbc5d05d6edcc104950cc299a1ce6641235bc86 in order to get the Major, Minor and Mkdev functions for every unix-like OS. Use them instead of the locally defined versions which currently use the Linux specific device major/minor encoding. This means that the device number should now be properly encoded on e.g. Darwin, FreeBSD or Solaris. Also, the SIGUNUSED constant was removed from golang.org/x/sys/unix in https://go-review.googlesource.com/61771 as it is also removed from the respective glibc headers. Remove it from signal.SignalMap as well after the golang.org/x/sys re-vendoring. Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
22 lines
768 B
Go
22 lines
768 B
Go
// +build !windows
|
|
|
|
package system
|
|
|
|
import (
|
|
"golang.org/x/sys/unix"
|
|
)
|
|
|
|
// Mknod creates a filesystem node (file, device special file or named pipe) named path
|
|
// with attributes specified by mode and dev.
|
|
func Mknod(path string, mode uint32, dev int) error {
|
|
return unix.Mknod(path, mode, dev)
|
|
}
|
|
|
|
// Mkdev is used to build the value of linux devices (in /dev/) which specifies major
|
|
// and minor number of the newly created device special file.
|
|
// Linux device nodes are a bit weird due to backwards compat with 16 bit device nodes.
|
|
// They are, from low to high: the lower 8 bits of the minor, then 12 bits of the major,
|
|
// then the top 12 bits of the minor.
|
|
func Mkdev(major int64, minor int64) uint32 {
|
|
return uint32(unix.Mkdev(uint32(major), uint32(minor)))
|
|
}
|