Hlavní navigace

Oracle obchází licenci GNU GPL, velmi pochybným způsobem

Petr Krčmář

Linuxový vývojář Matthew Garrett upozorňuje na pochybnou praktiku, kterou se Oracle snaží obcházet licenci GNU GPL. Vyvíjí totiž jaderný modul DTrace, který je distribuován pod licencí CDDL. Ta je nekompatibilní s GNU GPL, takže kód není možné šířit společně s linuxovým jádrem.

Modul používá jadernou funkci ktime_get(), která je exportována pomocí EXPORT_SYMBOL_GPL(). Podle vývojářů jde v takovém případě o odvozené dílo (což ovšem soudy nikdy nepotvrdily), které má být správně uvolněno pod GNU GPL. Oracle ale přidává vlastní funkci dtrace_gethrtimer(), která jednoduše zavolá ktime_get() a vrátí stejný výstup.  Tato funkce je ale exportována v EXPORT_SYMBOL(), u které je vývojáři jádra deklarováno, že jej mohou využívat i aplikace vydané pod jinou licencí.

Oracle se tváří, že takto je to v pořádku, ale podle Garretta jde o velmi pochybný způsob obcházení GNU GPL. Autoři jaderného kódu totiž jasně deklarovali, jaké použití je v souladu s licencí a jaké ne. Přehozením funkce z jedné škatulky do druhé se na tomto faktu nic nemění a stále je třeba dodržet původní licenční ustanovení. Soud nikdy nepotvrdil, že takové volání funkce vytváří odvozenou práci, ale pokud by k tomu jednou došlo, Oracle může těžko tvrdit, že to udělal nezáměrně.

Pikantní je, že sám Oracle se u soudu už několik let snaží dokázat, že API je chráněno autorským zákonem a platí pro něj autorské licence, stejně jako na jakýkoliv jiný kód.

Našli jste v článku chybu?