Я и мой ёбаный кот на фоне ковра. Войти !bnw Сегодня Клубы
irc

@je разжёг мой интерес к irc, т.к. у меня недоёб с иркой ещё с детства.
всё было заебись, пока я не попытался отправить длинное сообщение и оно разбилось на кучу мелких. думал бага сервера, или клиента, полез читать rfc и оказалось ограничение на длину сообщения - 512 байт, а в юникоде значит ваще 256 символов, а учитывая \r\n ещё и меньше. ещё и перевод строк в сообщении не поддерживается. в общем, говно мамонта.

вопрос: додумался ли уже кто нибудь снять эти ограничения, отойдя от стандартов и запилив свой клиент и свой сервер без этих старпёрских ограничений? вчера слил код miniircd с hexchat и быстрым grep/sed/make расширил эту возможность до 4кб, правда пока не понял почему сообщения пилятся максимум по 4кб когда я расширил буферы до мегабайта. надо вникать в код в общем. но вдруг кто-то уже это сделал и я зря потрачу время. не спрашивайте зачем мне это надо. и съебите сразу со своими жаберами и матриксами плз. я же вам не предлагаю засовывать в анус морковку когда вам хочется засунуть туда большой огурец

Рекомендовали: @l29ah
#ES4O2T / @soko1 / 2624 дня назад

го в телеграм
#ES4O2T/4EH / @figli / 2624 дня назад

@figli у меня нет лишней симки, сорь

#ES4O2T/VTN / @soko1 --> #ES4O2T/4EH / 2624 дня назад
@soko1 тогда съеби
#ES4O2T/9QR / @figli --> #ES4O2T/VTN / 2624 дня назад
@figli номерок свой скажи, побеседуем
#ES4O2T/6YS / @anonymous --> #ES4O2T/9QR / 2624 дня назад

@anonymous в участке

#ES4O2T/B4U / @soko1 --> #ES4O2T/6YS / 2624 дня назад
@soko1 когда в irc шифрование завезут?
#ES4O2T/LXY / @anonymous --> #ES4O2T/B4U / 2624 дня назад
@anonymous пиши тут хули ты
#ES4O2T/JHJ / @figli --> #ES4O2T/6YS / 2624 дня назад

@anonymous ssl там есть, или ты о чём?

#ES4O2T/3QC / @soko1 --> #ES4O2T/LXY / 2624 дня назад
@figli ты номер-то подкинь свой, там и побазарим с тобой как следует
#ES4O2T/OWG / @anonymous --> #ES4O2T/JHJ / 2624 дня назад
> вчера слил код miniircd с hexchat ты неправильно готовишь irc. советую начать с telnet // и продолжить в `import socket`
#ES4O2T/BOP / @anonymous / 2624 дня назад

@soko1 в телеграме тоже есть

