Commit Graph

2329 Commits

Author SHA1 Message Date
David Fort
2f64d02272
Merge pull request #7046 from awakecoding/wlog-robustness
Add WLog locks to prevent logger initialization race conditions
2021-05-28 17:43:00 +02:00
Marc-André Moreau
79c469bd7a Add WLog locks to prevent logger initialization race conditions 2021-05-28 09:27:24 -04:00
Marc-André Moreau
1f1ce81b22 Gracefully handle edge case where clipboard format name is NULL 2021-05-28 10:42:31 +02:00
Marc-André Moreau
af08701c10 Avoid seeking when reading Android timezone identifier 'file' 2021-05-28 10:21:13 +02:00
Marc-André Moreau
a8355d4117 Improve pthread_mutex_timedlock detection, fix Android function definition 2021-05-28 09:24:33 +02:00
Marc-André Moreau
eb6777ea69 Fix Windows Unicode file path handling issues (+add winpr_fopen wrapper) 2021-05-26 08:40:29 +02:00
Marc-André Moreau
29760a9009 Fix possible WSAEventSelect() file descriptor leak 2021-05-26 08:26:06 +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
akallabeth
997ea7e09d Increased thread test run time to fix failing mac tests 2021-05-25 08:54:09 +02:00
Armin Novak
6f2c6625e4 Added FREERDP/WINPR prefix to define GIT_REVISION 2021-05-18 13:37:34 +02:00
David Fort
ab4fe21439 winpr: add a HashTable_Foreach function and associated tests
This useful functions allows to browse all value pairs of a hashtable without
having to allocate some memory for keys and then retrieving each element.
It may also make sense with synchronized hashtables because before you were forced to
HashTable_GetKeys() and then HashTable_GetItemValue() which is locking again for each
element of the table.
2021-05-17 09:29:25 +02:00
Ondrej Holy
26bf2816c3 Fix FIPS mode support and build with OpenSSL 3.0
FreeRDP fails to build with OpenSSL 3.0 because of usage of the `FIPS_mode`
and `FIPS_mode_set` functions, which were removed there. Just a note that
the FIPS mode is not supported by OpenSSL 1.1.* although the mentioned
functions are still there (see https://wiki.openssl.org/index.php/FIPS_modules).
Let's make FreeRDP build with OpenSSL 3.0 and fix the FIPS mode support.

See: https://bugzilla.redhat.com/show_bug.cgi?id=1952937
2021-05-17 08:51:05 +02:00
akallabeth
d4ebf8546f Cleaned up crypto API 2021-05-11 08:00:18 +02:00
akallabeth
b494a193db Refactored certificate API:
* Proper encapsulation
* known_hosts2 backend extended (storing PEM)
* New backend storing each host certificate in a file
2021-05-11 08:00:18 +02:00
akallabeth
ab49694101 Added new RDP file options 2021-05-11 07:59:05 +02:00
akallabeth
b83e3bf61c Fix uninitialized variable warnings. 2021-04-28 17:12:24 +02:00
Biswapriyo Nath
a3a89a43f7 Fix intialization, remove some unused variables. 2021-04-28 17:11:31 +02:00
Biswapriyo Nath
3a1168cbda Check _MSC_VER for MSVC specific pragma directives. 2021-04-28 17:11:31 +02:00
Ondrej Holy
637413daf4 winpr/utils/lodepng: Fix USE_AFTER_FREE reported by Coverity
Although the `lodepng_zlib_compress` function expects the `*out` parameter
to be `NULL`, it uses `uvector_init_buffer` internally, which takes the
`*out` value. This confuses covscan, which consequently reports the following
defects:

```
double_free: Calling "ucvector_cleanup" frees pointer "zlibdata.data" which has already been freed.
double_free: Calling "ucvector_cleanup" frees pointer "compressed.data" which has already been freed.
double_free: Calling "ucvector_cleanup" frees pointer "compressed_data.data" which has already been freed.
```

Let's use the `uvector_init` function instead as in other cases to make
covscan happy and to make the code more bulletproof. Consequently, also
remove the outdated comments.
2021-04-27 14:25:20 +02:00
Armin Novak
18ceebb774 Simplified sync test 2021-04-27 11:48:39 +02:00
akallabeth
d4ae65dbb5 Added version to client log, removed build_date 2021-04-22 14:07:37 +02:00
David Fort
db02de2d8b
winpr: fix error path in winpr_event_init (#6974) 2021-04-22 11:57:44 +02:00
David Fort
5e3e2cd9fd winpr: fix #6970
Timer changes were wrong when timerfd support is not available (no valid file
descriptor returned by GetFd calls).
2021-04-22 10:32:02 +02:00
Martin Fleisz
b7c4ec759f event: Fix reset of non eventfd winpr event 2021-04-20 13:51:55 +02:00
akallabeth
2ea7ac0c06 Unified bin to hex and hex to bin conversion
* Added new functions in WinPR
* Added unit tests for new functions
* Replaced existing (internal) conversion functions
2021-04-19 10:45:21 +02:00
Armin Novak
c4b3d53a9a Fix NTLM auth message return code. 2021-04-16 16:34:17 +02:00
Armin Novak
4a9efacc65 Fixed duplicate call to NtCurrentTeb 2021-04-16 16:34:17 +02:00
akallabeth
b500800104 Cleaned up SAM file parser. 2021-04-16 16:22:39 +02:00
akallabeth
5075539022 Fixed log filter initialization from env 2021-04-16 16:18:07 +02:00
akallabeth
ef6e4c0570
ADDIN_ARGV cleanup, added camera setting to RDP parser (#6947)
* Added camerastoredirect to RDP parser

* Refactored ADDIN_ARGV handling

* Added ADDIN_ARGV unit tests
2021-04-12 10:38:40 +02:00
David Fort
aeba30a505 winpr: correctly implement APC
This patch implements APC functions and fixes waitable timers with completions.
2021-04-07 08:15:16 +02:00
David Fort
dfbbf3b618 winpr: cleanup polling code
Externalize all the polling logic in a pollset component. This patch prepares the
support of APC and alertable state.
2021-04-07 08:15:16 +02:00
akallabeth
c8b32f65ad Force close clipboard file descriptor if request size is 0 2021-04-01 18:07:31 +02:00
akallabeth
88e8a71e33 Force close clipboard files 2021-04-01 18:07:31 +02:00
akallabeth
7a8a89d4d0 Force fd close on error 2021-04-01 18:07:31 +02:00
akallabeth
76047bed25 Cleaned up clipboard file fd handling 2021-04-01 18:07:31 +02:00
akallabeth
f346793970 Refactored encoder functions to return changed areas 2021-03-01 11:52:07 +01:00
Armin Novak
7365330275 Fixed memory leak in backtrace function 2021-02-25 14:17:24 +01:00
sss
6574fdf6e4 reverted changes from clang-format 2021-02-25 14:05:40 +01:00
Gluzskiy Alexandr
bee2e1526d allow to use in single threaded mode
(some client side channels and all server side channels still need to be
ported to new api)

server: build fix, do not disable threads for rfx encoder

cliprdr client channel: implemented support for DisableThreads option
looks like thread does not make sense at all for this channel

do not initialize disabled image codecs (respect settings)

channels: client: rail: added support for DisableThreads setting

changed "BOOL DisableThreads" to "UINT32 ThreadingFlags"
dropped unnecessary apu changes

draft implementation of threading settings aware message handling api
for addins/channels

rail: use new messaging api

fixed memory leak

msgs handlers external api changes (as requested)

msgs_handlers: init fix

fixed memory leak

logic fix

resolved problems appeared after rebase to master, dropped unnecessary
changes

git clang-format origin/master

fixed TestFreeRDPCodecRemoteFX.c

"formatting, run `clang-format` please"

properly use new "rfx_context_new(BOOL, UINT32)" everywhere

passed Threading Flags to "rfx_context_new" where available

in older C standarts veriables declaration must be done before any code

requested changes

clang-format as requested

use broken signatures of standert C functions for m$ s**tos

clang-format

requested changes

requested changes

moved ThreadingFlags to stable api zone

define type for channel msg handler

typo fix

clang-format

build fix

us ThreadingFlags from server settings

git clang-format origin/master

clang-format
2021-02-25 14:05:40 +01:00
akallabeth
43311130a2 Fixed CodeQL warnings 2021-02-19 11:19:49 +01:00
Armin Novak
7b211e5258 Fixed #6821: _stricmp does not like NULL strings 2021-02-17 16:45:56 +01:00
akallabeth
e2fd9db0b5 Added const to function arguments 2021-02-17 11:29:56 +01:00
akallabeth
1dae0552d7 Fixed various warnings 2021-02-16 16:28:57 +01:00
Armin Novak
2e5c09f209 Updated windows time zones 2021-02-11 2021-02-11 16:16:42 +01:00
akallabeth
bad20340cc Fixed issue with GetAttr where the result buffer was not allocated 2021-02-10 10:36:51 +01:00
akallabeth
8217f5a9e3 Fixed SCardTransmit return 2021-02-10 10:36:51 +01:00
akallabeth
9ff0071b2e Fixed SCardState wrapper 2021-02-10 10:36:51 +01:00
akallabeth
6cf5ba4736 Unified smartcard handle converstion 2021-02-10 10:36:51 +01:00
akallabeth
a4bf477cca Fixed double free in PCSC_SCardGetAttrib_FriendlyName 2021-02-10 10:36:51 +01:00