Allwinner не только нарушает GPL, но и обфусцирует код

от автора

Китайский разработчик микросхем Allwinner не так хорошо знаком широкой публике, как Nvidia, но усиленно стремится к известности. Может, когда-нибудь сам Линус Торвальдс обратился к ним с личным посланием.

Следует признать, Allwinner делает успехи на этом пути. Компания регулярно нарушает условия лицензии GPL, не открывая исходный код своей реализации ядра Linux/Android и загрузчика U-Boot. Они внедряют LGPL-код в бинарные блобы и совершают другие нарушения.

Всё это при том, что Allwinner SoC очень популярны среди недорогих устройств. Вокруг некоторых из них сформировалось большое Open Source сообщество.

В то же время компания, строя из себя саму невинность, постоянно выкладывает на Github код, указывая лицензию LGPL. При этом продолжая использовать бинарные фрагменты.

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

Но теперь вскрылись новые обстоятельства, которые трудно списать на недосмотр. При очередном нарушении свободной лицензии компания Allwinner изменила названия некоторых функций, позаимствованных из LGPL-библиотек libavcodec и др., чтобы поиском по бинарному коду их нельзя было найти.

Этот возмутительный факт сейчас обсуждается в open Source сообществе. Всё указывает на то, что Allwinner вовсе не переписывала код библиотек, чтобы избавиться от условий лицензии, а действительно только внесла правки в названия функций. Эдакая минимальная, но наглая обфускация с понятной целью: замести следы и стереть улики.

Ну что ж, вряд ли они привлекут внимание Линуса Торвальдса, зато могут привлечь внимание Software Freedom Conservancy, которая недавно подала в суд на VMware за нарушение GPL.

ссылка на оригинал статьи http://geektimes.ru/post/247566/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *