VNC Server auf uC implementieren

Gast #6684869
Lesenswert?

Gab es nicht für das STM32F7 DiscoBoard mal eine Portierung von VNC? 
Zumindest kann ich mich erinnern dass ST in ihrer Beispielsoftware 
damals VNC mit drinnen hatte und das Touchdisplay auf der Oberseite 
ferngesteuert werden konnte...
Gast #6684884
Lesenswert?

OSC schrieb:
> Gab es nicht für das STM32F7 DiscoBoard mal eine Portierung von VNC?

ja, die habe ich gerade gefunden, sogar für Mbed. Aber die relevanten 
calls enden in einer Segger emWin Lib die nur als archive file vorliegt.
Das Disco F769 habe ich auch gerade hier liegen, darum ginge es mir, aus 
Spass an der Freud. Zusammen mit lvgl was ich darauf laufen habe.

das ist noch eine tiny source: https://github.com/rymis/trfb

und das Protokoll sieht auch noch überschaubar aus, die ganzen Spiele 
mit Framebuffer Resize usw. muss man ja hoffentlich nicht beherrschen:
https://github.com/ultravnc/UltraVNC/blob/main/rfb/rfbproto.h
#6684886
Lesenswert?

Marc H. schrieb:
> Dergute W. schrieb:
>
>> Aber obacht: Ist GPL.
>
> Was bedeutet das?

https://de.m.wikipedia.org/wiki/GNU_General_Public_License#:~:text=Die%20GNU%20General%20Public%20License,und%20zu%20verbreiten%20(kopieren).
1
Alle abgeleiteten Programme eines unter der GPL stehenden Werkes dürfen von Lizenznehmern nur dann verbreitet werden, wenn sie von diesen ebenfalls zu den Bedingungen der GPL lizenziert werden.
2
...
3
Ziel ist, die Freiheit eines Programmes auch in der Weiterentwicklung von anderen sicherzustellen.
#6684918
Lesenswert?

N. M. schrieb:

> 
https://de.m.wikipedia.org/wiki/GNU_General_Public_License#:~:text=Die%20GNU%20General%20Public%20License,und%20zu%20verbreiten%20(kopieren).
>
1
> Alle abgeleiteten Programme eines unter der GPL stehenden Werkes dürfen 
2
> von Lizenznehmern nur dann verbreitet werden, wenn sie von diesen 
3
> ebenfalls zu den Bedingungen der GPL lizenziert werden.
4
> ...
5
> Ziel ist, die Freiheit eines Programmes auch in der Weiterentwicklung 
6
> von anderen sicherzustellen.
7
>

Bedeutet das, wenn ich eine Lib von VNC nehme, alle meine Quellcodes 
offen legen muss?
Gast #6684973
Lesenswert?

Marc H. schrieb:
> Und wenn ich niemand sage woher die Quellen kommen und behaupte sie
> selbst geschieben zu haben?

Dann machst du dich gleich zweifach strafbar.

bedenke dass die Universität, welche die GPL verfasst hat, das Recht hat 
derartige Verstöße auch ohne Auftrag des Autors zu ahnden.
Gast #6684974
Lesenswert?

das Protokoll selbst ist nicht kompliziert und auch in einem RFC 
beschrieben:
https://tools.ietf.org/html/rfc6143

Der Knackpunkt scheinen die Encondings zu sein: es ist simpel den 
kompletten Screen als Update zu schicken, das kostet aber Bandbreite und 
Rechenzeit für die Übertragung vieler Daten.
Es können auch Deltas der Änderungen übertragen werden, die muss der 
Client dann aber für unbestimmte Zeit sammeln, was Speicher kostet. Um 
Speicher zu sparen, gibt es verschiedene Encodings. Die sind in den VLC 
Implementierungen und die Benutzung wird die GPL nötig machen. Aber das 
encoden kostet auch Power, da ist die Frage was auf einem µC effizienter 
ist.
#6684975
Lesenswert?

Stefan ⛄ F. schrieb:
> Marc H. schrieb:
>> Und wenn ich niemand sage woher die Quellen kommen und behaupte sie
>> selbst geschieben zu haben?
>
> Dann machst du dich gleich zweifach strafbar.
>
> bedenke dass die Universität, welche die GPL verfasst hat, das Recht hat
> derartige Verstöße auch ohne Auftrag des Autors zu ahnden.

Dann werde ich mich als Autor mit einem Phantasienamen schmücken
#6685040
Lesenswert?

(prx) A. K. schrieb:
> Marc H. schrieb:
>> Und wenn ich niemand sage woher die Quellen kommen
>
> Frag D-Link, die haben damit Erfahrung.
> https://gpl-violations.org/news/20060922-dlink-judgement_frankfurt/
> https://wiki.fsfe.org/Migrated/GPL%20Enforcement%20Cases

Die haben es aber deshalb rausgefunden weil dort ein Linux läuft. Aber 
wenn man es auf einem uC implementiert, wie sollen die das merken?

Zudem: verklag doch mal Frank Hotzenblotz und schau ob du erfolgreich 
damit bist.
Gast #6685070
Lesenswert?

Marc H. schrieb:
> Aber wenn man es auf einem uC implementiert, wie sollen die das merken?

Auslesen des Controllers (sofern möglich), Analyse der Firmware-Updates 
(sofern nicht verschlüsselt), Bugs der geklauten Library tauchen 
"zufälligerweise" auch in Deinem Produkt auf...

Sicher, Du kannst auch mit einem Banküberfall Erfolg haben, das macht 
die Sache aber nicht unproblematischer.

Daher besser immer die Lizenzen der verwendeten Libraries angucken und 
ggf. auf Alternativen (bis hin zur eigenen Implementation) ausweichen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren