Closed source, opensource Software patchen?

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Joe58

Closed source, opensource Software patchen?

Beitrag von Joe58 » 05.11.2017 12:42:15

Hallo,

meiner Kenntniss nach ist es verboten durch der GPL Lizenz opensource Software zu modifizieren die im kompilierten Format sind?

Ich will wissen was ich jetzt mit der Bootloader Datei im kompilierten Format alles anstellen darf. Meines Wissens darf ich diese nichtmal an andere weitergeben? Weil ich ja auch den Quellcode nicht mit der GPL lizensierten Datei (kompilierte U-Boot Datei) erhalten habe?

Komischerweise gibt es im Internet haufenweise die Bootloader. Aber keiner hat die Quellcodes. Zumal man ohne upx nicht den Spaghetti Code entziffern kann.

Also bei mir würde es definitiv auffallen.

Ich kann nichts machen ich schreibe schon seit anfang dieses Jahres den Distributor der Bootloader Datei an aber da heißt es immer ach ja keine Ahnung. Und jetzt? Langsam wird es mit meinem Tablet Projekt langweilig....

Grüße

Benutzeravatar
slughorn
Beiträge: 179
Registriert: 26.01.2014 22:43:35
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Grimma; 51°14'N, 12°44'O

Re: Closed source, opensource Software patchen?

Beitrag von slughorn » 05.11.2017 12:58:49

Die GNU General Public License (kurz GNU GPL oder GPL; aus dem Englischen wörtlich für allgemeine Veröffentlichungserlaubnis oder -genehmigung) ist die am weitesten verbreitete Softwarelizenz, die einem gewährt, die Software auszuführen, zu studieren, zu ändern und zu verbreiten (kopieren).
Lies doch einfach mal hier:https://de.wikipedia.org/wiki/GNU_Gener ... ic_License

Joe58

Re: Closed source, opensource Software patchen?

Beitrag von Joe58 » 05.11.2017 15:03:01

Das heißt ich darf die kompilierte Datei nicht weiter geben? Ich habe ja den Quelltext nicht.

Ich habe zwar verstanden das Kernel Module GPL sein müssen aber die Bibliotheken nicht, wie ist es denn mit Software die Proprietär ist, welche in GPL Bootloadern eingebaut wird?

Muss doch dann quelloffen gestellt werden??

Würde doch den Wettbewerb der Unternehmen verschlechtern?

Benutzeravatar
hikaru
Moderator
Beiträge: 13559
Registriert: 09.04.2008 12:48:59

Re: Closed source, opensource Software patchen?

Beitrag von hikaru » 06.11.2017 20:36:27

Joe58 hat geschrieben: ↑ zum Beitrag ↑
05.11.2017 12:42:15
meiner Kenntniss nach ist es verboten durch der GPL Lizenz opensource Software zu modifizieren die im kompilierten Format sind?
Ich kann diesem Satz keine sinnvolle Fragestellung entnehmen.
Joe58 hat geschrieben: ↑ zum Beitrag ↑
05.11.2017 12:42:15
Ich will wissen was ich jetzt mit der Bootloader Datei im kompilierten Format alles anstellen darf.
Was immer du willst, solange du es nicht weitergibst.
Joe58 hat geschrieben: ↑ zum Beitrag ↑
05.11.2017 12:42:15
Meines Wissens darf ich diese nichtmal an andere weitergeben? Weil ich ja auch den Quellcode nicht mit der GPL lizensierten Datei (kompilierte U-Boot Datei) erhalten habe?
Wer Binaries, welche auf GPL-lizensiertem Quellcode beruhen, weitergibt muss nicht automatisch ungefragt den Quellcode mitliefern, auch wenn es als guter Ton gilt.
Es genügt, ihn auf Anfrage zum Selbstkostenpreis weiterzugeben oder den Anfragesteller auf zugängliche Quellen zu verweisen. Wer das nicht tut, der verletzt seinerseits die GPL.
Joe58 hat geschrieben: ↑ zum Beitrag ↑
05.11.2017 12:42:15
Ich kann nichts machen ich schreibe schon seit anfang dieses Jahres den Distributor der Bootloader Datei an aber da heißt es immer ach ja keine Ahnung. Und jetzt?
Du könntest dich an gpl-violations.org wenden.
Joe58 hat geschrieben: ↑ zum Beitrag ↑
05.11.2017 15:03:01
Ich habe zwar verstanden das Kernel Module GPL sein müssen aber die Bibliotheken nicht, wie ist es denn mit Software die Proprietär ist, welche in GPL Bootloadern eingebaut wird?
Das kommt darauf an, ob sie gegen GPL-Code gelinkt ist.

