
Alexey
23.01.2018
15:23:55
Короч вот вы же занете как по ssh. Передается ключ, ты типа соглашаешься, далее логин и пароль. Вот если второй раз подключаться то никакого ключа не будет, просто логин и пароль
Вот это мне и нужно
При этом не факт что ключ обязательно у меня есть, его может и не быть
А в некоторых исключительных случаях он у меня есть

Google

Alexey
23.01.2018
15:25:12
но тут не суть

John
23.01.2018
15:25:13
ну дык, возьми и сделай, делов-то :)) в пакете ssh даже есть чудная функция ParseKnownHosts()

Alexey
23.01.2018
15:25:49
Те что известные хосты то понятно
Мне нужно прочитать неизвестные
И принять их ключ

Alexander
23.01.2018
15:26:57
это в общем-то. защита от man in the middle, рекомендуемая, но не обязательная часть протокола. Когда подключаешься к какому-то неизвестному серверу первый раз, ты ж не знаешь, тот ли он за кого себя выдаёт. Но потом его ключ сохраняешь и помнишь, что при подключении в этом IP ключ должен быть таким. Если он не такой, то бъём тревогу.
Но при любом соединении, первом или последующем, сервер передает свой ключ. И твоё дело сравнивать ли его с базой данных известных серверов или просто поверить ему.

Alexey
23.01.2018
15:28:23
Lf
Да
Вот мне нужно сделать первое подключение, прочитать его и сохранить

Alexander
23.01.2018
15:28:44
Такая проверка безопасности в твоём случае важна?

Alexey
23.01.2018
15:29:06
Да

Google

Alexey
23.01.2018
15:30:05
давай в лс дам гиитхаб и поймешь что я делаю

Alexander
23.01.2018
15:31:01
Хорошо. Вот есть тот callback. В него при подключении передается ключ. Ты можешь сравнить ключ с известным списком и в случае несоответсвия возвращать ошибку. Но вот этот "список известных ключей" - он твой же. Т.е. как хочешь, так и храни его. Хоть в текстовом файле, хоть в sqlite базе.

Alexey
23.01.2018
15:32:20

Alexander
23.01.2018
15:32:49
Да. Список же твой собственный - вот и сохрани в него

Александр
23.01.2018
16:58:23
func ISODateValidator(fl validator.FieldLevel) bool {
date := fl.Field().String()
format := "2006-01-02T15:04:05-07:00"
t, err := time.Parse(format, date)
if err != nil {
return false
}
if t.Format(format) != date {
return false
}
return true
}
на строке - t.Format(format) != date получаем две одинаковые строки, начинаем сравнивать false
как блин, это же работало всегда ?
я даже тип проверил, стринг стринг
беру два стринга и глазами сравниваю - одинаковые
дошел до ручки, сковертировал в []rune и сравнил
[50 48 49 56 45 48 56 45 48 57 84 49 56 58 51 49 58 52 50 43 48 51 58 51 48]
[50 48 49 56 45 48 56 45 48 57 84 49 56 58 51 49 58 52 50 43 48 51 58 51 48]
да одинаковые блеать!
?

Andrey
23.01.2018
17:01:36
а если strings.EqualFold(t.Format(format), date)
?

Александр
23.01.2018
17:02:14
O_o
КАААК?

Andrey
23.01.2018
17:02:32
кодировка такая кодировка

Google

Александр
23.01.2018
17:02:41
так коды символов то блин одинаковые

Andrey
23.01.2018
17:02:59
а там полюбому какой-нить символ BOM
или типа того

Александр
23.01.2018
17:03:14
я дал выше два слайса строк
какие там бомы?

Andrew
23.01.2018
17:05:49
Я знал, что кто-нибудь обнаружит, что уязвимости в процах Intel эксплуатируют и подменяют данные оперативы!

Alexey
23.01.2018
17:07:19
Ахах, а если у меня ip серый?
Это возможно?
Как сессию то откроешь?

Alexander
23.01.2018
17:10:15

Александр
23.01.2018
17:10:17
я походу напутал логику, проехали с моим вопросом

Sergey
23.01.2018
17:12:23
у тебя там !=, если строки одинаковые, то логично что результат будет false

Александр
23.01.2018
17:17:08
да все, меня плющит

Andrey
23.01.2018
17:18:02
а дай по приколу, что на вход подаёшь?

