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
Armin Novak
5d97a03bf4
[client] auto intialize callbacks
...
initialize all message/user query callbacks with client_cli_*
2023-02-15 13:34:18 +01:00
akallabeth
caaf4edffa
[clients] clean up .gitignore
...
too much was ignored, clean up the list
2023-02-15 13:34:18 +01:00
akallabeth
ff3c7c82ee
[client,x11] fix /gdi:hw drawing.
2023-02-14 09:30:45 +01:00
akallabeth
7728df6804
[client,mac] fix wrong getter for ServerPort
2023-02-12 20:17:11 +01:00
akallabeth
87b30958a6
[cyrpto] unify PEM read/write
...
use crypto_read_pem and crypto_write_pem in all places required
2023-02-12 20:17:11 +01:00
akallabeth
9e8fc60a45
[client,common] add openssl includes for TLS version
2023-02-12 20:17:11 +01:00
akallabeth
4499a55f43
[core,smartcardlogon] use rdpCertificate
2023-02-12 20:17:11 +01:00
akallabeth
2eda0aa2ea
[core,settings] remove unused setting
2023-02-03 11:24:32 +01:00
Armin Novak
427a4fa057
[client,common] deprecate old gateway options
2023-02-03 11:08:46 +01:00
Armin Novak
923b068382
[client,common] unified credential hiding
...
* Unify command line credential string replace in a single function
* Extend the string replace, add all options containing a token or
a password
2023-02-03 11:08:46 +01:00
Armin Novak
9d8954f56a
[client,common] add new option /gateway
...
* unifies old /g, /gu, /gd, /gp, /gt, /gat and /gateway-usage-method
options into a single one.
* add new option auto-consent:[on|off]
2023-02-03 11:08:46 +01:00
Armin Novak
57698ed1f9
[client,common] fixed possible memory leak
2023-02-03 11:08:46 +01:00
Armin Novak
cd48e17740
[gateway,settings] add GatewayAutoConsent option
...
with this option the client automatically accepts consent messages of
the gateway server.
2023-02-03 11:08:46 +01:00
akallabeth
1b254c17ea
[client,wayland] fix cast warnings
2023-02-01 09:51:54 +01:00
Armin Novak
70f6c09ff4
[core] fix persistent bitmap cache setting
...
* Only activate if both, client and server support the capability
* Use settings getter to access setting
2023-01-26 09:30:17 +01:00
Armin Novak
641022b795
[logging] remove __FUNCTION__ from actual message
...
prefer the log formatter to provide that information.
2023-01-25 16:26:39 +01:00
Armin Novak
05f933398c
[client,sdl] print number of monitors before listing
2023-01-25 14:27:15 +01:00
Armin Novak
c1174152c3
[client,common] print help on wrong list command
2023-01-25 14:27:15 +01:00
Armin Novak
aee9f68f7d
fixed SDL utils.
2023-01-25 14:27:15 +01:00
Armin Novak
56df6177e1
[client,sdl] Add WSAStartup
...
Windows requires WSAStartup to be called for the client to work.
2023-01-25 14:27:15 +01:00
Armin Novak
d2b50a06b5
[client,sdl] only call freerdp_disconnect if connected
2023-01-24 10:16:55 +01:00
Armin Novak
4b3133b138
[client,sdl] use dynamic logger instance
2023-01-18 09:32:41 +01:00
Armin Novak
a1b764019d
[client,sdl] add log functions
2023-01-18 09:32:41 +01:00
Armin Novak
defa74b94b
[build] continue if SDL2 is requested but not found
2023-01-18 09:32:41 +01:00
Rozhuk Ivan
a111b78530
[core] Rename TLS functions
...
Rename tls_ to freerdp_tls_ to avoid namespace conflicts with libtls
and probaly other tls crypto libs.
2023-01-14 08:50:26 +01:00
Armin Novak
e6a4b86fd6
[client,mac] use settings getter/setter
2023-01-14 08:09:08 +01:00
jfliu
5b44bc63e8
fix Chinese title on mac
2023-01-14 08:09:08 +01:00
amazingfate
a691b48bc0
hide password for mac client
2023-01-13 11:42:08 +01:00
akallabeth
1f7bcd4a1a
[client,sdl] print experimental warning
2023-01-10 17:38:00 +01:00
Armin Novak
070353bf90
added SDL2 client
2023-01-10 17:38:00 +01:00
akallabeth
82ba9ede9c
[freerdp] use FREERDP_/UWAC_/RDTK_ prefix for conditional headers
2023-01-10 17:38:00 +01:00
Armin Novak
d66b165b8e
[client,common] common touch handling
2023-01-10 17:38:00 +01:00
Bernhard Miklautz
08ffe661e0
fix [client/Mac]: ninja build
...
Problem that caused the ninja build to fail:
* `ninja: error: build.ninja:14841: bad $-escape (literal $ must be written as $$)` - because of the way CONFIGURATION was passed
* missing build dependency betwenn client/Mac and client/Mac/cli
2023-01-10 13:26:54 +01:00
Armin Novak
d978a0dbdb
[client,x11] fix rail checks
...
rail might be deactivated during connect, so ensure that the default
session rendering path properly checks the window pointer
2023-01-10 11:49:02 +01:00
akallabeth
9a80afeb08
[client,cmdline] add support for .rdpw file extension
2022-12-21 16:11:57 +01:00
akallabeth
8c6ee2061b
[client,cmdline] fixed /gfx parsing
...
* Fixed a bug not activating AVC444 when requested
* Unified legacy /gfx-h264 parsing with /gfx
2022-12-15 11:20:34 +01:00
Armin Novak
2b49047c34
[client] Fix keyboard input
...
properly pass key repeat events to the server.
2022-12-13 14:37:05 +01:00
Armin Novak
d90aa5d6f5
[client,x11] Fixed #8099 : Detect key autorepeat
...
When a key is pressed in autorepeat mode, skip the KeyRelease events in
between.
2022-12-13 14:37:05 +01:00
Armin Novak
5f81005ecb
[transport] remove polling loop
...
We no longer have a blocking polling loop in transport. Instead assume
there is more data after a packet was processed and let the transport
try again. If there is another packet ready, this repeats until only a
partly received (or no new data available) situation is reached.
2022-12-12 12:59:32 +01:00
akallabeth
d4808dd3e1
Fixed various compiler warnings
2022-12-09 15:58:26 +01:00
Armin Novak
bd7e2263ad
fixed const and type cast warnings
2022-12-09 15:58:26 +01:00
akallabeth
3ddf99ad64
Fixed Wformat warnings
2022-12-09 15:58:26 +01:00
akallabeth
f553d453b8
[client,x11] use HashTable_ForEach for rail paint
2022-12-09 12:30:14 +01:00
Armin Novak
ef5f51ba04
[x11,client] remove dead initialization code
2022-12-09 12:30:14 +01:00
Armin Novak
1bc110518d
[x11,rail] cleaned up rail drawing code
...
The remote application drawing code was simplified
2022-12-09 12:30:14 +01:00
Armin Novak
4008033065
[x11,client] assert use of xfc->depth
...
Do not use color depth settings before they are initialized
2022-12-09 12:30:14 +01:00
Armin Novak
eda1359f52
[x11,client] clean up color depth initialization
...
* Do not use transparency except in remote application mode.
* Fall back to default color depth in rail mode if no transparency
supported
2022-12-09 12:30:14 +01:00
Armin Novak
22d5394993
[x11,client] unified drawing path
...
Do not distinguish between rail and desktop sessions when drawing
2022-12-09 12:30:14 +01:00
Armin Novak
96243c1d17
[x11,client] unify modifier map update/free
2022-12-09 12:30:14 +01:00
akallabeth
4d885e3a6e
[client,x11] Initialize window with 32bit color
...
Allow alpha channel to be properly processed for rail
2022-12-09 12:30:14 +01:00
akallabeth
7b6023b340
[client,x11] move X11 init to post connect
2022-12-09 12:30:14 +01:00
akallabeth
cb5c98aab0
[core,client] Add PostFinalDisconnect callback
...
To have more fine granied control add a new callback.
Now you have the following callback pairs:
* PreConnect <--> PostFinalDisconnect
* PostConnect <--> PostDisconnect
2022-12-09 12:30:14 +01:00
Armin Novak
5a24ec2171
[client,windows] release keyboard grab on minimize
2022-12-09 11:28:21 +01:00
Armin Novak
7027699a5c
[client,cmdline] remove -fast-path option
...
This option is quite an expert setting and should not be exposed that
prominently. Remove it as it can still be changed with the /tune option.
2022-12-06 16:41:24 +01:00
Armin Novak
3e3ed445b4
[client,file] add rdgiskdcproxy to settings
...
Adds a new option FreeRDP_KerberosRdgIsKdc to manually set the KDC url
to the gateway server url
2022-12-06 14:07:53 +01:00
Armin Novak
3b7d515f85
[client,file] add kdcproxyname to parsing options
2022-12-06 14:07:53 +01:00
Armin Novak
9218a404b5
[client,x11] force initial format list
2022-12-03 10:53:18 +01:00
Armin Novak
a5d9c3b846
[client,cmdline] fix order of arguments
...
option_starts_with was called with inverted arguments.
2022-11-29 22:29:29 +01:00
Armin Novak
40b55466bf
[client,windows] Fixed useless string conversion
2022-11-28 10:42:36 +01:00
akallabeth
5799fb2018
Replace ConvertFromUnicode and ConvertToUnicode
...
* Use new ConvertUtf8ToWChar, ConvertUtf8NToWChar,
ConvertUtf8ToWCharAlloc and ConvertUtf8NToWCharAlloc
* Use new ConvertWCharToUtf8, ConvertWCharNToUtf8,
ConvertWCharToUtf8Alloc and ConvertWCharNToUtf8Alloc
* Use new Stream UTF16 to/from UTF8 read/write functions
* Use new settings UTF16 to/from UTF8 read/write functions
2022-11-28 10:42:36 +01:00
akallabeth
00ee213f97
[winpr,android] Unify JNI_OnLoad
...
* Split JNI_OnLoad and JNI_OnUnload to own module to be usable from more
than only timezone
* Explicitly call System.loadLibrary('winpr') (and other FreeRDP
libraries) in android client as JNI_OnLoad is only triggered by that
and not implicit loading
2022-11-28 10:42:36 +01:00
Armin Novak
c5e425242a
[settings] Typo in GatewayHttpExtAuthSspiNtlm
2022-11-23 11:19:21 +01:00
Armin Novak
b6b05e93a4
[xfreerdp] fix sending monitor layout PDU
...
only send it if there are more monitors available.
2022-11-22 15:30:31 +01:00
akarl10
b1583d56c0
[rdg] implementation of http_extauth_sspi_ntlm
2022-11-16 20:28:53 +01:00
Armin Novak
5ecd62a5f7
[client,cmdline] Fix /enforce-tlsv1_2 parsing
2022-11-16 16:03:21 +01:00
Armin Novak
a489c69f10
[client,x11] Fixed #8397 : Clamp scaled cursor sizes
...
If a cursor is scaled, ensure the result size is at least 1x1 pixel
wide.
2022-11-16 13:47:02 +01:00
akallabeth
33827cb920
Updated RDP state machine
...
* More detailed states
* Better transition checks
* No more recursive calling of state machine functions
2022-11-11 11:51:27 +01:00
Armin Novak
697e020abd
[rail] Added window update from surface
2022-11-11 06:42:45 +01:00
Armin Novak
325c03501e
[gfx] Added new UpdateWindowFromSurface callback
...
* Adds a new callback and settings in gdiGfxSurface to allow updating
a window directly from surface bitmap data
* Adds new BOOL in gdiGfxSurface windowMapped and
handleInUpdateSurfaceArea to control where surface data update is
being handled
2022-11-11 06:42:45 +01:00
JeonJongHyeon97
55015fd59b
Fix untracked clipboard
2022-11-07 08:54:34 +01:00
akallabeth
450f8a1d7e
Fixed wrong define check
...
The deprecated command line must only be used if
WITH_FREERDP_DEPRECATED_COMMANDLINE is defined
2022-11-04 14:46:58 +01:00
akallabeth
3023057b16
Cleaned up some loop code in xf_monitor
...
Use loop variables to make it more readable
2022-11-04 14:46:58 +01:00
Armin Novak
5306c3ec0a
Write an error log if a PEM file can not be read.
2022-11-03 11:06:15 +01:00
akallabeth
c0193a1813
Fixed #8259 : in remote app mode keep the keyboard state
...
If the mouse enters/leaves the window or the window is unmapped in
desktop session mode we can reset the keyboard modifiers state
while in remote app mode these events have different meaning. Be
more strict in the latter case and only reset on focus out
2022-11-03 11:01:30 +01:00
Armin Novak
3dc5ac74a9
Fix parsing of smartcard options
2022-10-27 11:55:49 +02:00
Armin Novak
5e1d7c0f8d
Unified comparisons
...
* Use option_starts_with for all checks
* Use option_ends_with for all checks
* Use option_equals for all comparisons
2022-10-27 11:36:58 +02:00
Armin Novak
fa1bbfe1bd
Fixed on/off string length checks
2022-10-27 10:13:57 +02:00
Armin Novak
605ff25269
Fixed string size for keyboard option parser
2022-10-27 10:13:57 +02:00
akallabeth
967749d43f
Unify command line deprecation warning log messages
2022-10-27 10:13:57 +02:00
akallabeth
e3528e3728
Unified /app-* command line arguments
2022-10-27 10:13:57 +02:00
akallabeth
f7850f08aa
Added option WITH_FREERDP_DEPRECATED_COMMANDLINE_COMMANDLINE
...
This allows building deprecated command line options without adding
deprecated functions to the build.
2022-10-27 10:13:57 +02:00
akallabeth
55362225cc
Unified /kbd-* command line options
...
The number of /kbd-* options grew too large, unify them under a
single /kbd:<option1>,<option2>,... setting
2022-10-27 10:13:57 +02:00
akallabeth
d1a736273e
Added deprecation log messages, fixed on|off parsing for /sec
2022-10-27 10:13:57 +02:00
akallabeth
391199cbeb
Unified /*-cache command line options
...
There were multiple options enabling/disabling cache features.
Unifed them all under a single /cache:<option1>,<option2>,...
2022-10-27 10:13:57 +02:00
akallabeth
41284f47e7
Unify /gfx options
...
* Deprecate all gfx-* options
* Extend argument parsing for /gfx:<option1>,<option2>,...
2022-10-27 10:13:57 +02:00
akallabeth
181debc3d1
Remove /tls:enforce:ssl3 option
...
SSL3 is deactivated during connect anyway, so do not expose the
option
2022-10-20 10:51:50 +02:00
akallabeth
ef6842d249
Fixed TLS1_3_VERSION check and parse_tls_seclevel
...
* Only add TLS1_3_VERSION to array if the SSL library build against
has support for TLS 1.3
* Fix wrong parse function call for 'seclevel'
2022-10-20 10:51:50 +02:00
Armin Novak
187b553b97
Allow overriding TLS version
...
Now use a generic option to allow setting all possible SSL/TLS versions.
Use /tls:enforce:[ssl3|1.0|1.1|1.2|1.3] to set accordingly
2022-10-19 20:31:53 +02:00
Armin Novak
119b8d4474
Unified command line options to list something
...
There are various options to list smartcards, monitors, keyboard
settings. Unify them all under a single /list:<something> option
2022-10-19 20:31:53 +02:00
Armin Novak
7e82c9f19f
Cleaned up functions printing information
2022-10-19 20:31:53 +02:00
Armin Novak
1f6476016d
Update command line option /sec*
...
* Deprecate /sec-* flags
* Allow multiple arguments for /sec
2022-10-19 20:31:53 +02:00
Armin Novak
ed3bc5c51a
Only enable deprecated commandline with WITH_FREERDP_DEPRECATED
2022-10-19 20:31:53 +02:00
Armin Novak
1c8bcbeb6a
Added deprecation warnings to /cert-* options
2022-10-19 20:31:53 +02:00
Armin Novak
d357fa3237
Added a unified /tls: option
...
There are too many tls settings scattered over multiple different
switches. Add a unified option and deprecate the old ones
2022-10-19 20:31:53 +02:00
fifthdegree
eb04eb0008
Support using smartcard for gateway authentication
2022-10-19 18:55:38 +02:00
fifthdegree
e847f159a6
Try to use the smartcard key name Windows uses
...
Windows expects the containerName field in TSSmartCardCreds to be what
it would use for a smartcard key's name. Try to accomodate that (at
least for PIV and GIDS cards).
2022-10-19 18:55:38 +02:00