]> git.immae.eu Git - github/fretlink/terraform-provider-statuscake.git/blob - vendor/github.com/fsouza/go-dockerclient/external/github.com/docker/docker/pkg/system/mknod.go
provider: Ensured Go 1.11 in TravisCI and README
[github/fretlink/terraform-provider-statuscake.git] / vendor / github.com / fsouza / go-dockerclient / external / github.com / docker / docker / pkg / system / mknod.go
1 // +build !windows
2
3 package system
4
5 import (
6 "syscall"
7 )
8
9 // Mknod creates a filesystem node (file, device special file or named pipe) named path
10 // with attributes specified by mode and dev.
11 func Mknod(path string, mode uint32, dev int) error {
12 return syscall.Mknod(path, mode, dev)
13 }
14
15 // Mkdev is used to build the value of linux devices (in /dev/) which specifies major
16 // and minor number of the newly created device special file.
17 // Linux device nodes are a bit weird due to backwards compat with 16 bit device nodes.
18 // They are, from low to high: the lower 8 bits of the minor, then 12 bits of the major,
19 // then the top 12 bits of the minor.
20 func Mkdev(major int64, minor int64) uint32 {
21 return uint32(((minor & 0xfff00) << 12) | ((major & 0xfff) << 8) | (minor & 0xff))
22 }