Armin Novak
3bb36f4caa
Fixed clang-scanbuild warnings
2022-02-22 16:15:05 +01:00
Armin Novak
0c7e6c3c2d
Refactored disp channel
...
* Assert all input parameters
* Use DISP_CHANNEL_NAME define for channel name
2022-02-22 11:29:56 +01:00
akallabeth
c5f7f9fba8
Add option for external thread to ainput server channel
2022-02-22 09:44:13 +01:00
Armin Novak
f03059e718
Extended AINPUT API:
...
* Each event now has a timestamp
* Relative and absolute events are sent simultaneously
* Added a flag indicating relative events are available
2022-02-22 09:44:13 +01:00
akallabeth
ae49581673
Added missing include for ainput server channel
2022-02-22 09:44:13 +01:00
akallabeth
de81f54076
Add relative mouse input and no channel support
2022-02-22 09:44:13 +01:00
akallabeth
66338e4c1f
Added reserved elements to rdpClientContext
...
This is necessary to provide a stable ABI for future extensions.
(this struct is used as extension of rdpContext)
2022-02-22 09:44:13 +01:00
akallabeth
4d3157c9cc
Added common client mouse event functions
2022-02-22 09:44:13 +01:00
akallabeth
4ca5078027
Added common client channel handling
2022-02-22 09:44:13 +01:00
akallabeth
cdbfff87ea
Unified client stop
2022-02-22 09:44:13 +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
fb8eb7251e
Added relative mouse setting
2022-02-22 09:44:13 +01:00
akallabeth
f45e515fcd
Added Advanced Input Channel
2022-02-22 09:44:13 +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
David Fort
46eb50df2c
proxy: improve channel treatment
...
This PR introduces per channel context so that we can speed up operations like
retrieving the channel name from its id, or knowing what shall be done for a
packet (no config ACL recomputation at each packet).
2022-02-04 08:44:22 +00:00
Armin Novak
10e40147fb
Fixed various const warnings
2022-02-01 10:25:37 +00:00
Armin Novak
c51224e923
Fixed const warnings for codec decompress routines
2022-01-31 16:25:56 +01:00
Armin Novak
b9cfa10513
Fixed some more warnings
2022-01-31 15:55:10 +01:00
Armin Novak
c220367843
Replaced reserved name identifier
2022-01-31 15:55:10 +01:00
Armin Novak
50d6f1457c
Fixed missing brace
2022-01-31 14:58:41 +01:00
dance
122268aec1
code cleanup: don't allocate excessive memory in update_read_bitmap_update
...
removed no more actually used count property of BITMAP_UPDATE struct,
fixed allocating twice as memory for its rectangles - as of refactoring
at e5767f07
BITMAP_UPDATE struct is reused no more
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
724c6f8192
Proxy cleanups ( #7568 )
...
* Fixed C++ issues with proxy context
* Added freerdp_settings_get_string_writable
* Define WITH_PROXY_EMULATE_SMARTCARD in config.h
2022-01-20 11:12:36 +01:00
akallabeth
e6e6ed5dbd
Cleaned up PubSub
...
* Callback arguments now const
* Fixed missing includes
2022-01-19 09:24:57 +01:00
Armin Novak
1fedd36f65
Fixed proxy compilation issues after rdpUpdate refactoring
2022-01-18 11:24:23 +01:00
Armin Novak
0b3d5351e1
Removed internal members of rdpSecondaryUpdate from API header
2022-01-18 11:24:23 +01:00
Armin Novak
504336f796
Removed internal members of rdpPrimaryUpdate from API header
2022-01-18 11:24:23 +01:00
Armin Novak
3006c973c4
Removed internal members of rdpAltSecUpdate from API header
2022-01-18 11:24:23 +01:00
Armin Novak
6973c5dce2
Removed internal members of rdpInput from API header
2022-01-18 11:24:23 +01:00
Armin Novak
d210ac5e33
Removed internal members of rdpUpdate from API header
2022-01-18 11:24:23 +01:00
Armin Novak
4e6e5be654
Added proxy intercept channels
...
* New configuration to intercept certain channels
* Added rdpdr intercept implementation
2022-01-11 12:34:43 +01:00
Armin Novak
3c72cc3306
Refactored rdpdr and dependent channels
...
* Move parsing code to core library
* Move definitions to public API to allow access from outside
* Move smartcard related parsing to core library
2022-01-11 12:34:43 +01:00
akallabeth
8c543b1de2
Added smartcard emulation layer
2022-01-11 12:34:43 +01:00
Armin Novak
3cc4a255d6
Fixed #7515 : Builds with -DWITH_PROFILER=ON
...
PROFILER_RENAME macro did lack trailing semicolon
2022-01-10 09:33:10 +01:00
Armin Novak
fd5ac4eed0
Cleaned up wnd.h includes
2021-12-23 14:27:12 +01:00
Armin Novak
0fb83a304d
Adjusted channelID and server SetVolume data types
2021-12-20 08:11:00 +01:00
Armin Novak
f3df9a520e
Fixed H264 related warnings
2021-12-20 08:11:00 +01:00
akallabeth
feb6d9ae5c
Set last error on activation timeout ( #7502 )
2021-12-17 17:28:41 +01:00
Armin Novak
d248b635a5
Added Redirect callback
2021-12-15 14:38:13 +01:00
Armin Novak
b545094664
Cleaned up redirection code
2021-12-15 14:38:13 +01:00
Armin Novak
223da39eac
Updated RDPDR version checks
2021-12-14 13:46:34 +01:00
akallabeth
b008e83179
Fixed API const correctness
2021-12-01 10:28:53 +01:00
Armin Novak
67f632982a
Fixed YUV decoder API
...
Need to verify widht and height more rigorously.
2021-11-15 09:23:00 +01:00
Steve Pronovost
78fd3b8d6c
Code review feedback from FreeRDP folks
...
Before rolling into path for easy review.
2021-10-21 13:11:21 +02:00
Steve Pronovost
bb7e4f220b
Add support for graphics redirection protocol
...
Add support for new graphics redirection protocol (aka VAIL) used by
WSLg. This protocol is currently being documented and the official
documentation will be posted in the near future.
2021-10-21 13:11:21 +02:00
Steve Pronovost
f6f4acc921
Added support for AUDIO_PLAYBACK_DVC
...
Support audio on dynamic channel. Please refer to MS-RDPEA.
2021-10-21 13:11:21 +02:00
Steve Pronovost
c5e4fc71bc
Update header with missing flag
...
Added definition for TS_RAIL_CLIENTSTATUS_GET_APPID_RESPONSE_EX_SUPPORTED.
2021-10-21 13:11:21 +02:00
Steve Pronovost
49d9e61884
Fix protocol violation when uploading large ICON
...
When uploading large ICON (96x96), we end up growing the stream
mid-update. Stream_EnsureCapacity end up reallocating the stream
with a larger capacity to accomodate the large ICON size, but in
doing so, also updating the sealed length for the data currently in
the stream. This breaks the assumption between update_begin_paint
and update_end_paint where the sealed lenght is used to keep track
of the location where we need to update the orders counts after
we're done accumulating update. As a result of the growth and lost
of that location, the number of orders is written to the wrong
location and the resulting stream is invalid which result in a
protocol violation and a connection drop.
The current fix uses a new offsetOrder in the update object to
keep track of where update_end_paint needs to write the number
of orders contained. I think a better fix would be for
Stream_EnsureCapacity to preserve the sealead length of the
stream on growth, but this has a much more significant impact and
careful analysis needs to be done to ensure this doesn't violate
other assumption. Need to follow up with FreeRDP developer to get
their take on this one.
2021-10-21 13:11:21 +02:00
Armin Novak
41d77cae46
Fixed /video buffer alignment, added assertions
2021-10-18 10:53:05 +02:00
Armin Novak
7d80c74e97
Cleaned up RDPDR channel interhitance
...
* All channels inheriting from RDPDR_DRIVE base struct
* Add functions to create/free a new device of a type
* Fixed settings array resize code, prevent 0 sizes
2021-10-18 09:21:02 +02:00