#ES4O2T/0LL / @ninesigns --> #ES4O2T/3QC / 2624 дня назад
>512 байт, а в юникоде значит ваще 256 символов, а учитывая \r\n ещё и меньше. ещё и перевод строк в сообщении не поддерживается. в общем, говно мамонта. Дальше не читал. Можно автоматически разбивать сообщения на более мелкие перед отправкой. Что-то ещё?
#ES4O2T/UMO / @ckorzhik / 2624 дня назад
Тупой чтоле, как ты в сокет просунешь больше. Это уже ограничение сетевого стека, а не клиент-сервера, прокрути там хоть цикл. Но это все равно никому не нужно, потому что в ирц не пишет пространные тексты, обычно это толстый и канал и все орут в один поток, там кто быстрее пишет, тот и побеждает.
#ES4O2T/KIQ / @je / 2624 дня назад
@anonymous Клиент-сервер SSL/TLS, клиент-клиент OTR чаще, чем GPG https://github.com/cryptodotis/irssi-otr
#ES4O2T/HEU / @je --> #ES4O2T/LXY / 2624 дня назад
Я правильно понимаю, что это ограничение на уровне протокола вообще никакой погоды не играет и нужно лишь для того чтобы на убогих язычках уровня сишки было удобнее писать сервера и клиенты?
#ES4O2T/KGV / @l29ah / 2624 дня назад
@anonymous Дяко дваждую. Пока первого бота не напишет на голом беркли-сокете, пусть не возвращается!
#ES4O2T/FPW / @je --> #ES4O2T/BOP / 2624 дня назад
@je Пиздец ты тупой, съеби плз.
#ES4O2T/UZR / @l29ah --> #ES4O2T/KIQ / 2624 дня назад
@l29ah Чо?
#ES4O2T/BCN / @je --> #ES4O2T/UZR / 2624 дня назад
@je Давай, расскажи подробнее про ограничение сетевого стека, желательно с пруфлинками.
#ES4O2T/ZHD / @l29ah --> #ES4O2T/BCN / 2624 дня назад
@l29ah Чо тупой чтоле, максимальный размер пакета в IP-сетях 4к, по факту ограничено сверху MTU.
#ES4O2T/ANV / @je --> #ES4O2T/ZHD / 2624 дня назад
@je > размер пакета IP > TCP-based протокол У тебя шизофазия, попробуй ещё раз.
#ES4O2T/YHB / @l29ah --> #ES4O2T/ANV / 2624 дня назад
@je Блять, то есть 64к, но это целиком со всеми уровнями.
#ES4O2T/LMZ / @je --> #ES4O2T/ANV / 2624 дня назад
@je Че блять?
#ES4O2T/DIC / @l29ah --> #ES4O2T/LMZ / 2624 дня назад
@l29ah Чо блядь тупой чтоле? Я ты откроешь порт (listen/bind) и будешь получать socket.recv(), а я буду отправлять socket.send(file.read()) 10 мегабайт, дохуя ты получишь, а, рациональный?
#ES4O2T/VYV / @je --> #ES4O2T/DIC / 2624 дня назад
@je При чём здесь TCP?
#ES4O2T/VCV / @l29ah --> #ES4O2T/VYV / 2624 дня назад
@l29ah Не знаю, хоть удп, хоть жопа, IP пакет блядь ограничен, о чем мы здесь говорим-то.
#ES4O2T/ZDA / @je --> #ES4O2T/VCV / 2624 дня назад
@je Меня не ебут размеры IP-пакета, когда я пользуюсь TCP.
#ES4O2T/UUR / @l29ah --> #ES4O2T/ZDA / 2624 дня назад
@l29ah Ты на мой вопрос ответь, сможешь за раз получить send.recv() 10 мегабайт?
#ES4O2T/YCD / @je --> #ES4O2T/UUR / 2624 дня назад
@je то есть socket.recv(), у меня тебя рационального уже глаз задергался
#ES4O2T/JKB / @je --> #ES4O2T/YCD / 2624 дня назад
@je Твой вопрос не запустится.
#ES4O2T/SOW / @l29ah --> #ES4O2T/YCD / 2624 дня назад
@je На каком это языке вообще?
#ES4O2T/LJA / @l29ah --> #ES4O2T/JKB / 2624 дня назад
@l29ah Азаза, пошли отмазоны, на каком блядь языке, на любом, лях, на любом! Ты не протолкнешь через сетевой стек сильно дохуя, пишут, что сейчас в линуксах это ограничение установлено в 256к буфер, но я тебя уверяю через публичные сети ты и 4к с трудом пропихнешь.
#ES4O2T/8ID / @je --> #ES4O2T/LJA / 2624 дня назад
@je Да как же ты заебал. Мы сейчас говорим о TCP, а не о конкретной имплементации API к сетевому стеку.
#ES4O2T/5U2 / @l29ah --> #ES4O2T/8ID / 2624 дня назад
@l29ah Прочитай еще раз исходное сообщение о чем мы здесь говорим, о каких ты здесь API мне чешишь я не знаю, но send издревле отпрвлял ровно один пакет, ни два и ни три, хочешь больше - крутишь цикл. Рациональный ты наш.
#ES4O2T/MLT / @je --> #ES4O2T/5U2 / 2624 дня назад
@je Ответь на /KGV или съеби.
#ES4O2T/N3O / @l29ah --> #ES4O2T/MLT / 2624 дня назад
@l29ah Ну чисто теоретически удобней да, выделить буфер статичной длины и всосать в него, чем выделять динамически и докидывать в него прочитанное. Скорее всего на это повлияла сишка. Однако, не забывай, что используя голые сокеты и TCP/UDP ты не можешь не считаться с максимальным размером пакета, пока не нахуевертишь свою абсракцию над беркли-сокетом.
#ES4O2T/QCC / @je --> #ES4O2T/KGV / 2624 дня назад
@je В любом вменяемом ЯВУ эти абстракции уже накиданы, поскольку в рот кодеры ебали адаптироваться к сетевому стеку конкретной ОС, да и общение как правило происходит всё же через TLS-либу.
#ES4O2T/W44 / @l29ah --> #ES4O2T/QCC / 2624 дня назад
@l29ah Чот стандарт говорит разбивать нужно, я что-то не то читаю? https://tools.ietf.org/html/rfc5246#section-6.2.1
#ES4O2T/WQD / @je --> #ES4O2T/W44 / 2624 дня назад
@je Стандарт не описывает API.
#ES4O2T/GTM / @l29ah --> #ES4O2T/WQD / 2624 дня назад
@l29ah Ну вот тебе API openssl: SSL_write/SSL_read читают пишут по "per record data size to 16K exactly". Или я не так понял, и можно вхуярить 10 мегабайт туда?
#ES4O2T/EIQ / @je --> #ES4O2T/GTM / 2624 дня назад
Чем тебе матрикс не нравится? Можешь из него и в ирку пердолькаться.
#ES4O2T/MEZ / @anonymous / 2624 дня назад

