← All posts tagged говно

Elemir
XMPP говно смерть Все помнят светившийся недавно смерть-символ. Не многие разобрались в сути дела, — почему же от него дисконнектится клиенты. Разберём это непотребство подробнее.
Первое, — что это за символ такой вообще? Это невалидный символ U+FDEF. Он относится к числу зарезервированных 66 символов, которые гарантировано не будут использованы в стандарде, программа может их использовать для своих внутренних целей.
Цитата из википедии:
Certain noncharacter code points are guaranteed never to be used for encoding characters, although applications may make use of these code points internally if they wish. There are sixty-six noncharacters: U+FDD0..U+FDEF and any code point ending in the value FFFE or FFFF (i.e. U+FFFE, U+FFFF, U+1FFFE, U+1FFFF, ... U+10FFFE, U+10FFFF). The set of noncharacters is stable, and no new noncharacters will ever be definedВо-вторых, мы смотрим в RFC-6120 (XMPP core). Там про кодировки написано следующее:
Implementations MUST support the UTF-8 transformation of Universal Character Set [UCS2] characters, as needed for conformance with [CHARSETS] and as defined in [UTF-8]. Implementations MUST NOT attempt to use any other encoding. If one party to an XML stream detects that the other party has attempted to send XML data with an encoding other than UTF-8, it MUST close the stream with a stream error, which SHOULD be <unsupported-encoding/> (Section 4.9.3.22), although some existing implementations send <bad-format/> (Section 4.9.3.1) instead.И так, значит поведение выпадающих клиентов корректно, — они определяют неправильно сформированный юникод, бросают ошибку и выходят. Но как бороться со злоумышленниками, использующими невалидный юникод? Всё просто, — сервер тоже обязан закрыть соединение, если ему прислали невалидный utf8. Поэтому формально выкидывать должно этих умников. Но вы прекрасно понимаете как соблюдают стандарты в open source мире.
Elemir
говно msi Новый аккумулятор под msi u90 стоит целое состояние в рашке. Треть цены нетбука, в то время, когда я его покупал (два года назад!)
Elemir
programming juick_ppl говно Почему любая жуйкоблядь считает охуенно интересным постить свой сраный быдлокод, и считает его дико красивыми, концептуально интересными и все такое? Типа, охуеть, вот моя тулза умеет xmpp, давайте заскриншотим и выложим. Пиздец.
inspired by #1334278