Joe58

Re: Closed source, opensource Software patchen?

Beitrag von Joe58 » 12.11.2017 12:44:08

Na toll...

wenn mir Intenso nicht den Quellcode gibt kann ich halt nix machen.

Überings habe ich jetzt gesehen das die Tablets nach paar Jahren den Geist aufgeben im sinne von spinnende Tablets. Die Dinger fangen dann an von selbst via Touchscreen Eingaben zu tätigen und bekommen dann einen Stromausfall.

Es liegt definitiv nicht am Akuu oder Touchscreen habe es mit meinem anderen Tablet getestet und es muss irgendeine Komponente (Transformator SMD) auf dem Mainboard defekt sein. Kosten 2-3ct.

Es lohnt nicht die Geräte gegen der geplanten Obsoleszenz nachzurüsten. Ist zwar ein sehr kleiner Aufwand, aber ohne Quellcodes nützt das mir 0.

Ich habe 10x und mehr an support@intenso.de eine E-Mail verfasst. Das die mir doch bitte den Bootloader Quellcode zur verfügung stellen, was ist? Die bekommen ihren Arsch nicht hoch und sagen immer hier: http://www.intenso.de/downloads.php?kat ... 1322562274 heja das ist ja Quellcode für's Intenso Tab 814, aber nur der Kernel, da ist nichts von Bootloader!