mfw тупое быдло в этом треде смешивает application и transport layer

#ES4O2T/ZNF / @ninesigns / 2624 дня назад
@je Впрочем я уже нагеглил, что ограничиваться будет только размером инта. http://httpd.apache.org/docs/2.2/mod/mod_ssl.html#sslrenegbuffersize
#ES4O2T/OBO / @je --> #ES4O2T/EIQ / 2624 дня назад
Аффтар, раз уж ирцу поставил, го в чатег к илитным бнващерам во фриноду.
#ES4O2T/G0Y / @je / 2624 дня назад

@anonymous я начал с nc, чтобы исключить ограничение в клиенте

#ES4O2T/DFV / @soko1 --> #ES4O2T/BOP / 2624 дня назад

@ckorzhik чё ты несёшь?
irc по умолчанию так и делает вообще-то.
смысл в том чтобы можно было отправлять длинные сообщения с отступами и разрывами строк и чтобы всё не херилось к хуям и не требовалось всякие пастебины юзать

#ES4O2T/WLL / @soko1 --> #ES4O2T/UMO / 2624 дня назад

@je какой канал?

#ES4O2T/LKT / @soko1 --> #ES4O2T/G0Y / 2624 дня назад

@anonymous серверная часть потребовала большое кол-во зависимостей и я испугался их ставить, сорь

#ES4O2T/47D / @soko1 --> #ES4O2T/MEZ / 2624 дня назад

@je 4 килобайта с трудом? оО
так и чё теперь делать?
какой принцип тогда у жабера, что там можно срать сколько влезет без лимитов (вроде)?

вот кстати сколько получилось отправить и принять

In [2]: len(s)
Out[2]: 4078

#ES4O2T/HM5 / @soko1 --> #ES4O2T/8ID / 2624 дня назад
@soko1 Если не патчить север значительно, то особо не увеличишь ничего. Я уже написал, что нужно читать по N байт (1000-2000) пока не получишь завершение. В IRC завершение это просто EOF (\r\n). Видимо для мултилайна тебе предется ввести собственный терминатор к тому же.
#ES4O2T/Y7N / @je --> #ES4O2T/HM5 / 2624 дня назад
@soko1 Олсо через какую сеть гонял, если через localhost то ты пидор и червь.
#ES4O2T/H8X / @je --> #ES4O2T/HM5 / 2624 дня назад
@je > EOF (\r\n) Да когда же ты съебёшь?
#ES4O2T/IYK / @l29ah --> #ES4O2T/Y7N / 2624 дня назад
@l29ah Ебу я как-то твою мамку, а у ней на жопе написано CRLF, тогда я все понял.
#ES4O2T/A7S / @je --> #ES4O2T/IYK / 2624 дня назад
@je Блядь, маня окончательно ебанулась.
#ES4O2T/TUI / @komar --> #ES4O2T/KIQ / 2624 дня назад
@komar Хуй соси губой тряси.
#ES4O2T/L09 / @je --> #ES4O2T/TUI / 2624 дня назад

@je через localhost на который форварднул сашей малинку за тором на которой всё крутится

#ES4O2T/FQ4 / @soko1 --> #ES4O2T/H8X / 2624 дня назад

@je короч я так и думал что не всё так просто будет. ок, понял, буду разбираться дальше

