(Untitled)

Mar 05, 2020 12:46


206761 - escape codes in network interface names causes chaos

bugzilla.kernel.org


echo -e '\x1B[2J'|xargs -I I sudo ip link add I type dummy
echo -e '\xf0\x9f\x92\xa9\xf0\x9f\x92\xa9' |xargs -I I  sudo ip link add I type dummy

linux

Leave a comment

Comments 34

mc6312 March 5 2020, 11:58:01 UTC
Т.е. сетевые интерфейсы можно обзывать не-ascii символами? И какой [censored] это придумал?
Блин, шо винда, шо *никсы - локализуют то, что не надо, что надо - не локализуют.

Reply

amarao_san March 5 2020, 12:11:26 UTC
Придумал это я. А вот почему ядро принимает в качестве имени почти любые байты - это вопрос интересный. Видимо, потому же, почему и файлы.

Reply

mc6312 March 5 2020, 12:32:52 UTC
> А вот почему ядро принимает в качестве имени почти любые байты
Я именно об этом. КМК для имен устройств и прочих псевдофайлов должно быть ограничение, ибо ваистену.
Еще б я с удовольствием дал бы в глаз тому, кто придумал VFS сделать неюникодной (т.е. шоб ТОЛЬКО юникодные символы и никаких "байтов") и выставил ограничение в 255 _байт_ на длину имени файла, и тем, кто после 1991 года (как минимум) придумывал ФС, позволяющие неюникодные кодировки (или, как минимум, ФС без информации о кодировке в заголовке ФС).
Еще хочется от души харкнуть в разработчиков регистро-зависимых ФС, но это всё ж меньшее зло, по сравнению с вышеперечисленным.

Reply

amarao_san March 5 2020, 12:48:29 UTC
Не трогай вопрос "юникодных символов". Там бездна. Например, "и" и "и + ◌̆"

Вот, смотри:
й
и ̆

Это одна буква или разные? Unicode - бездна, со своими правилами нормализации и т.д. Единственный, кто его осилил по-настоящему - это Rust. И это ТОЛСТЫЙ бинарь. Только ради unicode.

... меня сейчас больше бесит лимит на 15 символов для имени интерфейса.

Reply


tzirechnoy March 5 2020, 16:12:46 UTC
suck names -- это было вот в тему!

PS Я, разумеется, за то, чтобы не трогать kernel, а изменить все user-space tools.

Но работа, понятно, крайне неприятная.

Reply

amarao_san March 5 2020, 16:36:38 UTC
console_codes, если что, рисуется ядром. Так что оно тоже в этой гадости запачкано.

Reply

tzirechnoy March 6 2020, 13:04:16 UTC
Нет, console_codes как таковое -- это стандартный интэрфейс, никакой гадости.
Вот если оно через log в консоль упало бы -- тогда да. А когда это ip link на терминале фигню рисует -- это проблемы ip link.

Reply

amarao_san March 6 2020, 13:22:13 UTC
Так оно попадёт.

[79009.722730] ath10k_pci 0000:3a:00.0 й: renamed from wlp58s0

Дописал туда '\x1B[2J', это п-ц какой-то. dmesg пустой, вывод на консоль трётся.

: Limiting TX power to 23 (23 - 0) dBm as advertised by 38:ff:36:3b:6f:4c

Reply


ufm March 6 2020, 03:29:19 UTC
что-то мне подсказывает, что переход всей планеты на латиницу (с запретом добавления дополнительных символов) обошлось-бы человечеству дешевле.

Reply

amarao_san March 6 2020, 12:29:00 UTC
Математики сильно-сильно негодуют.

Reply

mc6312 March 6 2020, 12:31:39 UTC
А математики пусть научатся давать переменным имена длиннее одного символа.

Reply

amarao_san March 6 2020, 14:17:16 UTC
Они и дают. Но обычно все начинают страдать от aijlk.

Reply


anonim_legion March 7 2020, 11:31:30 UTC

Leave a comment

Up