Armin Novak
f66110c611
[codec,rfx] refactor API
...
* Hide implementation details
* Add missing getter/setter
2023-04-05 20:41:42 +02:00
Armin Novak
50ce5b834d
[core,server] warn if cert not RDP security compatible
2023-03-28 17:19:03 +02:00
akallabeth
e40b1614f2
[server,shadow] fix assertion in shadow context free
2023-03-14 17:38:59 +01:00
Armin Novak
c23dc3ba9d
[CMake] Fix use of BUILD_SHARED_LIBS
...
the option is named BUILD_SHARED_LIBS and not CMAKE_BUILD_SHARED_LIBS
2023-03-10 11:40:08 +01:00
Armin Novak
49f44303b1
[server,shadow] clean up certificate generation
2023-03-08 13:07:20 +01:00
Armin Novak
00f8cd350b
[server,shadow] abort on invalid key/certificate
2023-03-08 13:07:20 +01:00
Armin Novak
340101e35e
[server,shadow] do not fall back to surfacebits
...
If GFX channel is desired, do not fall back to surface bits command.
This will break mstsc connections after a DesktopResize was sent.
2023-03-06 21:46:51 +01:00
Armin Novak
e796508c1a
[server,shadow] disable AVC modes if none compiled in
2023-03-06 21:46:51 +01:00
Armin Novak
1bf0bb1a26
[server] fixed build without CHANNEL_AUDIN_SERVER
2023-03-06 21:46:51 +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
akallabeth
ad1af95438
Removed duplicate rdp security checks
2023-02-16 10:06:17 +01:00
akallabeth
fe287e199b
[server,shadow] use rdpPrivateKey and rdpCertificate
2023-02-16 10:06:17 +01:00
akallabeth
d96860780f
Fixed compiler warnings
2023-02-03 11:09:59 +01:00
akallabeth
97e397e768
[server,shadow] simplify resource cleanup
2023-02-03 11:09:59 +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
akallabeth
26c967a083
[server,shadow] fix missing return check
2023-01-24 10:16:55 +01:00
Armin Novak
c11f47db89
[server,shadow] do treat deactivate/reactivate
...
if a resolution change is required, run postconnect just as if it was
successful.
2022-12-22 15:09:03 +01:00
Armin Novak
d6ab9d5f63
[server,shadow] abort connection if a resize fails
...
The shadow server tries to resize the client to use a compatible
resolution. If that fails, e.g. if there is another resize request after
the disconnect/reconnect sequence, abort the connection.
2022-12-19 10:38:18 +01:00
Armin Novak
7fd6278bc6
[server] fixed key press checks
...
Do not test KBD_FLAGS_DOWN, this only indicates key repeat. Check for
the absence of KBD_FLAGS_RELEASE
2022-12-13 14:37:05 +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
43c5289928
Replaced memset/ZeroMemory with initializer
...
* Addes WINPR_ASSERT on many occations
* Replaced memset with array initializer
* Replaced ZeroMemory with array initializer
2022-10-14 12:11:01 +02:00
akallabeth
59eae5dbc3
Fixed tautological-unsigned-zero-compare
2022-10-11 13:28:30 +02:00
akallabeth
1849632c43
Fixed format strings to match arguments ( #8254 )
...
* Fixed format strings to match arguments
Reviewed and replaced all %d specifiers to match proper type
* Added proxy dynamic channel command type to log messages.
2022-09-29 14:55:27 +02:00
Kang Lin
7e8bb42005
CMAKE: Fix install export FreeRDP-ShadowTargets
2022-09-27 11:06:39 +02:00
David Fort
4fc7a9417d
Various fixes / improvements ( #8146 )
...
* xfreerdp: fix typo in logs
* winpr: file appender, small code cleanup
* shadow-server: add an option for TLS secrets
This allows to dissect connections to the shadow server.
2022-08-22 09:42:15 +02:00
David Fort
fff746f1f8
shadow-server: fix state machine ( #8133 )
...
The shadow server was setting up the dynamic channel too quickly, leading
to unexpected packets during the negotiation (unexpected licence packet error
message on the client side). So let's starts dynamic channel once the activation is
done.
2022-08-18 09:20:51 +02:00
fifthdegree
7901a26a16
Kerberos User 2 User support ( #8070 )
...
* add support for 64-bit big-endian encoding
* kerberos: drop reliance on gssapi and add user 2 user support
* Fix local variable declared in the middle of the function body
* kerberos: add ccache server option
Co-authored-by: fifthdegree <fifthdegree@protonmail.com>
Co-authored-by: David Fort <contact@hardening-consulting.com>
2022-08-17 12:25:26 +02:00
Armin Novak
b672bda85e
Removed RdpKeyFile and RdpKeyContent settings
...
They are a duplicate of PrivateKeyFile and PrivateKeyContent
2022-07-06 12:01:23 +02:00
akallabeth
3a6ee1155d
Shadow XDamage define guards
2022-07-05 09:37:22 +02:00
akallabeth
cb96e6143d
Fixed -Wshadow warnings
2022-06-30 10:49:02 +02:00
akallabeth
bc8b4ade1c
reformatted
2022-06-23 08:48:39 +02:00
akallabeth
90ce22283d
Replaced direct settings access with getter/setter
2022-06-23 07:45:55 +02:00
akallabeth
650a275ceb
Added new client callback LoadChannels and freerdp_client_load_channels
...
Split channel loading from PreConnect as it might be necessary to
reinitialize channels on redirect
2022-06-23 07:45:55 +02:00
fifthdegree
8f7be42540
return check
2022-06-21 10:27:17 +02:00
fifthdegree
eeece1a027
server-side kerberos (and some fixes)
2022-06-21 10:27:17 +02:00
akallabeth
1cc06dc3a5
Fixed mac compilation warnings
2022-06-03 08:51:40 +02:00
akallabeth
46ccf6d0d7
Fixed RDPGFX_CAPVERSION_106 according to errata ( #7924 )
...
The [MS-RDPEGFX] spec is not really sure which value to use, so we
just announce both, the one from the spec and the one from errata.
2022-05-25 13:11:29 +02:00
Armin Novak
40f5578206
Add GFX 10.7 capsets
2022-05-24 10:08:53 +02:00
David Fort
77413f49b2
winpr: rework alignment functions
...
_align_XXX functions aren't widely available depending on the C runtime. That causes
problems with mingw where we can easily have some runtime mixes (which lead to mysterious
segfaults most of the time). This patch introduce winpr_aligned_XXX functions that will
either use the function available, or use an emulation layer.
2022-05-12 11:36:01 +02:00
Alex Wilson
9591dd1f0d
shadow: convert incoming key scancode to DWORD before |= KBDEXT
...
KBDEXT is 0x100, so if we |= it onto a UINT8 it actually does
nothing, making us interpret all scancodes as if they're
non-extended.
2022-05-05 08:41:09 +02:00
akallabeth
ec699f6c75
scanbuild fixes
2022-04-28 12:37:19 +02:00
akallabeth
fb90ac280a
Refactored color.h
...
* Remove implementations from header
* Rename functions to be FreeRDP specific
* Add deprecation define for old names
* Fixed missing includes
2022-04-28 08:40:47 +02:00
akallabeth
73cdcdfe09
Logging and parser fixes ( #7796 )
...
* Fixed remdesk settings pointer
* Fixed sign warnings in display_write_monitor_layout_pdu
* Use freerdp_abort_connect_context and freerdp_shall_disconnect_context
* Added and updates settings
* info assert/dynamic timezone
* mcs assert/log/flags
* Fixed and added assertions for wStream
* Unified stream length checks
* Added new function to check for lenght and log
* Replace all usages with this new function
* Cleaned up PER, added parser logging
* Cleaned up BER, added parser logging
* log messages
* Modified Stream_CheckAndLogRequiredLengthEx
* Allow custom format and options
* Add Stream_CheckAndLogRequiredLengthExVa for prepared va_list
* Improved Stream_CheckAndLogRequiredLength
* Now have log level adjustable
* Added function equivalents for existing logger
* Added a backtrace in case of a failure is detected
* Fixed public API input checks
2022-04-19 14:29:17 +02:00
akallabeth
752ac3b479
Fix #7793 : Do not expose internal input API ( #7794 )
...
* Fixed GetFileInformationByHandle initializers
* Fix #7793 : Do not expose internal input API
Slow-Path input uses UINT16 for scancodes on wire, but only the
lower byte is actually used. (the extended fields are sent in
keyboardFlags field)
Hide this implementation detail and adjust the API to use UINT8
for the code instead just like the corresponding Fast-Path PDU
* Added a warning for problematic slow path keyCodes
2022-04-13 09:34:05 +02:00
akallabeth
00adf1a6a0
Fixed leak in shadow_client_logon
2022-03-28 15:52:59 +02:00
akallabeth
770bc14d18
Cleaned up rdpSettings use in server
2022-03-28 15:52:32 +02:00
akallabeth
14568872a9
Instance cleanup ( #7738 )
...
* Cleaned up freerdp::autodetect
* Deprecate freerdp::input
* Deprecated freerdp::update
* Deprecated freerdp::settings
* Deprecated freerdp::autodetect
* Removed rdpTransport::settings
* Deprecated freerdp_per::update|settings|autodetect
* Fixed mac client and server compilation
* Fixed windows compilation
* Added deprecation warnings
* Fixed initialization of structs.
* Fixed android build
* Fixed freerdp_client_context_new const correctness
* Fixed checks for android implementation
Replaced checks with assertions where appropriate
* Fixed checks for windows client
Replaced checks with assertions where appropriate
* Fixed proxy client pointer dereference
2022-03-23 13:18:35 +01:00
Armin Novak
71aac852d6
Remove async-input from clients
2022-03-08 15:37:19 +01:00
Armin Novak
4d03d7c0bf
Freerdp remove #ifdef HAVE_CONFIG_H
2022-03-03 11:26:48 +01:00
Armin Novak
b2ad47a809
Reorganized FreeRDP headers
2022-03-03 11:26:48 +01:00
Armin Novak
fd027d1bf0
Removed BUILTIN_CHANNELS
...
Building client channels out of tree does not work reliable as the
dependencies can not be easily split. (exceptions may be simple ones
as echo channel)
It does complicate the build system and code though, so remove this
for maintainability reasons.
2022-02-23 10:43:46 +01:00
akallabeth
7641710f60
Use a client/common context component
...
* Allows moving common client code from specific client to a
generic client/common implementation
2022-02-22 09:44:13 +01:00
Armin Novak
80a352366f
Fixed windows shadow warnings
2022-02-18 08:38:28 +01:00
akallabeth
8cc6582044
Unify struct definitions ( #7633 )
...
* Unified enum/struct definitions, fixed include issues
* Fixed mac compilation issues
* Added missing include
* Fixed windows server build warnings
* Fixed VS2010 build issue
* Removed unnecessary library linking
* Fixed ThreadPool WinXP compatibility
* Fixed pr review remarks
2022-02-14 14:59:22 +01:00
Armin Novak
a403848e61
Fixed const/type warnings
2022-02-01 08:48:21 +01:00
akallabeth
8560803211
Removed BITMAP_UPDATE::count use
2022-01-27 10:52:02 +01:00
Armin Novak
9c7ec3888a
Added deprecation to *get_fds functions
2022-01-21 08:59:09 +01:00
akallabeth
e6e6ed5dbd
Cleaned up PubSub
...
* Callback arguments now const
* Fixed missing includes
2022-01-19 09:24:57 +01:00
Armin Novak
fd5ac4eed0
Cleaned up wnd.h includes
2021-12-23 14:27:12 +01:00
akallabeth
88f4e72853
Added WITH_RDTK to disable rdtk build
2021-12-15 13:36:15 +01:00
Armin Novak
0f8c52b9ca
Fixed const warnings with argument parser
2021-09-09 08:53:20 +02:00
akallabeth
c2f1562a4b
Removed freerdp_peer::input
2021-09-09 08:36:01 +02:00
Armin Novak
737f5a2036
Fixed argument const correctness
2021-08-27 13:21:02 +02:00
Armin Novak
413dcd3c28
Fixed RDPSND_CHANNEL_NAME
...
RDPSND channel is special, as it has many names.
(e.g. static channel, dynamic channel and UDP one.
Use RDPSND_CHANNEL_NAME to identify the module name instad of
RDPSND_DVC_CHANNEL_NAME
2021-08-25 13:40:47 +02:00
Armin Novak
64d675a728
Fixed warnings in shadow server.
2021-08-25 10:54:24 +02:00
Armin Novak
054f0ea260
Use defines instad of channel names
2021-08-25 10:54:24 +02:00
akallabeth
617293e0d3
Cleanups ( #7239 )
...
* Use freerdp_settings_* for shadow and sample server
* Added freerdp_peer_set_local_and_hostname
* Code cleanups and WINPR_ASSERT
* Code cleanups
* Use CHANNEL_NAME_LEN where appropriate
* Use temporary variables in loop instead of direct array access
2021-08-24 14:09:40 +02:00
Armin Novak
610396e197
Fixed compilation warnings
...
Try to get the number of warnings down
2021-08-02 10:28:06 +02:00
Armin Novak
61b46adaf1
Fixed WITH_WINPR_VERBOSE_ASSERT compile flag
...
* Compile flag was not always set
* Fix broken WINPR_ASSERT usages detected
2021-07-29 15:09:53 +02:00
akallabeth
7dfdd248ee
Monitor coordinates are exclusive ( #7145 )
...
* Monitor coordinates are exclusive
* Remove force override of shadow resolution.
The client might ignore the server requested values, in that case
retry
2021-07-07 11:54:01 +02:00
akallabeth
30520ff5e0
Fixed surface width
2021-07-02 09:53:24 +02:00
akallabeth
2ac12c558a
Added option to allow planar topdown encoding.
2021-07-02 09:53:24 +02:00
akallabeth
be88fa6705
Fixed surface buffer alignment
2021-07-02 09:53:24 +02:00
akallabeth
645cc8bb69
Use variable surfaceId
2021-07-02 09:53:24 +02:00
akallabeth
2101aadceb
Fixed missing assertions and default color depth
2021-07-02 09:53:24 +02:00
akallabeth
5a85a824d2
Used settings getter/setter for NSCodec
2021-07-01 11:56:17 +02:00
akallabeth
6deb65175f
Added GFX planar and rfx encoder to shadow
2021-07-01 11:56:17 +02:00
akallabeth
bd256b91bc
Fixed disabling of AVC444 mode if requested
2021-07-01 11:56:17 +02:00
akallabeth
4ce3063b16
WINPR_ASSERT shadow client
2021-07-01 11:56:17 +02:00
akallabeth
3ac50697a0
Added RDPGFX_CODECID_UNCOMPRESSED path to shadow
2021-06-30 15:59:07 +02:00
Armin Novak
4622c58332
Added extended shadow support for mouse and unicode
2021-06-29 13:48:14 +02:00
Armin Novak
98ed05ff5c
Added PROGRESSIVE codec to shadow
2021-06-28 16:51:27 +02:00
akallabeth
534d30beb3
No deprecated ( #7107 )
...
* Removed cmake options disabling compiler warnings
* Added deprecation compile options
* Fixed android client use of deprecated symbols
* Removed obsolete callback
2021-06-22 14:39:10 +02:00
Armin Novak
8ef57bf296
Replaced CMAKE_[SOURCE|BINARY]_DIR with PROJECT_[SOURCE|BINARY]_DIR
...
Thanks @Pollux42 for the hint in #7096
2021-06-22 08:54:18 +02:00
akallabeth
b453d5e40e
Fixed rdtk, uwac and winpr standalone builds
2021-06-22 08:54:18 +02:00
Armin Novak
ea78e33d17
server: Fixed warnings, added assertions
2021-06-18 11:32:16 +02:00
Armin Novak
299c962b28
Fixed warnings
2021-06-17 10:35:22 +02:00
Armin Novak
5fb59a23a9
Fixed lots of compilation warnings and type mismatches
2021-06-16 15:21:56 +02:00
Armin Novak
1fd72ded43
Fixed compilation warnings
2021-06-16 14:26:06 +02:00
Armin Novak
ccfe0c129e
Removed checks already done by WINPR_ASSERT
2021-06-16 11:46:42 +02:00
Armin Novak
d6c84c28fb
Renamed ArrayList_Add to ArrayList_Append
...
* Do not break API silently
2021-06-16 11:46:42 +02:00
Armin Novak
a1c8e4cf85
Refactored ArrayList_Add to conform to other functions
2021-06-16 11:46:42 +02:00
Armin Novak
d36d94766e
Replaced assert with WINPR_ASSERT
2021-06-14 09:37:07 +02:00
akallabeth
6b36c6d417
Replace fopen and path functions with wrappers ( #7043 )
...
Functions like fopen, PathFileExists, PathMakePath need to call
the wide character versions on windows for utf-8 support.
2021-05-31 11:42:03 +02:00
Biswapriyo Nath
37bbf9d218
CMake: Install DLLs in bin folder.
...
In Win32 platform, executables and runtime libraries need to be in one folder.
2021-05-25 09:41:44 +02:00
Armin Novak
6f2c6625e4
Added FREERDP/WINPR prefix to define GIT_REVISION
2021-05-18 13:37:34 +02:00
Armin Novak
8cd61a01ff
Refactored shadow argument parsing
...
* Remove global struct
* Add logger options
2021-04-16 17:06:27 +02:00
sss
4a2514b58d
reverted olf signature for rfx_context_new
2021-03-30 11:03:15 +03:00
sss
6b76ac9545
Revert "Revert "allow to use in single threaded mode" ( #6864 )"
...
This reverts commit f7465af44f
.
2021-03-26 11:50:45 +01:00