120 Commits

Author SHA1 Message Date
Armin Novak
0d99896094 [core,return] improve return value checks
propagate error conditions back the call chain
2026-03-03 17:15:12 +01:00
Armin Novak
0f46216a24 [winpr,ssl] check winpr_InitializeSSL return 2026-03-02 11:21:21 +01:00
Armin Novak
89ab3c6c1b [nodiscard] Fix all winpr_RAND usages
* Check return value and act on it.
* Initialize arrays that were missed before.
2026-02-27 15:52:26 +01:00
Armin Novak
5c510af477 [c23,freerdp] replace NULL with nullptr 2026-02-26 15:06:27 +01:00
Armin Novak
0531803808 [warnings] make function declaration names consistent
Use the same parameter names for declaration and implementation.
2026-02-26 10:35:25 +01:00
Armin Novak
48267edf2f [winpr] add WINPR_C_ARRAY_INIT
since C23 allows c++ style initializing replace direct use with this
macro
2026-02-25 19:23:08 +01:00
Armin Novak
79498a0d15 [common,assistance] remove extra braces 2026-02-10 15:53:04 +01:00
akallabeth
eb4c22cbe0 [c,printf] fix wlog format string to match arguments 2026-01-16 11:41:02 +01:00
Armin Novak
f8ac8fb7b6 [c,warnings] fix unterminated string warnings
initialize variables as array to avoid warnings with gcc >= 15 or clang
2026-01-08 11:32:47 +01:00
Armin Novak
c3faabebec [clang,warnings] fix Wjump-misses-init 2026-01-08 11:32:36 +01:00
akallabeth
65f18983ed [warnings] Fix format string errors
* Fix casts of format string arguments (%p requires void*)
* Fix format string to match type of arguments
2025-08-13 15:09:48 +02:00
akallabeth
74cd8d8fe0 [freerdp,warnings] fix -Wunused-parameter 2025-02-13 15:53:54 +01:00
akallabeth
cc934795e4 [warnings] fix integer casting
* use asserting casts to detect overflows or sign conversions
* code cleanup for issues uncovered by casts
2025-01-01 12:58:34 +01:00
akallabeth
a3db26c57a [warnings] fix cast warnings 2024-12-10 17:26:37 +01:00
akallabeth
f63a5a5a1f [winpr,endian] Use new winpr_Data_Write_* names 2024-12-08 22:55:58 +01:00
akallabeth
89810b3d96 [common,assistance] fix endianess issues 2024-12-08 22:55:53 +01:00
akallabeth
d5a01a9bf8 [common,assistance] fix endianess issue 2024-12-08 22:55:48 +01:00
akallabeth
2a41730f70 [common,assistance] replace winpr_Cipher_New
* use winpr_Cipher_NewEx where possible
* use winpr_RC4_New where RC4 is used
2024-10-30 13:22:55 +01:00
akallabeth
8b3f807a0a [warnings] fix format warnings 2024-10-17 20:47:29 +02:00
akallabeth
a1cef8dd85 [warnings] silence and fix unused results 2024-09-14 21:29:28 +02:00
akallabeth
16cec716e0 [strtok] replace function with strtok_s
Since strtok is not thread safe replace it with strtok_s (WinPR wrapper
around strtok_r for systems not supporting the ISO function names)
2024-09-13 21:19:17 +02:00
akallabeth
2638d9d894 [warnings] fix casts 2024-09-12 13:30:00 +02:00
akallabeth
c9b0c9ecd5 [warnings] remove unused variables 2024-09-12 10:08:10 +02:00
akallabeth
ae95b66922 [warnings] fix portability [cm]alloc size 0 2024-09-11 20:50:33 +02:00
akallabeth
baa70d1ab6 [warnings] fix compare integers of different signs 2024-09-03 15:10:46 +02:00
akallabeth
852e0c1450 [common,assistance] fix shadowed variable 2024-09-03 12:17:33 +02:00
akallabeth
3674c5c2f7 [common,assistance] eliminate pedantic cast warnings 2024-08-30 15:40:10 +02:00
akallabeth
36c3184a0f [warnings] fix clang-tidy issues in libfreerdp 2024-08-29 15:34:22 +02:00
akallabeth
9c9d74e920 [warnings] fix redundant casts 2024-08-29 12:03:09 +02:00
akallabeth
1d33095500 [warnings] fix cert-err33-c
Fix unused return values, cast to void if on purpose
2024-08-29 10:19:27 +02:00
Armin Novak
e272eb3966 [warnings] fix Wshadow warnings 2024-05-08 15:30:01 +02:00
akallabeth
b894199f72 [winpr,collections] add generic string clone functions
The ArrayList, HashTable, ... New functions require
void* (*fkt)(const void* ptr) type functions. Provide a generic wrapper
for CHAR and WCHAR strdup to eliminate warnings. Also export a
corresponding free function to avoid issues with runtime
differences.
2024-02-15 11:49:16 +01:00
akallabeth
0e44b2c674 [clang-tidy] clang-analyzer-unix.Malloc 2024-02-15 11:49:16 +01:00
akallabeth
0ba995655d [clang-tidy] cppcoreguidelines-init-variables 2024-02-15 11:49:16 +01:00
akallabeth
207def5c56 [clang-tidy] readability-isolate-declaration 2024-02-15 11:49:16 +01:00
akallabeth
ba8cf8cf21 [build] fix Wmismatched-deallocator warnings
With custom malloc function attributes the fail path in the _New
functions produces warnings due to allocator mismatches. Silence them.
2024-02-05 08:16:55 +01:00
akallabeth
c2f4ad80a5 [common,settings] fix TargetNetAddresses usage
* use a common function to allocate both, TargetNetAddresses and
  TargetNetPorts
