Size: a a a

2020 May 29

SC

Sergey Cherkesov in Go-go!
источник

SC

Sergey Cherkesov in Go-go!
можно выбрать элемент и навести курсов на исходный файл и увидеть пуьт
источник

M

Mikalai in Go-go!
Andrew (backEnd)
Ну или другой способ дать такой ответ на подключение, который бы заставил атакующий сервер потерять время
/dev/urandom отдавать
источник

A(

Andrew (backEnd) in Go-go!
Mikalai
/dev/urandom отдавать
Как вариант
источник

p

pragus in Go-go!
kay rus
у меня похожий вопрос. Read/Write методы работают с ovehead слайсами. Т.е. Read возвращает лишние 4 байта в заголовке, Write тоже просит лишние 4 байта в заголоке.
Поэтому я переопределяю эти методы следующим образом:
func (t *myReadWriter) Read(b []byte) (int, error) {
       n, err := t.sub.Read(b)
       if n < 4 {
           return 0, err
       }
       // shift slice to the left
       return copy(b[:n-4], b[4:n]), nil
}

func (t *myReadWriter) Write(b []byte) (int, error) {
      return t.sub.Write(append(make([]byte, 4), b...), 4)
}
вопрос, насколько это оптимально? Я не хочу передавать в метод указатель на b, тогда придется переделывать весь софт. и Read/Write не будет соответствовать каноничному интерфейсу.
что за лишние 4 байта?
источник

kr

kay rus in Go-go!
pragus
что за лишние 4 байта?
из TUN идут. вот пример того как их обрезают: https://github.com/songgao/water/blob/2b4b6d7c09d80835e5f13f6b040d69f00a158b24/syscalls_darwin.go#L224..L236
источник

I

I am in Go-go!
Vladislav Milenin
Го вам точно ни к чему
Сейчас основное занятие писание на джаве в кровавом энтэрпрайзе, причем сознательно :)
До этого 15 лет на с/с++ писал, ассемблеры всякие и прочее :)
источник

VM

Vladislav Milenin in Go-go!
I am
Сейчас основное занятие писание на джаве в кровавом энтэрпрайзе, причем сознательно :)
До этого 15 лет на с/с++ писал, ассемблеры всякие и прочее :)
да при чем тут это… питон приятен для парсинга всякой хрени и работы с текстом, го - кактус, есть который не обязательно. Если пригорит, можно переписать готовый алгоритм
источник

p

pragus in Go-go!
kay rus
из TUN идут. вот пример того как их обрезают: https://github.com/songgao/water/blob/2b4b6d7c09d80835e5f13f6b040d69f00a158b24/syscalls_darwin.go#L224..L236
IFF_NO_PI
источник

p

pragus in Go-go!
kay rus
из TUN идут. вот пример того как их обрезают: https://github.com/songgao/water/blob/2b4b6d7c09d80835e5f13f6b040d69f00a158b24/syscalls_darwin.go#L224..L236
источник

kr

kay rus in Go-go!
pragus
IFF_NO_PI
я в курсе, но от этого никуда не денешься
источник

kr

kay rus in Go-go!
разве что свой форк пилить.
источник

kr

kay rus in Go-go!
в wireguard-go/tun тоже без IFF_NO_PI
источник

p

pragus in Go-go!
kay rus
в wireguard-go/tun тоже без IFF_NO_PI
источник

p

pragus in Go-go!
kay rus
разве что свой форк пилить.
надо просто определиться чего хочется: если кроссплатформенно, то быстро не будет
источник

ВС

Владимир Столяров... in Go-go!
а какие варианты есть на "быстро но не кроссплатформенно"
источник

kr

kay rus in Go-go!
Владимир Столяров
а какие варианты есть на "быстро но не кроссплатформенно"
включить IFF_NO_PI
источник

ВС

Владимир Столяров... in Go-go!
а, я то думал что есть что-то еще помимо tun/tap
но видимо нет
источник

kr

kay rus in Go-go!
Владимир Столяров
а, я то думал что есть что-то еще помимо tun/tap
но видимо нет
коммерческий tailscale тоже tun/tap использует: https://github.com/tailscale/tailscale
источник

p

pragus in Go-go!
Владимир Столяров
а какие варианты есть на "быстро но не кроссплатформенно"
много. af_xdp/netmap/tun+vhost-net
источник