summaryrefslogtreecommitdiff
path: root/vendor/github.com/godbus/dbus/v5/transport_unixcred_linux.go
diff options
context:
space:
mode:
authorOpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com>2020-03-10 19:31:14 +0100
committerGitHub <noreply@github.com>2020-03-10 19:31:14 +0100
commita83a94b095b298c1e8cbcaf20f0744a5807df1de (patch)
tree132e6491ef4e15caa7d7296d2492dbc1f2cb41d8 /vendor/github.com/godbus/dbus/v5/transport_unixcred_linux.go
parent173f430852e52a1acf69b4d9d18da20893031a79 (diff)
parent450361fc640751c2a33210a02ceff0874c9f449b (diff)
downloadpodman-a83a94b095b298c1e8cbcaf20f0744a5807df1de.tar.gz
podman-a83a94b095b298c1e8cbcaf20f0744a5807df1de.tar.bz2
podman-a83a94b095b298c1e8cbcaf20f0744a5807df1de.zip
Merge pull request #5448 from vrothberg/update-systemd
update systemd & dbus dependencies
Diffstat (limited to 'vendor/github.com/godbus/dbus/v5/transport_unixcred_linux.go')
-rw-r--r--vendor/github.com/godbus/dbus/v5/transport_unixcred_linux.go25
1 files changed, 25 insertions, 0 deletions
diff --git a/vendor/github.com/godbus/dbus/v5/transport_unixcred_linux.go b/vendor/github.com/godbus/dbus/v5/transport_unixcred_linux.go
new file mode 100644
index 000000000..d9dfdf698
--- /dev/null
+++ b/vendor/github.com/godbus/dbus/v5/transport_unixcred_linux.go
@@ -0,0 +1,25 @@
+// The UnixCredentials system call is currently only implemented on Linux
+// http://golang.org/src/pkg/syscall/sockcmsg_linux.go
+// https://golang.org/s/go1.4-syscall
+// http://code.google.com/p/go/source/browse/unix/sockcmsg_linux.go?repo=sys
+
+package dbus
+
+import (
+ "io"
+ "os"
+ "syscall"
+)
+
+func (t *unixTransport) SendNullByte() error {
+ ucred := &syscall.Ucred{Pid: int32(os.Getpid()), Uid: uint32(os.Getuid()), Gid: uint32(os.Getgid())}
+ b := syscall.UnixCredentials(ucred)
+ _, oobn, err := t.UnixConn.WriteMsgUnix([]byte{0}, b, nil)
+ if err != nil {
+ return err
+ }
+ if oobn != len(b) {
+ return io.ErrShortWrite
+ }
+ return nil
+}