Closed source, opensource Software patchen?
Closed source, opensource Software patchen?
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
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
- 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?
Lies doch einfach mal hier:https://de.wikipedia.org/wiki/GNU_Gener ... ic_LicenseDie 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).
Re: Closed source, opensource Software patchen?
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?
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?
Re: Closed source, opensource Software patchen?
Ich kann diesem Satz keine sinnvolle Fragestellung entnehmen.Joe58 hat geschrieben:05.11.2017 12:42:15meiner Kenntniss nach ist es verboten durch der GPL Lizenz opensource Software zu modifizieren die im kompilierten Format sind?
Was immer du willst, solange du es nicht weitergibst.Joe58 hat geschrieben:05.11.2017 12:42:15Ich will wissen was ich jetzt mit der Bootloader Datei im kompilierten Format alles anstellen darf.
Wer Binaries, welche auf GPL-lizensiertem Quellcode beruhen, weitergibt muss nicht automatisch ungefragt den Quellcode mitliefern, auch wenn es als guter Ton gilt.Joe58 hat geschrieben:05.11.2017 12:42:15Meines 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?
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.
Du könntest dich an gpl-violations.org wenden.Joe58 hat geschrieben:05.11.2017 12:42:15Ich 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?
Das kommt darauf an, ob sie gegen GPL-Code gelinkt ist.Joe58 hat geschrieben:05.11.2017 15:03:01Ich 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?
Re: Closed source, opensource Software patchen?
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?
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?
Re: Closed source, opensource Software patchen?
Den Quellcode für den Bootloader bekommst du doch direkt auf deren Seite? http://www.denx.de/wiki/U-Boot/SourceCode
Re: Closed source, opensource Software patchen?
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!
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!
Re: Closed source, opensource Software patchen?
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.
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.
Re: Closed source, opensource Software patchen?
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?
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?
Re: Closed source, opensource Software patchen?
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.
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.
Re: Closed source, opensource Software patchen?
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.Joe58 hat geschrieben:12.11.2017 16:47:05Ich 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.
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.
Re: Closed source, opensource Software patchen?
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.hikaru hat geschrieben:13.11.2017 11:06:14Ich 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.
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.
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.Tivoisierung
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
Re: Closed source, opensource Software patchen?
Kannst doch im Hexeditor nebeneinanderstellen und nachgucken.Joe58 hat geschrieben:13.11.2017 15:06:49bestimmt sind in dem Binary irgendwo gewisse K0mponenten/Sektionen die excakt gleich bleiben müssen.
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 ….
Re: Closed source, opensource Software patchen?
In dem SoC Amlogic 8726-MX ist eine EEPROM von 32 MB
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?
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?