Commit Graph

3767 Commits

Author SHA1 Message Date
Armin Novak cc65f5db31 [client,x11] fixed clipboard data cache 2023-03-05 17:55:28 +01:00
Armin Novak f7682a5e79 [client,common] fix fuse inode creation, add logging 2023-03-05 17:55:28 +01:00
Armin Novak a5fb3ad40a [client,common] fixed fuse linking 2023-03-05 17:55:28 +01:00
Armin Novak 7722961fcc [client,common] simplify file clipboard API 2023-03-05 17:55:28 +01:00
Armin Novak e3099fbbd0 [client,common] fixed compile without fuse 2023-03-05 17:55:28 +01:00
Armin Novak 46f1d141c1 [client,common] fixed winpr clipboard locking 2023-03-05 17:55:28 +01:00
Armin Novak 6d2e7b91c7 [client,common] cliprdr file copy client to server
* better logging of failures
* do not keep FILE* open to avoid running out of file handles
2023-03-05 17:55:28 +01:00
Armin Novak bfea14a5b1 [cliprdr] deactivate local file paste if not supported
if the file clipboard was compiled without FUSE do not announce the
availability.
2023-03-05 17:55:28 +01:00
Armin Novak 0fb242da7b [client,x11] properly initialize file clipboard 2023-03-05 17:55:28 +01:00
Armin Novak b526078c3c [client,wayland] add file clipboard 2023-03-05 17:55:28 +01:00
Armin Novak a3f6e3603c [client,common] fuse clipboard server to client 2023-03-05 17:55:28 +01:00
Armin Novak 39c06a4683 [client,common] fix file copy client to server 2023-03-05 17:55:28 +01:00
Armin Novak 8e7619502b [client,common] refactored fuse clipboard
* use proper permissions (no read/write for group and others)
* handle streamID for multiple simultaneous copy/paste operations
* properly handle requests with a queue
2023-03-05 17:55:28 +01:00
Armin Novak a230c6b1dc [client,cliprdr] use hash table for remote streams 2023-03-05 17:55:28 +01:00
Armin Novak ba128f4661 [client] move file clipboard to client common 2023-03-05 17:55:28 +01:00
Armin Novak d521c7fa74 remove wClipboardDelegate 2023-03-05 17:55:28 +01:00
Armin Novak 5829079756 [client,windows] remove calls to now private functions 2023-03-05 17:03:18 +01:00
Armin Novak 0445eec0bc [client,common] fix /gateway option parsing
due to a bug the first letter of the gateway options was ignored.
2023-03-02 19:04:48 +01:00
Armin Novak ffc4d419db [client,sdl] fix uninitialized variable cleanup 2023-03-01 13:45:13 +01:00
Armin Novak 8af35bd42a [client] add deprecation/experimental warnings 2023-03-01 13:45:13 +01:00
Armin Novak 73158a040a [client,common] add warning functions
Added helper functions to inform a user about current state of a client
in use:
* freerdp_client_warn_exeprimental warns about unstable clients
* freerdp_client_warn_deprecated warns about clients to be dropped
2023-03-01 13:45:13 +01:00
akallabeth 273bb6a7a8 [build] use static libraries as intermediate 2023-03-01 08:18:34 +01:00
akallabeth b4e9c8b39f [build] removed complex libraries
* remove obsolete complex libraries helper
* fix static linking
2023-03-01 08:18:34 +01:00
Armin Novak b2fa6da8d2 [client,x11] fix fuse2 compatibility 2023-02-28 09:47:54 +01:00
Armin Novak e673405711 [client,x11] split file clipboard to own struct
* split file clipboard to own file
* check for changed file data in cliprdr_file_context_update_data,
  prevents duplidate entries in fuse filesystem