* unify handling, utilize helper functions as much as possible
2024-01-09 15:18:37 +01:00
akallabeth
fbc25978ae [common,assist] fix file parser (Fixes #9726)
* only append N or U entry if it was found
* append port for N and U entries
2024-01-04 10:50:12 +01:00
akallabeth
dd2d110870 [warnings] fix -Wcast-qual 2023-11-24 18:19:03 +01:00
akallabeth
4fb7035242 [common,assistance] fix shadowed variable 2023-06-29 18:34:51 +02:00
akallabeth
1fc0d5b4b1 [winpr] remove casts for winpr_RAND calls 2023-06-21 09:57:52 +02:00
Armin Novak
e264512220 [common,assistance] fix missing NULL check 2023-06-19 09:24:18 +02:00
akallabeth
18df3176e1 [common,assistance] fix assistance file parser
* ensure a valid delimiter is following the token searched for
* add a test case to ensure this works
2023-06-16 09:14:10 +02:00
Armin Novak
010e1252c4 [common,assistance] fix NULL argument for strstr 2023-06-14 13:50:59 +02:00
akallabeth
89bbed83db [common,assistance] clean up assistance file parser 2023-06-13 10:03:57 +02:00
Sergey Bronnikov
d8254c5ff3 [libfreerdp] Fix msan's use-of-uninitialized-value
Uninitialized bytes in __interceptor_strlen at offset 0 inside [0x701000000040, 1)
==220==WARNING: MemorySanitizer: use-of-uninitialized-value
    #0 0x535c13 in freerdp_assistance_hex_string_to_bin /src/FreeRDP/libfreerdp/common/assistance.c:711:11
    #1 0x533deb in LLVMFuzzerTestOneInput /src/FreeRDP/libfreerdp/common/test/TestFuzzCommonAssistanceHexStringToBin.c:5:15
    #2 0x43f5f3 in fuzzer::Fuzzer::ExecuteCallback(unsigned char const*, unsigned long) /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerLoop.cpp:611:15
    #3 0x4409a4 in fuzzer::Fuzzer::ReadAndExecuteSeedCorpora(std::__Fuzzer::vector<fuzzer::SizedFile, std::__Fuzzer::allocator<fuzzer::SizedFile> >&) /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerLoop.cpp:804:3
    #4 0x440e79 in fuzzer::Fuzzer::Loop(std::__Fuzzer::vector<fuzzer::SizedFile, std::__Fuzzer::allocator<fuzzer::SizedFile> >&) /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerLoop.cpp:857:3
    #5 0x4304df in fuzzer::FuzzerDriver(int*, char***, int (*)(unsigned char const*, unsigned long)) /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerDriver.cpp:912:6
    #6 0x459b32 in main /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerMain.cpp:20:10
    #7 0x7effc08bb082 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x24082) (BuildId: 1878e6b475720c7c51969e69ab2d276fae6d1dee)
    #8 0x420f1d in _start (/tmp/not-out/tmpu5o6go0a/TestFuzzCommonAssistanceHexStringToBin+0x420f1d)
2023-06-07 14:25:57 +02: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
garbb
fff93f62ed fix freerdp_assistance_parse_address_list parsing (#8147)
* fix remote assistance connection string1 parsing 

Fails to parse when connection string only has one host:port because there is no ";" character. Also when multiple host:port;host:port it skip first host:port and parses remaining host:port as ";host:port...end" of connection string:
eg:
;192.168.93.138:49626;192.168.93.139:49627;192.168.93.140:49628
;192.168.93.139:49627;192.168.93.140:49628
;192.168.93.140:49628

* Update assistance.c

* Update assistance.c

* Update assistance.c
2022-09-09 09:27:52 +02:00
garbb
6b62ce9200 unescape &amp; in PassStub (#8183)
* unescape &amp; in PassStub

windows sometimes creates .msrcincident file with escaped ampersand as `&amp;` in PassStub. Need to unescape or server will deny connection and complain about incorrect password.

* Update assistance.c
2022-09-08 09:52:36 +02:00