go-tg-screenshot-bot

Форк
0
52 строки · 917.0 Байт
1
package dbus
2

3
import (
4
	"encoding/binary"
5
	"errors"
6
	"io"
7
	"unsafe"
8
)
9

10
var nativeEndian binary.ByteOrder
11

12
func detectEndianness() binary.ByteOrder {
13
	var x uint32 = 0x01020304
14
	if *(*byte)(unsafe.Pointer(&x)) == 0x01 {
15
		return binary.BigEndian
16
	}
17
	return binary.LittleEndian
18
}
19

20
func init() {
21
	nativeEndian = detectEndianness()
22
}
23

24
type genericTransport struct {
25
	io.ReadWriteCloser
26
}
27

28
func (t genericTransport) SendNullByte() error {
29
	_, err := t.Write([]byte{0})
30
	return err
31
}
32

33
func (t genericTransport) SupportsUnixFDs() bool {
34
	return false
35
}
36

37
func (t genericTransport) EnableUnixFDs() {}
38

39
func (t genericTransport) ReadMessage() (*Message, error) {
40
	return DecodeMessage(t)
41
}
42

43
func (t genericTransport) SendMessage(msg *Message) error {
44
	fds, err := msg.CountFds()
45
	if err != nil {
46
		return err
47
	}
48
	if fds != 0 {
49
		return errors.New("dbus: unix fd passing not enabled")
50
	}
51
	return msg.EncodeTo(t, nativeEndian)
52
}
53

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.