2023-02-28 09:47:54 +01:00
Armin Novak acc5e2d301 [client,common] use non blocking IO
when reading from stdin use non blocking IO so that we can check if the
session terminated in between.
2023-02-28 09:47:54 +01:00
akallabeth ae8f7c272d [client,x11] fixed clipboard data cache
clean only cached data not the fuse cache if other formats are requested
2023-02-28 09:47:54 +01:00
akallabeth 1ba8d826f8 [client,x11] add some debug logs, fix warnings 2023-02-28 09:47:54 +01:00
akallabeth 3d9969ef65 [client,x11] export x11_event_string 2023-02-28 09:47:54 +01:00
akallabeth adce7378c3 [core,cache] make protocol caches private
most protocol internal caches do not need to be exposed. this reduces
the public API and allows us to more easily improve/change this during a
release cycle
2023-02-27 17:31:52 +01:00
Armin Novak f0e9797b4c [build] require CMake >= 3.13
required for target_link_options
2023-02-27 11:18:02 +01:00
Armin Novak f357312584 [utils] term signal cleanup handlers
add functions to register/unregister termination cleanup handlers
2023-02-23 20:28:15 +01:00
Armin Novak 64efb7ecfd [client,x11] fail build on manpage generation
if manpages should be build but dependencies are missing fail the build
2023-02-23 20:28:15 +01:00
Armin Novak 078162616d [client,x11] split clipboard formats
* a format to request
* a local format to convert to
* add logging
2023-02-23 20:28:15 +01:00
Armin Novak b8a709ccda [client,x11] fixed file clipboard cache
if files are pasted in different file-browser (or e.g. xclip is used)
the data was retrieved in wrong format.
2023-02-21 16:42:54 +01:00
Armin Novak 1522b5aa91 xx 2023-02-21 16:42:54 +01:00
Armin Novak fe3de9b9bf [client,x11] log fuse_session_loop errors 2023-02-21 16:42:54 +01:00
Armin Novak 68d3bcb99a [clipboard] remove linux specifics from channels/cliprdr.h 2023-02-21 16:42:54 +01:00
Armin Novak 10bf44c112 [client,x11] use fuse_root_id 2023-02-21 16:42:54 +01:00
Armin Novak ded270e167 [client,x11] fix fuse file list reset 2023-02-21 16:42:54 +01:00
Armin Novak 9b174c50c9 [client,x11] add fuse debug messages 2023-02-21 16:42:54 +01:00
Armin Novak d694733106 [client,x11] fix fuse detection and use 2023-02-21 16:42:54 +01:00
akallabeth a91b2f4999 [client,sdl] fixed error code mapping 2023-02-21 14:38:34 +01:00
akallabeth f807af6f8e [client,sdl] do not wait for SDL to complete
when updating the window surface in sdl_end_paint do not wait for
completion of the operation. The check is done in sdl_begin_paint, so
the RDP stack can continue processing other data on queue until a
graphic operation needs to be processed.
2023-02-21 14:38:34 +01:00
akallabeth 82a0eab71f [client,sdl] add debug options 2023-02-21 14:38:34 +01:00
akallabeth e3a7eaf39a [client,sdl] run sdl in main thread. 2023-02-21 14:38:34 +01:00
akallabeth ab5be61e89 [client,common] working REDIRECTION_VERSION6
* REDIRECTION_VERSION6 requires enabled multitransport, enable it
* Add a fallback if multitransport was disabled
2023-02-20 16:04:04 +01:00
Martin Fleisz 1bec63c2f2 client/win: Fix invalid ShowWindow call from gfx thread
ShowWindow must be called from the thread that owns the window.
Currently it might be called from the gfx channel thread which causes
random app hangs/window not showing up issues.
2023-02-16 10:41:21 +01:00
akallabeth 45dfeabe92 [client,common] set default callbacks before ClientNew
ohterwise the default callbacks might override custom callbacks set by
an implementation by accident
2023-02-16 08:16:09 +01:00
Armin Novak 25023d3a3a [client,scard] fix missing callback instance arg
every callback requires context, add freerdp* instance just as the
Authenticate et al callbacks already have
2023-02-15 13:34:18 +01:00