Александр
23.01.2018
17:18:38
да все все, я сделал != и ожидал true

Andrey
23.01.2018
17:18:53
?

Andrew
23.01.2018
17:21:07

Aleksandr
23.01.2018
18:05:09
Не зря Линус их патч мусором назвал

Мерлин
23.01.2018
18:14:30
https://twitter.com/GolangShow/status/955848077633519617

Artem
23.01.2018
19:38:36

Google

Nik
23.01.2018
21:32:38
А есть нормальная либа, что бы поднимать коннект в onion сеть? Минут 15 ищу - не нашел. Может кто юзал

Alexander
23.01.2018
23:51:58
Не юзал, но поиск показал вот это - https://golanglibs.com/top?q=tor

Nik
24.01.2018
00:15:00

/dev/null
24.01.2018
00:49:45
Ребят, что вы думаете, если функцию назвать примерно так
GetDirBook ?
Я про Get в начале названия функции

Marlik
24.01.2018
01:15:33
Геттеры, сеттеры вроде как не рекомендуется, но и не запрещаются.

/dev/null
24.01.2018
01:23:39

Admin
ERROR: S client not available

/dev/null
24.01.2018
01:30:28
еще такой вопрос
Что делать с unused function?
Функция используется, просто находится в другом пакете и явно не вызывается из пакета в котором располагается


Marlik
24.01.2018
02:53:49
Функция используется, просто находится в другом пакете и явно не вызывается из пакета в котором располагается
Так и не понял что тебе нужно, но го не буит компилить прогу если в ней есть неиспользуемые переменные, пакеты, функции и т. д. Ващет это редактор должен даже тебе подсказать. А если тебе нужно вызывать функцию из откуда-то, то проще, кладёшь в общую папку с проектом файлы, например:
main.go
db.go
model.go
и в каждом пакете у тебя должен стоять package main. И рекомендуется что, только один пакет должен иметь точку входа, функцию func main () {} . Получится так что все эти файлы, это как-бы один файл, и компилить их нужно все. И ещё что-бы например в main.go дёргать функции которые лежат в других файлах, их нужно обьявлять с заглавной буквы, это и типов касается.
Есть ещё вариант с подключением пакета, это когда файл лежит в другой папке, его уже нужно импортировать явно в main.go

Zloy Dobriy
24.01.2018
06:22:48
Кругом одни папки.

Linux
24.01.2018
06:35:58
Кто-нибудь может поделиться списком плагинов для VS
VSC

tsov
24.01.2018
06:38:55

Andrew
24.01.2018
06:39:01
VS. VSC.
Бонд. Джеймс Бонд.

/dev/null
24.01.2018
06:39:41

Мерлин
24.01.2018
06:39:46

Google

Zloy Dobriy
24.01.2018
06:40:32

Linux
24.01.2018
06:40:50

tsov
24.01.2018
06:41:06

/dev/null
24.01.2018
06:41:17
Если для Go, то достаточно одного
Я тут только вчера перестал «лечить» idea (все средства перестали работать) перепробовал кучу разных сред, в итоге купил подписку в JetBrains

Zloy Dobriy
24.01.2018
06:41:54
Аннотация есть к ним?

BlastPy
24.01.2018
06:42:04
https://itc.ua/news/java-javascript-i-c-reyting-naibolee-populyarnyih-yazyikov-programmirovaniya-u-ukrainskih-it-spetsialistov-po-versii-dou-ua/
Сдесь Голанг уже к руби подходит

/dev/null
24.01.2018
06:42:21
С аннотациями раньше не сталкивался

Zloy Dobriy
24.01.2018
06:42:40
//ФенкНэм -- блабла

BlastPy
24.01.2018
06:42:40
https://itc.ua/wp-content/uploads/2018/01/language-rating-jan-2018-3-770x475.png

Zloy Dobriy
24.01.2018
06:42:56
Над функцией. (Дескрипшон)

/dev/null
24.01.2018
06:43:03

Zloy Dobriy
24.01.2018
06:43:10
Еп

Max
24.01.2018
06:43:28
кто подскажет что это за синтаксис такой
var _ Table = &table{}
что это знаит?
var _ ...

/dev/null
24.01.2018
06:43:52

Zloy Dobriy
24.01.2018
06:43:56
Сттраннл что ваш иде ругается на экспортируемые фукции как на не используемые