Ich habe einfach Bockmist von Intenso damals gekauft. Das die ihren Pflichten nicht nachkommen steht für mich felsenfest fest. Habe mich an gpl-violations.org gewendet, aber diese Seite ist mittlerweile inaktiv. :(

Ich werde einfach nie an den GPL Quellcode kommen. Zumal es gibt keine Anlaufstelle dafür die mir bekannt ist. Kennt wer eine Anlaufstelle um GPL Quellcode zu erzwingen?

:(

DeletedUserReAsG

Re: Closed source, opensource Software patchen?

Beitrag von DeletedUserReAsG » 12.11.2017 12:59:04

Den Quellcode für den Bootloader bekommst du doch direkt auf deren Seite? http://www.denx.de/wiki/U-Boot/SourceCode

Joe58

Re: Closed source, opensource Software patchen?

Beitrag von Joe58 » 12.11.2017 16:47:05

Ja aber der funktioniert nicht mit meinem Tablet Mainboard M805NC-MB von Yifang zusammen.

Ich weiß jetzt nun wirklich nicht mehr was ich von opensource und GPL Software halten soll.

Der Bootloader wurde extra mit einem Programm gestartet, aber diese Programme hat nur Intenso. Der original Quellcode kam von Amlogic.com und Yifangdigital hat den Code dann an das Tablet angepasst, aber bei der Weitergabe an Intenso scheint es einfach verloren gegangen zu sein.

Jetzt muss ich wie eine blöde Kuh ein neues Tablet kaufen, nur weil ich mein Tabket nicht selber update aufgrund von mangelnde Quellcodes?

GPL wird für mich unseriöser, weil es irgendwie nicht durchgesetzt wird.

Hat jemand eine Idee wie ich an den Quellcode für mein Intenso Tab 814 dran komme? In dem Tablet ist wie bereits gesagt ein Mainboard von Yifang mit Bezeichnung M805NC-MB?

Ich stehe wie ein Ochse vor'm Berg!

:hail:

DeletedUserReAsG

Re: Closed source, opensource Software patchen?

Beitrag von DeletedUserReAsG » 12.11.2017 16:58:35

Quellen für diese teils abenteuerlichen Behauptungen?

Der Bootloader wird auf ARM-Geräten normalerweise direkt vom SoC aufgerufen, die Adresse im Speicher ist da hartcodiert. Weiterhin hat der im Wesentlichen nur die Aufgabe, den Kernel mit passenden Parametern zu laden – ich denke nicht, dass da groß Anpassungen durch werweißwen am U-Boot-Code vorgenommen worden sind. Vielmehr wird dein Problem sein, die passenden Parameter rauszufinden (also Adressen im Speicher, an denen der Startpunkt des Loaders zu liegen hat, Parameter, welche der Kernel benötigt, etc.) und die passenden Blobs für die Hardware mit deinem Kernel lauffähig zu machen. Und da wird dir auch die GPL nicht helfen, solange du nicht zweifelsfrei nachweisen kannst, dass diese in irgendeiner Form verletzt wurde. Bislang sieht’s jedenfalls nicht danach aus, bislang lese ich hier teils recht wild zusammengedichtete Sachen. No offense intended, fiel mir in deinen Tablet-Threads halt schon häufiger auf.

Joe58

Re: Closed source, opensource Software patchen?

Beitrag von Joe58 » 12.11.2017 17:45:14

Ja dann.

Es stimmt das der SoC den Bootloader lädt wie du bereits gesagt hast. Bei mir ist es so das der Bootloader von einem Nand bei 0x0000 oder von einer MicroSD Karte geladen wird 0x0000 (MBR).

Meiner Meinung nach ist es ein bisschen unschön wenn wenn erst der Bootloader neue MTD Partitionen bei jedem Start einrichtet und dann der Kernel wieder eine andere einrichtet. Für eine neuere Android Version ist es halt zwingend erforderlich das das Partitionslayout geändert wird.

Wird dadurch nicht Badblocks provoziert? Ich kann ja nicht jedesmal die MTD Partitionen neu schreiben?

DeletedUserReAsG

Re: Closed source, opensource Software patchen?

Beitrag von DeletedUserReAsG » 12.11.2017 17:51:35

Wäre mir neu, dass Bootloader oder Kernel an der Partitionstabelle rumschreiben würden. Zumindest tritt das bei keinem meiner ARMe auf. Weder bei den Consumergeräten, noch beim Pi oder Cubie, noch beim alten Wondermedia-„Notebook“.

Bei Android-Updates über die Releases hinweg kann’s schonmal vorkommen, dass das Partitionslayout geändert wird. Sonderlich häufig ist zumindest mir das in der Vergangenheit aber auch nicht untergekommen.

Benutzeravatar
hikaru
Moderator
Beiträge: 13559
Registriert: 09.04.2008 12:48:59

Re: Closed source, opensource Software patchen?

Beitrag von hikaru » 13.11.2017 11:06:14

Joe58 hat geschrieben: ↑ zum Beitrag ↑
12.11.2017 16:47:05
Ich weiß jetzt nun wirklich nicht mehr was ich von opensource und GPL Software halten soll.
[..]
GPL wird für mich unseriöser, weil es irgendwie nicht durchgesetzt wird.
Wenn du deinen letzten Satz nicht passiv sondern aktiv formuliert hättest, dann wäre dir möglicherweise aufgefallen, warum die GPL nicht durchgesetzt wird.
Im Übrigen ist die GPL bis einschließlich v2 (darunter stehen sowohl Linux-Kernel als auch uboot) machtlos gegen Tivoisierung. Du kannst also auf der Grundlage keinen Hersteller zur Bereitstellung lauffähigen(!) Codes zwingen.

Ich würde dir einfach vorschlagen, in Zukunft sorgfältiger bei der Hardwareauswahl zu sein. Wenn du Wert darauf legst, den Bootloader zu manipulieren, dann sollltest du nur Geräte kaufen, bei denen schon vor deinem Kauf gut dokumentiert ist, wie das geht.

Joe58

Re: Closed source, opensource Software patchen?

Beitrag von Joe58 » 13.11.2017 15:06:49

hikaru hat geschrieben: ↑ zum Beitrag ↑
13.11.2017 11:06:14
Ich würde dir einfach vorschlagen, in Zukunft sorgfältiger bei der Hardwareauswahl zu sein. Wenn du Wert darauf legst, den Bootloader zu manipulieren, dann sollltest du nur Geräte kaufen, bei denen schon vor deinem Kauf gut dokumentiert ist, wie das geht.
Genau! Ich kaufe keine Hardware! Ich kaufe immer Hard- und Software! Somit sollte kein Kauf mehr getätigt werden, der nicht die Kenntnisse des Produktes voraussetzt.

Somit muss immer im Vorfeld bekannt sein was man sich an's Knie nagelt. ;)

Mit upx kann ich zum glück den Bootloader "entschlüsseln". ;) Werde mir einen eigenen Kernel mit eigener Kommand Line machen der mir den A9 auf 1.5GHz erlaubt, oder den Bootloader modden. Mal sehen was einfacher ist, bei CustomKernel kann es auch Überraschungen geben.
Tivoisierung
Dieses Wort ist wichtig. Da gebe ich dir recht. Interessant ist das ich in der Tat den M3HHREV0 Bootloader etc kompiliert habe, aber der SoC gesagt hat stage skipped. :( Tivoisierung ist hier sehr wahrscheinlich. Ich werde mal schauen ob der Bootloader wirklich null, nix verändert werden kann, somit kann ich mir ohne customKernel alles aus dem Kopf schlagen. Danke das Wort hat gefehlt. Denke das in dem SoC eine Prüfsumme drin ist, die ich nur über JTAG ändern könnte, somit ist keine OTA möglich.

Interessant ist das baugleiche Tablet 3 unterschiedliche U-Boot Versionen mitbringen die alle auf meinem Tablet lauffähig sind, bestimmt sind in dem Binary irgendwo gewisse K0mponenten/Sektionen die excakt gleich bleiben müssen.

Beste Grüße

DeletedUserReAsG

Re: Closed source, opensource Software patchen?

Beitrag von DeletedUserReAsG » 13.11.2017 17:42:49

Joe58 hat geschrieben: ↑ zum Beitrag ↑
13.11.2017 15:06:49
bestimmt sind in dem Binary irgendwo gewisse K0mponenten/Sektionen die excakt gleich bleiben müssen.
Kannst doch im Hexeditor nebeneinanderstellen und nachgucken.

Die Frage ist eher, wie du darauf kommst, dass im SoC (der ja kein BIOS o.ä., sondern lediglich die Ansprungadresse für den Bootloader selbst hat) eine Prüfsumme sei. Weil dein selbstgepfuschterbauter Kram nicht tut? Bei dem, was ich so von dir lese, kann das so viele verschiedene Ursachen haben – eine Prüfsumme oder Signatur des Bootloaders oder Kerns würde mir da nicht als wahrscheinlichste Ursache in den Kopf kommen ….

Joe58

Re: Closed source, opensource Software patchen?

Beitrag von Joe58 » 14.11.2017 16:52:23

In dem SoC Amlogic 8726-MX ist eine EEPROM von 32 MB :D

Werde mich definitiv darum bemühen den Kernel von dem Bootloader weitestgehend abzuschotten. ;) Eigene MTD Rahmen und eigene Kernel Befehlszeile, das dürfe erstmal soweit ok sein.

Danach reverse engineere ich den Amlogic Debugrom mode, ich weiß nicht genau was der macht, aber der stellt eine Konsole über UART bevor U-Boot kommt da: https://github.com/j1nx/Amlogic-reff16- ... ME.amlogic

Es gibt unter anderem Lese und Schreibbefehle, dieser Debugrom Modus entpackt bei 0x8000 den UCL komprimierten U-Boot Bootloader.

Jedenfalls lohnt sich das Reverseengineeren nur wenn man auch auf dem Gerät physikalische Zugriff hat, denke da wird JTAG hoffentlich funktionieren, ich habe noch keine Erfahrungen mit JTAG, habe nur Erfahrungen mit dem sehr viel weniger mächtigen UART Verbindung. Ich will ja nicht jedes mal meine microsdkarte neu flashen. ;) Der SoC sagt ja no boot device found enter serial boot. Dies sagt der bei keiner 8GB Nand und bei keiner MicroSDKarte. Also wenn kein Amlogic Debugdomodus da ist.

Jemand Ideen? Beziehungsweise hört sich irgendwas sehr nicht machbar an?

;)

Antworten