-
-
Notifications
You must be signed in to change notification settings - Fork 495
/
ChangeLog
13110 lines (8903 loc) · 501 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
2024-12-22 Christian Beier <[email protected]>
* Doxyfile: doc: configure Doxygen for doxygen-awesome-css
2024-12-22 Christian Beier <[email protected]>
* .gitignore: .gitignore: update
2024-12-22 Christian Beier <[email protected]>
* .gitmodules, doc/doxygen-awesome-css: build: add
doxygen-awesome-css submodule
2024-12-22 Christian Beier <[email protected]>
* .gitignore: .gitignore: clean up
2024-12-22 Christian Beier <[email protected]>
* Doxyfile: docs: adapt Doxyfile to new structure
2024-12-22 Christian Beier <[email protected]>
* NEWS.md: NEWS: update
2024-12-22 Christian Beier <[email protected]>
* AUTHORS: AUTHORS: update
2023-03-05 Gaurav Ujjwal <[email protected]>
* src/libvncclient/rfbclient.c: libvncclient: Improve Extended
Clipboard encoding compatibility Many servers can't handle zlib streams created by compress()
function of zlib library. Primary bug is that these servers don't
expect inflate() to return Z_STREAM_END, which is the case for
streams created by compress(). Affected servers: LibVNCServer UltraVNC TigerVNC (<= 1.10)
2023-03-05 Gaurav Ujjwal <[email protected]>
* src/libvncclient/rfbclient.c: libvncclient: Fix text length in
extended clipboard encoding Text data sent via extended clipboard encoding is null-terminated
and this null character is counted in the length field sent to
server. E.g. for "abc", bytes {'a', 'b', 'c', '\0'} are sent with length =
4.
2023-03-05 Gaurav Ujjwal <[email protected]>
* src/libvncserver/rfbserver.c: libvncserver: Handle 'Z_STREAM_END' in zlib stream decompression According to zlib manual (https://zlib.net/manual.htm): "inflate() returns Z_OK if some progress has been made (more input
processed or more output produced), Z_STREAM_END if the end of the
compressed data has been reached and all uncompressed output has
been produced"
2024-12-19 Christian Beier <[email protected]>
* src/libvncserver/rfbserver.c: libvncserver: fix fallback Latin1
sending in rfbSendServerCutTextUTF8()
2024-11-19 Gaurav Ujjwal <[email protected]>
* include/rfb/rfb.h, src/libvncserver/main.c,
src/libvncserver/rfbserver.c: Libvncserver: Enable ExtendedClipboard
encoding only when app signals support for UTF-8 cut-text A UTF-8 capable client will usually prefer to send cut-text via
ExtendedClipboard encoding once libvncserver declares support for
it. If app doesn't assign a setXCutTextUTF8() callback, the default
handler is used which is no-op. So client-to-server clipboard
transfer will not work. Re: #638
2024-10-31 re2zero <[email protected]>
* examples/client/qt5client.cpp: examples: add mouse events handle
for Qt example Resize the widget to after client init success; and the mouse events
handle. Log: add mouse events handle for Qt example.
2024-10-20 Christian Beier <[email protected]>
* src/libvncclient/tls_openssl.c: libvncclient: tls_openssl: fix
connection setup w/ newer LibreSSL This needs the security level setting as well. re https://github.com/bk138/multivnc/issues/245
2024-09-23 Chih-Hsuan Yen <[email protected]>
* src/libvncclient/tls_gnutls.c: libvncclient: improve compatibility
with GnuTLS 3.8 Since GnuTLS 3.8, TTLS-SRP is disabled by default at compile time
[1]. As a result, connecting to a server via TLS fails with: > Warning: Failed to set TLS priority: The request is invalid.
(+SRP). > TLS handshake failed: No or insufficient priorities were set. On the other hand, TLS-SRP is apparently unused in libvncclient. It
seems TLS-SRP requires providing serveral parameters, including a
username and a password, via specific GnuTLS API [2], which I didn't
find in the codebase. [1] https://gitlab.com/gnutls/gnutls/-/merge_requests/1681 [2]
https://www.gnutls.org/manual/html_node/Authentication-using-SRP.html
2024-08-30 Christian Beier <[email protected]>
* src/libvncserver/httpd.c: libvncserver: check for invalid socket
before FD_ISSET in httpd A mere workaround/mitigation for when the socket is closed by
another thread...
2024-08-26 Christian Beier <[email protected]>
* src/libvncserver/main.c: libvncserver: mitigate FORTIFY crash in
listenerRun() With the previous commit acac77968d6ea9a8f09d7b758fe1bffac31da7eb
the select() call now times out, opening up for a race condition
where rfbShutdownSockets() would set the listening sockets to -1,
the select would time out and the FD_ISSET() call encounter a -1
socket. This is not 100% threadsafe but better than before.
2024-08-15 Christian Beier <[email protected]>
* include/rfb/rfb.h, src/libvncserver/main.c: libvncserver: fix
HTTPD for multithreaded servers This changes the select() call in listenerRun() to obey the usec
value passed in from rfbRunEventloop(), aligning the multithreaded
implementations to the single-threaded one. This in turn allows us
to handle incoming HTTP connections as well. Closes #514
2024-08-04 Christian Beier <[email protected]>
* src/libvncserver/httpd.c: libvncserver/httpd: add comment about
client handling shortcomings
2024-08-04 Christian Beier <[email protected]>
* src/common/sockets.c: common/sockets: fix logic error in WIN32
sock_set_nonblocking() impl According to
https://learn.microsoft.com/en-us/windows/win32/winsock/winsock-ioctls"The lpvInBuffer parameter points at an unsigned long (QoS), which
is nonzero if non-blocking mode is to be enabled and zero if it is
to be disabled." Closes #613
2024-07-02 Christian Beier <[email protected]>
* CMakeLists.txt: CMake: set version to 0.9.15
2024-07-02 Christian Beier <[email protected]>
* webclients/novnc: webclients: update noVNC to v1.5.0
2024-07-02 Christian Beier <[email protected]>
* NEWS.md: NEWS: update
2024-07-02 Christian Beier <[email protected]>
* AUTHORS: AUTHORS: update again
2024-07-02 Christian Beier <[email protected]>
* AUTHORS: AUTHORS: update
2024-04-03 Nicolas Morais <[email protected]>
* CMakeLists.txt, examples/client/qt5client.cpp: examples,build: add
Qt client example * CMake: Adds C++ as project language * CMake: Adds WITH_QT option to build Qt client example * Examples: Adds qt5client.cpp * CMake: adds specific way of building Qt client example * CMake: try to find Qt if needed * CMake: makes Qt not required, quiet if not found * CMake: removes CXX as language * CMake: checks if we have C++ compiler before setting standard * CMake: checks C++ compiler before setting project languages I could not find a better solution. It seems like the languages must
be set before almost everything. * CMake: check if C++ compiler defined instead of string comparison * CMake: appends CXX to languages, in a better syntax As suggested by dantti * Examples: changes to static_cast in Qt5 client example As suggested by @dantti * Examples: adds description to Qt example * Examples: Qt example can't handle new fb size * Examples: adds additional condition to build Qt example This is need to remove the following message: 'CMake Error: Cannot
determine link language for target' * CMake: adds comment about C++ example (Qt client) * Examples: adds CMake remarks to Qt client example * CMake: changes Qt5::Widgets to Qt5Widgets_LIBRARIES Just for standardization
2024-03-28 Christian Hitz <[email protected]>
* src/common/crypto_openssl.c: common/crypto_openssl: load legacy
provider in decrypt_rfbdes() Commit f135856fc3ce515afd16dbf91c44b89bab332726 added the same code
to encrypt_rfbdes() Signed-off-by: Christian Hitz <[email protected]>
2024-03-17 Christian Beier <[email protected]>
* README.md: README: remove zlibhex from supported encodings It's in fact not processed. Closes #609
2024-03-08 flyqie <[email protected]>
* README.md: README: fix links to rfbproto
2024-03-07 Christian Beier <[email protected]>
* src/libvncserver/cargs.c: libvncserver: make usage display more
discoverable
2024-03-03 Christian Beier <[email protected]>
* examples/server/README.md: build: add README for server examples
2024-03-03 Christian Beier <[email protected]>
* CMakeLists.txt, examples/server/mac.c: build: remove macOS server
example This was split off LibVNCServer and now resides in
https://github.com/LibVNC/macVNC
2024-02-03 Jeffrey Knockel <[email protected]>
* src/libvncclient/tight.c: libvncclient: fix tight decoding
endianness issues When the host byte order of a client is different from that of the
RFB pixel format it is using, we must swap bytes before delivering
them to the client. This commit addresses places where we were not
properly doing that during tight decoding, manifesting in issues in
which solid filled rectangles and gradients could be decoded to the
wrong color. As the RFB protocol says: "Swap the pixel value
according to big-endian-flag (e.g. if big-endian-flag is zero
(false) and host byte order is big endian, then swap)."
2023-12-02 Christian Beier <[email protected]>
* CMakeLists.txt: CMake: log when libjpeg-turbo was found via header
file
2023-11-25 Christian Beier <[email protected]>
* .clang-format: build: add first .clang-format re #395
2023-11-24 Christian Beier <[email protected]>
* CMakeLists.txt, cmake/Modules/FindLibSSH2.cmake,
examples/client/sshtunnel.c: build,examples: use libsshtunnel for
ssh tunnel example ...instead of libssh2 directly and lots of application logic.
2023-11-19 Sérgio Basto <[email protected]>
* CMakeLists.txt: build: use FFMPEG_INCLUDE_DIRS ... for building vnc2mpg example.
2023-11-17 Christian Beier <[email protected]>
* README.md: README: document where to find libwinpthread-1.dll re #482
2023-08-30 Christian Beier <[email protected]>
* src/libvncserver/main.c: Revert "libvncserver: detach client
thread before ending it" This reverts commit 8560a5a72d76fc3ab3484ca41f604116807f34e8. It caused several crashes when ending a server: client threads would
sometimes linger around until after the server was stopped and its
rfbScreen internals free()ed, with these client threads trying to
access rfbScreen and friends: ð£. Reopens #570
2023-08-22 Christian Beier <[email protected]>
* src/libvncserver/main.c: libvncserver: make client names in
rfbScreenCleanup() less cryptic
2023-08-16 Christian Beier <[email protected]>
* test/blooptest.c: test: remove unused blooptest Already in server/examples.
2023-08-05 Christian Beier <[email protected]>
* src/libvncserver/main.c: libvncserver: detach client thread before
ending it Before, we were joining the thread in rfbShutdownServer(), which
cleaned up after its resources in that case, but there was no
cleanup when a client disconnected on its own, as noted in #570. Closes #570. Builds upon and closes #574.
2023-08-05 Christian Beier <[email protected]>
* include/rfb/threading.h: common/threading: add THREAD_DETACH
2023-07-07 Christian Beier <[email protected]>
* README.md: README: add pointer to chat and issues
2023-07-04 Christian Beier <[email protected]>
* include/rfb/rfbclient.h, src/libvncclient/rfbclient.c,
src/libvncclient/vncviewer.c: libvncclient: add functionality to set
what a client is requesting With this new API, the caller can tell the client to only request a
subset of the remote framebuffer during incremental framebuffer
requests.
2023-07-04 Christian Beier <[email protected]>
* examples/client/SDLvncviewer.c: examples/client: don't set
updateRect in SDLvncviewer This is already done by the library.
2023-07-04 Christian Beier <[email protected]>
* .github/workflows/ci.yml: .github: fix MacOS CI re https://github.com/orgs/Homebrew/discussions/4612
2023-07-04 Christian Beier <[email protected]>
* include/rfb/rfbclient.h: libvncclient: change comment to reflect
file rename
2023-07-03 Christian Beier <[email protected]>
* src/libvncclient/rfbclient.c: libvncclient: de-dup client width
and height setting code
2023-06-26 Christian Beier <[email protected]>
* examples/server/1instance.c: examples/server/1instance: remove
unused file
2023-06-22 Christian Beier <[email protected]>
* src/libvncserver/sockets.c: libvncserver: null extension data
after closing in rfbCloseClient If the function 'close' points to does a free() _and_ checks for
NULL (as is the case for rfbTightExtensionClientClose()), this
prevents double free()s. If the function 'close' points to does not do a free(), nulling out
the data after closing out should (semantically) not do harm. Closes #585
2023-05-25 Mingjie Shen <[email protected]>
* examples/server/pnmshow.c, examples/server/pnmshow24.c,
test/bmp.c: examples,test: fix integer overflows in calculating
alloc sizes Allocating memory with a size controlled by an external user can
result in integer overflow.
2023-05-25 JorisHansMeijer <[email protected]>
* src/libvncserver/rfbserver.c: libvncserver: fix memory leak on
webclient disconnect The webocket context was not free'd on client disconnect.
2023-05-19 Mingjie Shen <[email protected]>
* examples/client/SDLvncviewer.c: examples: check return values of
malloc for null
2023-05-20 Mingjie Shen <[email protected]>
* test/tjbench.c: test: fix offset used before range check This use of offset 'i' should follow the range check.
2023-05-20 Mingjie Shen <[email protected]>
* test/tjbench.c: test: fix comparison that is always false If srcsize is an unsigned long, then the comparison
(srcsize=ftell(file))<0 is always false.
2023-05-20 Mingjie Shen <[email protected]>
* examples/server/pnmshow.c, examples/server/pnmshow24.c,
test/bmp.c: examples,test: check that calls to 'sscanf' write to
output vars
2023-05-16 Christian Beier <[email protected]>
* src/libvncclient/vncviewer.c: libvncclient: close listening IPv6
sockets in rfbClientCleanup() too
2023-04-03 Volodymyr Samokhatko <[email protected]>
* src/libvncserver/cursor.c: libvncserver: fix vertical blank stripe
on cursor converted from alpha source
2023-02-20 Nicolas Morais <[email protected]>
* examples/server/x11.c: examples: fix visual artifacts with Tight
encoding in x11 server * Sets bpp to 4 in X11 Server example * Undoes changing of types from signed int to unsigned --------- Co-authored-by: Nicolas Morais <[email protected]>
2023-02-17 Tobias Junghans <[email protected]>
* src/libvncclient/rfbclient.c: libvncclient: cast buf when calling
GotXCutTextUTF8() buf is an unsigned char pointer while GotXCutTextUTF8() takes a char
pointer.
2023-02-17 Tobias Junghans <[email protected]>
* src/libvncclient/rfbclient.c: libvncclient: fix type of csz zlib's compress() takes a pointer to a uLong variable. uLong may be
32 bit only while size_t is 64 bit on 64 bit platforms. This causes
a compiler warning/error and potentially UB.
2023-02-13 Christian Beier <[email protected]>
* README.md: README: fix links to examples
2023-02-13 Christian Beier <[email protected]>
* src/libvncclient/rfbclient.c: libvncclient: make client callback
indicative for Extended Clipboard A client which has GotXCutTextUTF8 set indicates it can handle UTF8
cuttext from the server. Older clients will not have this set and
thus not opt in for UTF8 (and depending on the server
implementation, thus not opt out from Latin1, resulting in no
cuttext from server at all for them). re
https://github.com/LibVNC/libvncserver/pull/552#issuecomment-1427874738
2023-02-13 Christian Beier <[email protected]>
* NEWS.md: NEWS: update with latest changes
2023-02-13 Christian Beier <[email protected]>
* CMakeLists.txt, src/libvncclient/{rfbproto.c => rfbclient.c}:
build: rename libvnclient/rfbproto.c to libvncclient/rfbclient.c
2023-01-08 Christian Beier <[email protected]>
* CMakeLists.txt, {rfb => include/rfb}/default8x16.h, {rfb =>
include/rfb}/keysym.h, {rfb => include/rfb}/rfb.h, {rfb =>
include/rfb}/rfbclient.h, {rfb => include/rfb}/rfbconfig.h.cmakein,
{rfb => include/rfb}/rfbproto.h, {rfb => include/rfb}/rfbregion.h,
{rfb => include/rfb}/threading.h, {common => src/common}/base64.c,
{common => src/common}/base64.h, {common => src/common}/crypto.h,
{common => src/common}/crypto_included.c, {common =>
src/common}/crypto_libgcrypt.c, {common =>
src/common}/crypto_openssl.c, {common => src/common}/d3des.c,
{common => src/common}/d3des.h, {common => src/common}/lzoconf.h,
{common => src/common}/lzodefs.h, {common => src/common}/minilzo.c,
{common => src/common}/minilzo.h, {common =>
src/common}/sha-private.h, {common => src/common}/sha.h, {common =>
src/common}/sha1.c, {common => src/common}/sockets.c, {common =>
src/common}/sockets.h, {common => src/common}/turbojpeg.c, {common
=> src/common}/turbojpeg.h, {common => src/common}/vncauth.c,
{common => src/common}/zywrletemplate.c, {libvncclient =>
src/libvncclient}/corre.c, {libvncclient =>
src/libvncclient}/cursor.c, {libvncclient =>
src/libvncclient}/hextile.c, {libvncclient =>
src/libvncclient}/libvncclient.pc.cmakein, {libvncclient =>
src/libvncclient}/listen.c, {libvncclient =>
src/libvncclient}/rfbproto.c, {libvncclient =>
src/libvncclient}/rre.c, {libvncclient => src/libvncclient}/sasl.c,
{libvncclient => src/libvncclient}/sasl.h, {libvncclient =>
src/libvncclient}/sockets.c, {libvncclient =>
src/libvncclient}/tight.c, {libvncclient =>
src/libvncclient}/tls.h, {libvncclient =>
src/libvncclient}/tls_gnutls.c, {libvncclient =>
src/libvncclient}/tls_none.c, {libvncclient =>
src/libvncclient}/tls_openssl.c, {libvncclient =>
src/libvncclient}/trle.c, {libvncclient =>
src/libvncclient}/ultra.c, {libvncclient =>
src/libvncclient}/vncviewer.c, {libvncclient =>
src/libvncclient}/zlib.c, {libvncclient =>
src/libvncclient}/zrle.c, {libvncserver =>
src/libvncserver}/auth.c, {libvncserver =>
src/libvncserver}/cargs.c, {libvncserver =>
src/libvncserver}/corre.c, {libvncserver =>
src/libvncserver}/cursor.c, {libvncserver =>
src/libvncserver}/cutpaste.c, {libvncserver =>
src/libvncserver}/draw.c, {libvncserver =>
src/libvncserver}/font.c, {libvncserver =>
src/libvncserver}/hextile.c, {libvncserver =>
src/libvncserver}/httpd.c, {libvncserver =>
src/libvncserver}/libvncserver.pc.cmakein, {libvncserver =>
src/libvncserver}/main.c, {libvncserver =>
src/libvncserver}/private.h, {libvncserver =>
src/libvncserver}/rfbregion.c, {libvncserver =>
src/libvncserver}/rfbserver.c, {libvncserver =>
src/libvncserver}/rfbssl.h, {libvncserver =>
src/libvncserver}/rfbssl_gnutls.c, {libvncserver =>
src/libvncserver}/rfbssl_none.c, {libvncserver =>
src/libvncserver}/rfbssl_openssl.c, {libvncserver =>
src/libvncserver}/rre.c, {libvncserver =>
src/libvncserver}/scale.c, {libvncserver =>
src/libvncserver}/scale.h, {libvncserver =>
src/libvncserver}/selbox.c, {libvncserver =>
src/libvncserver}/sockets.c, {libvncserver =>
src/libvncserver}/stats.c, {libvncserver =>
src/libvncserver}/tableinit24.c, {libvncserver =>
src/libvncserver}/tableinitcmtemplate.c, {libvncserver =>
src/libvncserver}/tableinittctemplate.c, {libvncserver =>
src/libvncserver}/tabletrans24template.c, {libvncserver =>
src/libvncserver}/tabletranstemplate.c, {libvncserver =>
src/libvncserver}/tight.c, {libvncserver =>
src/libvncserver}/tightvnc-filetransfer/filelistinfo.c,
{libvncserver =>
src/libvncserver}/tightvnc-filetransfer/filelistinfo.h,
{libvncserver =>
src/libvncserver}/tightvnc-filetransfer/filetransfermsg.c,
{libvncserver =>
src/libvncserver}/tightvnc-filetransfer/filetransfermsg.h,
{libvncserver =>
src/libvncserver}/tightvnc-filetransfer/handlefiletransferrequest.c
, {libvncserver =>
src/libvncserver}/tightvnc-filetransfer/handlefiletransferrequest.h
, {libvncserver =>
src/libvncserver}/tightvnc-filetransfer/rfbtightproto.h,
{libvncserver =>
src/libvncserver}/tightvnc-filetransfer/rfbtightserver.c,
{libvncserver => src/libvncserver}/translate.c, {libvncserver =>
src/libvncserver}/ultra.c, {libvncserver =>
src/libvncserver}/websockets.c, {libvncserver =>
src/libvncserver}/ws_decode.c, {libvncserver =>
src/libvncserver}/ws_decode.h, {libvncserver =>
src/libvncserver}/zlib.c, {libvncserver =>
src/libvncserver}/zrle.c, {libvncserver =>
src/libvncserver}/zrleencodetemplate.c, {libvncserver =>
src/libvncserver}/zrleoutstream.c, {libvncserver =>
src/libvncserver}/zrleoutstream.h, {libvncserver =>
src/libvncserver}/zrlepalettehelper.c, {libvncserver =>
src/libvncserver}/zrlepalettehelper.h, {libvncserver =>
src/libvncserver}/zrletypes.h: build: centralise sources in src dir,
move rfb to include dir
2023-02-13 Christian Beier <[email protected]>
* examples/client/SDLvncviewer.c: examples: wire up utf-8 clipboard
handling in SDLVncviewer
2023-02-13 Christian Beier <[email protected]>
* libvncclient/rfbproto.c, rfb/rfbclient.h: libvncclient: rework
utf-8 clipboard API to resemble libvncserver one Public LibVNCServer API has * `rfbSendServerCutTextUTF8(rfbScreenInfoPtr rfbScreen,char *str,
int len, char *fallbackLatin1Str, int latin1Len);` * and `typedef void (*rfbSetXCutTextUTF8ProcPtr) (char* str,int len,
struct _rfbClientRec* cl);` which is wired up as `setXCutTextUTF8`, i.e. it's got a unicode sender w/ Latin1 fallback and a dedicated
unicode receiver. This commit reworks the libvncclient API to have a dedicated UTF8
clipboard sending function and a dedicated on-receive callback. Applications can use those functions instead of changing state with
some rfbClient member.
2023-02-13 Christian Beier <[email protected]>
* SECURITY.md: SECURITY: hint at at GitHub form
2023-02-11 Christian Beier <[email protected]>
* webclients/novnc: webclients: update noVNC to v1.4.0
2023-02-06 kai <[email protected]>
* libvncclient/rfbproto.c, rfb/rfbclient.h: libvncclient: add utf-8
clipboard support Closes #552
2023-01-30 Christian Beier <[email protected]>
* .github/workflows/ci.yml: .github: remove fuzzing_build re
https://github.com/LibVNC/libvncserver/pull/556#issuecomment-1408127231
2023-01-30 Christian Beier <[email protected]>
* test/fuzz_server.c: test: document fuzz_server usage, by OSS-Fuzz
and locally re
https://github.com/LibVNC/libvncserver/pull/556#issuecomment-1408127231
2023-01-29 Catena cyber <[email protected]>
* .github/workflows/cifuzz.yml: .github: add CIFuzz workflow This is
https://google.github.io/oss-fuzz/getting-started/continuous-integration/* ci: add CIFuzz workflow * 30 seconds of fuzzing
2023-01-26 Catena cyber <[email protected]>
* libvncserver/tableinittctemplate.c: libvncserver: check before
shifting in table init As it can turn into undefined behavior like shift exponent 32 is too
large for 32-bit type 'uint32_t'
2023-01-25 Catena cyber <[email protected]>
* libvncserver/tableinittctemplate.c: libvncserver: add an explicit
cast before shift Shifting a signed integer can result in undefined behavior.
2023-01-25 kai <[email protected]>
* libvncclient/sasl.c: libvncclient: plug more memleaks in SASL
handling
2023-01-24 Christian Beier <[email protected]>
* .github/workflows/ci.yml: .github: install some build deps for Win
CI, remove useless runs
2023-01-23 Gaurav Ujjwal <[email protected]>
* common/crypto_openssl.c: common/crypto_openssl: pad DH key buffers
with leading zeros for smaller keys Re: https://github.com/LibVNC/libvncserver/issues/493 Re:
https://github.com/bk138/multivnc/issues/202
2023-01-22 Christian Beier <[email protected]>
* examples/client/sshtunnel.c: examples/client/sshtunnel: include
headers req'd by some OS's ...namely FreeBSD where accept requires <sys/types.h> and
<sys/socket.h> and close requires <unistd.h>. Closes #548
2023-01-21 Christian Beier <[email protected]>
* libvncclient/vncviewer.c: libvncclient: include header for
tjDestroy()
2022-09-29 Obermayr Johann <[email protected]>
* libvncclient/cursor.c, libvncclient/vncviewer.c: libvncclient: fix
possible memory leak in some parts of the code it was possible to lose track of
resources. Cleaning them up fixes the possibility for memory leaks.
2023-01-20 Peter V <[email protected]>
* common/crypto_openssl.c: common/crypto_openssl: fix build with
openssl >= 3.0.0 DES encryption is considered legacy and is no longer available by
default. To use it legacy provider must be load.
2023-01-18 Christian Beier <[email protected]>
* .github/workflows/ci.yml: .github: provide a ctest configuration needed for Windows
2023-01-18 Christian Beier <[email protected]>
* .github/workflows/ci.yml: .github: split test prep into own step
to only run it for ubuntu
2023-01-18 Christian Beier <[email protected]>
* .github/workflows/ci.yml: .github: add first bare Windows CI
2023-01-18 Plan C <[email protected]>
* examples/server/x11.c: examples: fix type mismatch in x11 server
example
2023-01-11 Plan C <[email protected]>
* .gitignore, CMakeLists.txt, examples/server/x11.c: examples: add
an XCB-based X11 example * examples/x11vncserver: add X11 example * examples/x11vncserver: add comments abot compiling * add `x11vncserver.c` in the CMake build system * use `FindX11.cmake` and clear `NOTFOUND` * add some comments * add some comments * rename x11vncserver to x11 * Need CMake 3.24.0 to find X11 libraries * Need CMake 3.24.0 to find XCB libraries
2023-01-08 Catena cyber <[email protected]>
* .github/workflows/ci.yml, CMakeLists.txt,
libvncserver/rfbserver.c, libvncserver/sockets.c,
test/fuzz_server.c: test: add one first fuzz target re google/oss-fuzz#5137 for oss-fuzz integration
2023-01-08 Christian Beier <[email protected]>
* CMakeLists.txt, {client_examples =>
examples/client}/SDLvncviewer.c, {client_examples =>
examples/client}/backchannel.c, {client_examples =>
examples/client}/gtkvncviewer.c, {client_examples =>
examples/client}/ppmtest.c, {client_examples =>
examples/client}/sshtunnel.c, {client_examples =>
examples/client}/vnc2mpg.c, examples/{ => server}/1instance.c,
examples/{ => server}/androidvncserver.c, examples/{ =>
server}/backchannel.c, examples/{ => server}/blooptest.c,
examples/{ => server}/camera.c, examples/{ =>
server}/colourmaptest.c, examples/{ => server}/cursors.c,
examples/{ => server}/example.c, examples/{ =>
server}/filetransfer.c, examples/{ => server}/fontsel.c, examples/{
=> server}/mac.c, examples/{ => server}/pnmshow.c, examples/{ =>
server}/pnmshow24.c, examples/{ => server}/radon.h, examples/{ =>
server}/regiontest.c, examples/{ => server}/repeater.c, examples/{
=> server}/rotate.c, examples/{ => server}/rotatetemplate.c,
examples/{ => server}/simple.c, examples/{ => server}/simple15.c,
examples/{ => server}/storepasswd.c, examples/{ => server}/vncev.c,
examples/{ => server}/zippy.c: build: move client and server
examples to one examples dir
2023-01-08 Christian Beier <[email protected]>
* CMakeLists.txt, libvncclient.pc.cmakein =>
libvncclient/libvncclient.pc.cmakein, libvncserver.pc.cmakein =>
libvncserver/libvncserver.pc.cmakein: build: remove pkg-config
templates out of root dir
2022-12-18 Christian Beier <[email protected]>
* ChangeLog: Update ChangeLog for 0.9.14
2022-12-18 Christian Beier <[email protected]>
* README.md: README: document Changelog update tool
2022-12-18 Christian Beier <[email protected]>
* NEWS.md: NEWS: add intro and highlights of v0.9.14 re #542
2022-12-18 Christian Beier <[email protected]>
* README.md: README: update section about server-side scaling ...as this has been tested now with UltraVNC. Closes #373
2022-12-18 Christian Beier <[email protected]>
* README.md: README: mention needed client msg for server-side
scaling re #373
2022-12-18 Christian Beier <[email protected]>
* CMakeLists.txt: CMake: set version to 0.9.14 re #542
2022-12-04 Christian Beier <[email protected]>
* webclients/novnc: webclients: update noVNC to v1.3.0
2022-12-04 Christian Beier <[email protected]>
* README.md: README: update release guidelines
2022-12-04 Christian Beier <[email protected]>
* README.md: README: fix reversed RFB operation logic
2022-12-04 Christian Beier <[email protected]>
* README.md: README: list some 'slow link' strategies re #373
2022-12-04 Christian Beier <[email protected]>
* rfb/rfb.h: docs: add TOC to LibVNCServer doxygen docu
2022-12-03 Christian Beier <[email protected]>
* NEWS.md: NEWS: update for v0.9.14
2022-12-02 Christian Beier <[email protected]>
* README.md: README: add one more release checklist item
2022-12-02 Christian Beier <[email protected]>
* AUTHORS: AUTHORS: add new contributors since v0.9.13
2022-11-13 Christian Beier <[email protected]>
* CMakeLists.txt, common/sockets.c, common/sockets.h,
libvncclient/sockets.c, rfb/rfbconfig.h.cmakein: Revert
"libvncclient: use poll() if available" This reverts commit 993df68933db378ba862af05809d6e4938333d6e. The new poll() functionality broke connecting a LibVNCServer-based
server to an RFB repeater, so reverting this for now. Closes https://github.com/bk138/droidVNC-NG/issues/109
2022-11-03 Christian Beier <[email protected]>
* cmake/Modules/FindLibSSH2.cmake: build: add FindLibSSH2.cmake Closes #539
2022-11-03 Christian Beier <[email protected]>
* .gitignore: .gitignore: don't ignore *.cmake re #539
2022-10-05 Christian Beier <[email protected]>
* README.md: README: add release checklist
2022-10-05 Christian Beier <[email protected]>
* .travis.yml: TravisCI: remove
2022-10-05 Christian Beier <[email protected]>
* README.md: README: exchange TravisCI badge with GitHub one
2022-10-05 Christian Beier <[email protected]>
* .github/workflows/ci.yml: .github: port TravisCI to GitHub
workflow
2022-10-05 Christian Beier <[email protected]>
* cmake/Toolchain-cross-mingw32-linux.cmake: CMake: default to
64-bit wine in toolchain file
2022-10-05 Christian Beier <[email protected]>
* common/sockets.c: common: fix sockets compilation w/ XCode13
2022-09-22 Tobias Junghans <[email protected]>
* libvncserver/tight.c: tight: fix OOB memory accesses As of 7124b5fbcf0df8db4d3f73023d77af6ea56409e7 the maximum rect
width and size are equal for every compression level so we can
easily save the LUT entries by using constants instead. This fixes OOB memory accesses in rfbNumCodedRectsTight() when being
called by rfbSendFramebufferUpdate() before SendRectEncodingTight()
is being called the first time (which limits cl->tightCompressLevel
to the size of tightConf).
2022-09-22 Tobias Junghans <[email protected]>
* rfb/rfb.h: rfb: remove unused variable declaration
2022-09-24 Christian Beier <[email protected]>
* common/sockets.c: common: fix typo in sock_set_nonblocking() Closes #535
2022-08-23 Tobias Junghans <[email protected]>
* CMakeLists.txt, common/sockets.c, common/sockets.h,
libvncclient/sockets.c, rfb/rfbconfig.h.cmakein: libvncclient: use
poll() if available select() does not work with file descriptors > 1024 so use the more
modern poll() function if available.
2022-08-11 Maksym Sobolyev <[email protected]>
* libvncserver/cursor.c: libvncserver: ensure cursorMutex is locked
before cursor access This fixes multiple crashes with VirtualBox 6.1.x running Ubuntu
22.04 guest when remote cursor is enabled (TightVNC client).
2022-08-11 Christian Beier <[email protected]>
* libvncserver/httpd.c, libvncserver/sockets.c: libvncserver: clear
fd sets before closing sockets This caused fdsan aborts due to
0c9e68a9cc0abd8eda232bad169a62ff352fc571.
2022-08-11 Christian Beier <[email protected]>
* libvncserver/sockets.c: libvncserver: make rfbConnectToTCPAddr()
time out ...using rfbMaxClientWait for now. Closes #532
2022-08-11 Christian Beier <[email protected]>
* CMakeLists.txt, common/sockets.c, common/sockets.h,
libvncclient/sockets.c, libvncserver/sockets.c: common: move here
two socket helper functions from server and client re #532
2022-08-11 Christian Beier <[email protected]>
* Doxyfile: docs: don't show internals in Doxygen-docs
2022-08-09 Christian Beier <[email protected]>
* libvncclient/rfbproto.c: libvncclient: prevent acting on
ExtendedDesktopSize with 0 dimensions This is sent by UltraVNC 1.3.2 at least.
2022-08-05 Christian Beier <[email protected]>
* libvncserver/main.c: libvncserver: prevent cursor drawing during
framebuffer exchange Fixes segfaults in rfbHideCursor(), maybe elsewhere, too.
2022-08-05 Christian Beier <[email protected]>
* libvncserver/main.c: libvncserver: lock out client reads during
framebuffer exchange Closes #435
2022-08-05 Maxim Devaev <[email protected]>
* CMakeLists.txt, libvncclient/tls_gnutls.c: libvncclient: use
gnutls_handshake_set_timeout()
2022-08-05 Christian Beier <[email protected]>
* libvncserver/tight.c: libvncserver/tight: avoid division-by-zero
2022-08-04 Christian Beier <[email protected]>
* rfb/rfbproto.h: rfb/rfbproto: extend rfbCloseSocket() to prevent
double closes Specifically on Android newer 11, this would cause aborts by the
fdsan checker, see
https://developer.android.com/about/versions/11/behavior-changes-all#fdsanIt's also generally safer to mark a closed fd as closed as to not
try to re-use it.
2022-08-04 Maxim Devaev <[email protected]>
* libvncclient/tls_gnutls.c: libvncclient: rfbAnonTLSPriority =
"NORMAL:+ANON-ECDH:+ANON-DH" (#530) I.e. added ANON-ECDH just for better compatibility. Taken from
TigerVNC.
2022-08-04 Maxim Devaev <[email protected]>
* libvncclient/rfbproto.c, libvncclient/tls_gnutls.c,
libvncclient/tls_openssl.c: libvncclient: allow non-encrypted
subauth methods inside VeNCrypt (#529) Following https://github.com/LibVNC/libvncserver/issues/458 rfbNoAuth and rfbVncAuth are not actually part of VeNCrypt, however
it is important to support them to ensure better compatibility.
When establishing a connection, the client does not know whether the
server supports encryption, and always prefers VeNCrypt if enabled
Next, if encryption is not available on the server, the connection
will fail. Since the RFB doesn't have any downgrade methods in case
of failure, a client that does not support unencrypted VeNCrypt
methods will never be able to connect. rfbVeNCryptPlain is also supported for better compatibility. The RFB specification also considers any ordinary subauths are
valid, which legitimizes this solution: -
https://github.com/rfbproto/rfbproto/blob/master/rfbproto.rst#vencrypt> any of the normal VNC security types (except VeNCrypt) may be sent For security and backward compatibility reasons, encrypted
connections take precedence over unencrypted ones
2022-08-03 Christian Beier <[email protected]>
* libvncserver/main.c, libvncserver/sockets.c, rfb/rfb.h:
libvncserver: indicate client thread end by other means than sock v2 This is a less intrusive version of
336fc84ed055577473df738239dc342426a1ba08 Before, the client-to-server thread would end when the client's
socket was set to RFB_INVALID_SOCKET. However, there's a race
condition where the client's socket can be set to invalid while the
client-to-server thread is in select(), causing
https://github.com/bk138/droidVNC-NG/issues/8. Fix this by: * introducing an additional RFB_SHUTDOWN state for clients * use this as an end condition in the client-to-server thread
instead of the socket * move the self-pipe notification to rfbCloseClient from rfbShutdownServer, but only pthread_join() in rfbShutdownServer
2022-07-24 Christian Beier <[email protected]>
* libvncserver/main.c, libvncserver/sockets.c, rfb/rfb.h: Revert
"libvncserver: indicate client thread end by other means than
socket" This reverts commit 336fc84ed055577473df738239dc342426a1ba08. Waiting for the client-to-server thread to finish in
rfbCloseClient() caused deadlocks in production environments. Revert the patch and redo in a little bit less intrusive way.
2022-07-18 Christian Beier <[email protected]>
* libvncserver/main.c, libvncserver/sockets.c, rfb/rfb.h:
libvncserver: indicate client thread end by other means than socket Before, the client-to-server thread would end when the client's
socket was set to RFB_INVALID_SOCKET. However, there's a race
condition where the client's socket can be set to invalid while the
client-to-server thread is in select(), causing
https://github.com/bk138/droidVNC-NG/issues/8. Fix this by: * introducing an additional RFB_SHUTDOWN state for clients * use this as an end condition in the client-to-server thread
instead of the socket * move the self-pipe notification to rfbCloseClient from rfbShutdownServer.
2022-07-18 Christian Beier <[email protected]>
* libvncserver/rfbserver.c: libvncserver: ensure refCount==0 when
disconnecting other clients The idea is taken from rfbShutdownServer().
2022-07-14 Tobias Junghans <[email protected]>
* libvncclient/rfbproto.c: libvncclient: add missing return value to
SendExtDesktopSize
2022-07-14 Christian Beier <[email protected]>
* examples/example.c: examples/blooptest: add a way of shutting down
from the main thread
2022-07-05 Christian Beier <[email protected]>
* CMakeLists.txt, client_examples/sshtunnel.c: client_examples: add
SSH tunneling example using libssh2
2022-06-23 badda71 <[email protected]>
* libvncclient/sockets.c: libvncclient: replace gethostbyname() with
getaddrinfo() man gethostbyname: "The gethostbyname*(), gethostbyaddr*(),
herror(), and hstrerror() functions are obsolete. Applications
should use getaddrinfo(3), getnameinfo(3), and gai_strerror(3)
instead." Furthermore, the man page states that `gethostbyname()` is
MT-Unsafe, probably due to the fact that it retuns a pointer to
static data. Thus, by using `getaddrinfo()`, we improve the
multithreading soundness of LibVNCClient.
2022-06-16 Christian Beier <[email protected]>
* client_examples/ppmtest.c: client_examples/ppmtest: only handle
message if wait yielded one This is more correct and in line with the other examples.
2022-05-12 Fabrice Fontaine <[email protected]>
* common/crypto_openssl.c: common/crypto_openssl.c: fix build with
libressl >= 3.5.0 (#522) Fix the following build failure with libressl >= 3.5.0:
/nvmedata/autobuild/instance-26/output-1/build/libvncserver-0.9.13/common/crypto_openssl.c: In function 'dh_generate_keypair':
/nvmedata/autobuild/instance-26/output-1/build/libvncserver-0.9.13/common/crypto_openssl.c:149:7: error: dereferencing pointer to incomplete type 'DH' {aka 'struct dh_st'} 149 | dh->p = BN_bin2bn(prime, keylen, NULL); | ^~ Fixes: -
http://autobuild.buildroot.org/results/49b3940b9d0432cb5fb0c5d22dfa017b18c6e233Signed-off-by: Fabrice Fontaine <[email protected]>
2022-05-10 Christian Beier <[email protected]>
* README.md: README: document transport and encryption support
2022-05-09 Christian Beier <[email protected]>
* rfb/rfb.h: rfb/rfb.h: increase UPDATE_BUF_SIZE by 2768 bytes Simply raise the default to 32768 which is not an awful lot of an
increase and should not hurt the embedded guys. If someone needs more, we can still go down the malloc() route and
make the buffer size configurable, but leave this to the users to
request and KISS for now. Closes #521
2022-05-08 Christian Beier <[email protected]>
* examples/repeater.c: examples: extend repeater docs with a HOWTO
for an UltraVNC repeater Closes #87
2022-05-07 Christian Beier <[email protected]>
* examples/repeater.c: examples: fix repeater rfbInitServer(), which zeros out all the server's fds, was called
after the client was connected, essentially erasing info about the
just-made connection. Call it before connecting out so that the new client's info
persists. Closes #465
2022-04-28 Antenore Gatta <[email protected]>
* client_examples/vnc2mpg.c: client_examples: explicitly include
avcodec.h for ffmpeg example Build fails with the master branch of FFmpeg with these kinds of
errors: ``` ../client_examples/vnc2mpg.c:55:5: error: unknown type name
âAVCodecContextâ AVCodecContext *enc; ^~~~~~~~~~~~~~ ``` This patch adds `libavcodec/avcodec.h` in vnc2mpg.c
2022-04-27 Christian Beier <[email protected]>
* README.md: README: add a commercial use FAQ Closes #437
2022-04-27 Christian Beier <[email protected]>
* TODO.md: TODO: delete and create/update issues #515, #396, #516, #517, #518, #519
2022-04-19 Christian Beier <[email protected]>
* rfb/rfbclient.h: rfb/rfbclient: document new screen member re #511, #341
2022-04-19 Marco Fortina <[email protected]>
* client_examples/SDLvncviewer.c, libvncclient/rfbproto.c,
libvncclient/vncviewer.c, rfb/rfbclient.h: libvncclient: add support
for SetDesktopSize This adds support for
https://github.com/rfbproto/rfbproto/blob/master/rfbproto.rst#setdesktopsize in libvncclient.Closes #341, closes #452.
2022-04-16 Alex Converse <[email protected]>
* test/encodingstest.c: test/encodingstest: fix some ASAN issues - rfbClientCleanup which is automatically in some failure scenarios tries to interepret client data as rfbClientData - sizeof char pointer vs array
2022-04-14 Alex Converse <[email protected]>
* libvncserver/translate.c: libvncserver: fix pixel format equality
for different values of trueColour Compare boolean truthiness only. The spec implies that only zero vs
non-zero matters.
https://github.com/rfbproto/rfbproto/blob/master/rfbproto.rst#setpixelformat
2022-04-10 maxnet <[email protected]>
* libvncserver/sockets.c, libvncserver/websockets.c: libvncserver:
fix buffer overflow in webSocketsEncodeHybi() The websocket code has internal buffers that expect data not to be
larger than UPDATE_BUF_SIZE - Modify rfbWriteExact() to split larger writes in multiple frames. - Let webSocketsEncodeHybi() return -1 if somebody else tries to pass a too large buffer to it. (While in the libvncserver code rfbWriteExact() is the only function that calls websocketEncode(), it is exposed by rfb.h, so could theoretically also be called from application code) Closes #484 Signed-off-by: Floris Bos <[email protected]>
2022-04-10 maxnet <[email protected]>
* libvncserver/main.c, libvncserver/private.h,
libvncserver/rfbserver.c, libvncserver/tight.c,
libvncserver/zlib.c, rfb/rfb.h: libvncserver: remove thread local
storage in Tight and Zlib handling ...to prevent artifacts on ARM platform (#490) * zlib encoding: remove use of TLS variables Use the beforeEncBuf/afterEncBuf members of rfbClientRec that are
used by multiple encodings as buffers, instead of TLS variables. Fixes memory leak in which buffers were never free'd on client
disconnect. (rfbZlibCleanup() never did anything, as it was not
called from the client output thread in which the buffer's where
malloc'ed. Cannot see the value of TLS variables from other
threads. beforeEncBuf/AfterEncBuf does get freed by existing code in
rfbClientConnectionGone() ) Signed-off-by: Floris Bos <[email protected]> * tightvnc encoding: remove use of TLS variables - Moves some TLS variables to rfbClientRec. Palette to stack. - Prevents artifacts on ARM platform Closes #363 Closes #442 Closes #451 - Fixes memory leak in which buffers are not free'd after client disconnect. Signed-off-by: Floris Bos <[email protected]> * Tight: make CodeQL happy Co-authored-by: Christian Beier <[email protected]>
2022-04-06 Christian Beier <[email protected]>
* libvncserver/tightvnc-filetransfer/handlefiletransferrequest.c:
libvncserver: fix Tight file transfer root for Android
2022-04-06 Christian Beier <[email protected]>
* libvncserver/tightvnc-filetransfer/rfbtightserver.c: libvncserver:
init Tight file transfer also if no cmdline args there
2022-04-06 Christian Beier <[email protected]>
* examples/filetransfer.c: examples: register extension before
rfbGetScreen()