#ES4O2T/S31 / @soko1 --> #ES4O2T/Y7N / 2624 дня назад
@soko1 Может и делает, но у меня русский текст до настроек часто не работал.
#ES4O2T/FVA / @ckorzhik --> #ES4O2T/WLL / 2624 дня назад
@ckorzhik >подключиться на нужный порт >до настроек >не уметь в utf-8
#ES4O2T/5FN / @je --> #ES4O2T/FVA / 2624 дня назад

до настроек чего?

#ES4O2T/5NU / @soko1 / 2624 дня назад

@ckorzhik у меня проблема в другом - если отсылать длинное сообщение, то оно режется на кучу мелких частей и они с огроооомнейшей задержкой шлются, это какой-то пиздец.

#ES4O2T/4K7 / @soko1 --> #ES4O2T/FVA / 2624 дня назад
@soko1 Это функциональность на стороне клиента, поскольку меинстримные irc-сервера кикают за несколько сообщений подряд.
#ES4O2T/DHS / @l29ah --> #ES4O2T/4K7 / 2624 дня назад
@l29ah Пруф или кекают.
#ES4O2T/78X / @je --> #ES4O2T/DHS / 2624 дня назад

@l29ah ты прав, когда через nc слал и nc проверял - всё заебись было. надо будет ещё и hexchat пачнуть короч

#ES4O2T/XSQ / @soko1 --> #ES4O2T/DHS / 2624 дня назад
@soko1 Из-за всей этой идиотской еботы я и юзаю XMPP, хоть он и говно в других местах.
#ES4O2T/YJ9 / @l29ah --> #ES4O2T/XSQ / 2624 дня назад
@soko1 Хэкир чтоле, хули ты там патчишь.
#ES4O2T/LXA / @je --> #ES4O2T/XSQ / 2624 дня назад
@l29ah Какие, например? На фриноде не замечал.
#ES4O2T/EHN / @ckorzhik --> #ES4O2T/DHS / 2624 дня назад

@l29ah отчёт о доставке там где нибудь уже реализовали?
каким клиентом пользуешься?

#ES4O2T/DGT / @soko1 --> #ES4O2T/YJ9 / 2624 дня назад
@soko1 Если ты про https://xmpp.org/extensions/xep-0184.html, то много где уже. tkabber
#ES4O2T/W1C / @l29ah --> #ES4O2T/DGT / 2624 дня назад
@l29ah Разве гуй это рационально?
#ES4O2T/7O0 / @je --> #ES4O2T/W1C / 2624 дня назад
@ckorzhik freenode, для начала. Попробуй запостить десять сообщений подряд без троттлинга со стороны клиента.
#ES4O2T/FNZ / @l29ah --> #ES4O2T/EHN / 2624 дня назад

@l29ah >tkabber

а блин, точно. я у тебя про клиент уже раза три спрашивал)

Если ты про https://xmpp.org/extensions/xep-0184.html, то много где уже.

и в ткабере этот хуй реализован? и в просоди?

#ES4O2T/KC2 / @soko1 --> #ES4O2T/W1C / 2624 дня назад
@soko1 Да. Он не требует поддержки сервером.
#ES4O2T/8HO / @l29ah --> #ES4O2T/KC2 / 2624 дня назад

@l29ah Блин, не знаю в общем. С одной стороны у жабера меньше недостатков в сравнении с иркой, но зато пока тот же ткаббер настроишь - пол дня просрёшь.

#ES4O2T/3VI / @soko1 --> #ES4O2T/8HO / 2624 дня назад
@soko1 Обосрался блядь, что ты там собрался в ткаббере настраивать, он просто работает изкаропки. Ты попробуй irssi настрой и в жабце с ней посиди, потом расскажешь, что сложней.
#ES4O2T/76W / @je --> #ES4O2T/3VI / 2624 дня назад

@je о да, особенно с 2 аками, пгп, отр и прочим

#ES4O2T/KNN / @soko1 --> #ES4O2T/76W / 2624 дня назад

@l29ah есть ли тут отр? а то чёт нагуглить не могу

#ES4O2T/C1P / @soko1 --> #ES4O2T/W1C / 2623 дня назад
@soko1 В ткаббере есть.
#ES4O2T/O6D / @l29ah --> #ES4O2T/C1P / 2623 дня назад

@l29ah так а где его включать? перерыл все настройки

#ES4O2T/QZH / @soko1 --> #ES4O2T/O6D / 2623 дня назад
@soko1 Плагин поставить. Вообще, пиздуй в tkabber@cjr.
#ES4O2T/PN7 / @l29ah --> #ES4O2T/QZH / 2623 дня назад

@l29ah ага, получилось. заебись! переползу наверное на него. только бесит что на каждый чих надо залазить в настройки и выбирать "set for current and future session", что по дефолту сохраняет всё лишь для текущей сессии. прям как в имаксе

#ES4O2T/ZB7 / @soko1 --> #ES4O2T/PN7 / 2623 дня назад
> а в юникоде значит ваще 256 символов rtfm
#ES4O2T/7PR / @anonymous / 2623 дня назад
@je ебааать
#ES4O2T/A1O / @anonymous --> #ES4O2T/KIQ / 2623 дня назад
@l29ah le eto
#ES4O2T/TPU / @anonymous --> #ES4O2T/IYK / 2623 дня назад

@anonymous какой?

#ES4O2T/CK9 / @soko1 --> #ES4O2T/7PR / 2623 дня назад
@ninesigns mfw какой-то чухан пукнул про воображаемые слои, которые не используются ни одним сетевым специалистом и ничего не означают
#ES4O2T/IMR / @anonymous --> #ES4O2T/ZNF / 2623 дня назад
@soko1 про юникод, какой же ещё http://www.unicode.org/versions/Unicode9.0.0/UnicodeStandard-9.0.pdf#G7.13708 глава про кодирование юникодных "символов" и дальше
#ES4O2T/UU6 / @anonymous --> #ES4O2T/CK9 / 2623 дня назад
@anonymous К чему это? Мы здесь все прекрасно различаем однобайтные кодировки, utf-8, utf-18, UCS*, что сказать-то хотел по существу?
#ES4O2T/ZY6 / @je --> #ES4O2T/UU6 / 2623 дня назад
@anonymous То есть как не используются?
#ES4O2T/MXH / @je --> #ES4O2T/IMR / 2623 дня назад
@je к тому, что кодировки для представления юникода могут иметь различное число байтов, а отображаемый тобою глиф может быть описан несколькими "символами" юникода поэтому выражение "а в юникоде значит ваще 256 символов" не верно и в целом не имеет смысла
#ES4O2T/6I3 / @anonymous --> #ES4O2T/ZY6 / 2623 дня назад
@anonymous Вот это новости, а дохуя в ирце кодировок кроме utf-8, или тебя как дауну каждое слово имплайнить? Может ты хотел показать свою крутость этим?
#ES4O2T/AAL / @je --> #ES4O2T/6I3 / 2623 дня назад
@je Как раз в UTF-8 переменная длина представления различных кодпоинтов, дебилушка. От 1 до 4 байт.
#ES4O2T/9R4 / @anonymous --> #ES4O2T/AAL / 2623 дня назад

@anonymous типа выебнуться решил, да? я пишу на рузске, поэтому то что там у япошек с китайцами меня не ебёт вовсе

#ES4O2T/DUA / @soko1 --> #ES4O2T/9R4 / 2623 дня назад
бля доставил трeд, спасибо Hо уж проститe, тут явHо He всe поHимают за тупость; HадобHо Haбросить eщe про джамбограммы с [MТU over 9000](https://en.wikipedia.org/wiki/Jumbo_frame#Super_jumbo_frames)
#ES4O2T/ZE7 / @anonymous / 2623 дня назад
@anonymous > An optional feature of IPv6, the jumbo payload option, allows the exchange of packets with payloads of up to one byte less than 4 GiB (2³² − 1 = 4,294,967,295 bytes), by making use of a 32-bit length field
#ES4O2T/1KU / @anonymous --> #ES4O2T/ZE7 / 2623 дня назад
@soko1 щоб ти згорів червоним полум'ям, тварино
#ES4O2T/4QN / @anonymous --> #ES4O2T/DUA / 2623 дня назад

@anonymous стій, я ж не москаль

#ES4O2T/2ZM / @soko1 --> #ES4O2T/4QN / 2622 дня назад
@soko1 попроси у укров
#ES4O2T/D3X / @anonymous --> #ES4O2T/VTN / 2622 дня назад

@anonymous у меня нет сала чтобы заплатить за услугу, я веган

#ES4O2T/TIL / @soko1 --> #ES4O2T/D3X / 2622 дня назад
ipv6 ready BnW для ведрофона BnW на Реформале Викивач Котятки

Цоперайт © 2010-2016 @stiletto.