akallabeth
ef4c1766d2
[winpr,thread] implement SetThreadPriority
2024-05-24 15:44:17 +02:00
akallabeth
0b035d69e1
[winpr,wlog] fix format string
...
the millisecond format string should be "%03u" instead of "%02u"
2024-05-21 14:57:26 +02:00
akallabeth
48381d0d60
[winpr,utils] add json-c compat
...
for old json-c releases < 0.14.0 add a json_object_new_null replacement
2024-05-17 12:43:02 +02:00
akallabeth
4b3ecfac47
[winpr,utils] fix cJSON detection
...
* pkg-config sets CJSON_FOUND, check for that instead of the paths, which
might be unset or set to <var>-NOTFOUND
* move detection to own file. find_package targets are meant to be used
in same directory or below, but we define the WinPR target one above,
so include it in parent
2024-05-16 13:27:22 +02:00
Armin Novak
4bdc9ad950
[winpr,utils] fix cJSON fallback detection
2024-05-15 13:46:38 +02:00
akallabeth
de49d32004
[cmake] fallback detection for cJSON
2024-05-14 21:16:43 +02:00
akallabeth
1b735a5c17
[winpr,utils] add JSON parser wrapper
...
as we now support cJSON and json-c we need to wrap the functions we use.
also allows drop in replacements for older cJSON versions lacking
certain functions.
2024-05-14 20:45:25 +02:00
akallabeth
b6db375b9b
[winpr,utils] fix libjpeg const cast
...
libjpeg API is not const correct, so we need to cast away const
fixes #10175
2024-05-12 20:30:25 +02:00
akallabeth
15fc460c6f
[winpr,timezone] remove struct from struct DIR
...
fix #10176
2024-05-12 20:19:13 +02:00
akallabeth
a86ca848d5
[winpr,timezone] fix NULL strdup
2024-05-12 20:17:06 +02:00
Armin Novak
e272eb3966
[warnings] fix Wshadow warnings
2024-05-08 15:30:01 +02:00
akallabeth
1b8221e5bf
[warnings] fix various minor warnings
2024-05-08 14:53:39 +02:00
Armin Novak
474e3fa983
[winpr,timezone] fix missing const
2024-05-08 14:53:39 +02:00
akallabeth
95a7f5019a
[winpr,timezone] fix clang-tidy warnings
2024-05-08 10:08:08 +02:00
akallabeth
f9443a080e
[utils,doc] update timezone sync procedure
...
* add new C# utility to generate timezone mappings
* update procedure to follow for updating timezones
* remove obsolete TimeZones.csx script
* update generated files with new tool
2024-05-08 10:08:08 +02:00
akallabeth
277907d810
[winpr,timezone] add C# timezone extractor
2024-05-08 10:08:08 +02:00
akallabeth
cd18532f45
[winpr,timezone] add IANA to short mapping
...
* Add a generator for IANA and short zone name mappings.
* Add a function to get all IANA mappings for a short zone name.
2024-05-08 10:08:08 +02:00
akallabeth
52a884ed2e
[winpr,timezone] refactor timezone mapping
...
* add option to use ICU as a fallback mapping (eliminate need for
WindowsZones mapping list)
* extract timezone related settings from localtime_r and eliminate the
need to parse the complex TimeZones table
* Add new TimeZoneNameMap to map IANA to windows names (Id, Standard,
Daylight and Display names)
* Implement GetDynamicTimeZoneInformation
2024-05-08 10:08:08 +02:00
akallabeth
3049181d9b
[winpr,sspi] skip IP addresses for kerberos auth
...
kerberos requires hostnames to authenticate, if we connect with a IP
address do not try kerberos based authentication
2024-05-07 10:38:30 +02:00
akallabeth
9b6fcf728a
[winpr,asn1] fix undefined shift
2024-05-03 09:39:13 +02:00
akallabeth
8b382c8cec
[winpr,timezone] update
...
* update windowsZones.xml url
* update timezones
2024-04-23 09:54:52 +02:00
akallabeth
fed8943447
[pkcs11.h] remove extra-semi-stmt
2024-04-22 18:02:03 +02:00
Ondrej Holy
35d8bc1782
[winpr,ncrypt] use preferably p11-kit-proxy.so
...
Currently, the opensc-pkcs11.so library is used for ncrypt support.
However, the p11-kit-proxy.so library is able to aggregate more pkcs11
modules at runtime (OpenSC is one of them, but also some third party
modules that are not supported by OpenSC). Let's use preferably
p11-kit-proxy.so if available.
2024-04-22 17:42:52 +02:00
Ondrej Holy
5a28b046d5
[winpr,ncrypt] bundle pkcs11.h and drop pkcs11-helper dependency
...
The ncrypt implementation currently relies on the pkcs11-helper library.
That is not available on RHEL for example. Let's bundle the standardized
header file from https://github.com/latchset/pkcs11-headers to avoid the
need for extra dependency.
Related: https://github.com/FreeRDP/FreeRDP/discussions/9982
2024-04-22 17:42:52 +02:00
Ondrej Holy
cef3d5e9d4
[winpr,ncrypt] replace deprecated symbol
...
The CKK_ECDSA symbol is deprecated, it is recommended to use CKK_EC
instead. Let's do this as a preparation for the follow-up changes.
2024-04-22 17:42:52 +02:00
Ondrej Holy
73991c48ce
[winpr,ncrypt] obtain module path from provider
...
Currently, the module path is hardcoded in the build_pkinit_args function.
Let's obtain the module path from provider as a preparation for the
follow-up changes.
2024-04-22 17:42:52 +02:00
Ondrej Holy
79975cfbe3
[winpr,ncrypt] drop redundant library paths
...
The pkcs11 implementaion contains a list of the standard library paths
for various architectures and distribution. But that list also contains
just the opensc-pkcs11.so basename without path. Therefor I am conviced
that all those other entries can be simply dropped. Let's do that as
a preparation for the follow-up changes.
2024-04-22 17:42:52 +02:00
akallabeth
a1a8f832f4
[winpr,synch] fix extra-semi warning
2024-04-22 17:41:46 +02:00
akallabeth
1687a6424a
start-3.5.2-dev0
2024-04-22 11:18:39 +02:00
akallabeth
eda5c99686
release-3.5.1
2024-04-22 11:18:39 +02:00
akallabeth
4e756306b9
[winpr,timezone] fix unused result warnings
2024-04-21 11:00:47 +02:00
Mike Gilbert
445bd9a80c
winpr: fix fallback timezone name
...
Populate StandardName and DaylightName with 2-byte WCHAR values instead
of 4-byte wchar_t values on Linux.
2024-04-20 21:19:59 +02:00
Mike Gilbert
ca8c71a208
winpr: improve timezone detection when TZ is set
...
The TZ variable may either contain a direct timezone representation, or
a reference to a file in tzfile(5) format. Mapping a direct timezone
representation to a Windows timezone would be difficult.
According to tzset(3), a file reference should start with a colon, though
glibc treats it as optional. It may be an absolute path or a path relative
to /usr/share/zoneinfo. Adjust winpr_detect_windows_time_zone to accept
either.
2024-04-20 21:19:59 +02:00
akallabeth
71e78bedd7
[warnings] fixed sign and const
...
* fix various char/BYTE sign warnings
* fix various const warnings
* fix format string size_t
* remove unused CMake variables
2024-04-18 11:05:58 +02:00
Armin Novak
7f896b649e
[winpr,clipboard] fix resource leak
2024-04-17 18:47:16 +02:00
Armin Novak
28e9094f08
[gcc] fix missing malloc warning macros
...
* Add missing WINPR_ATTR_MALLOC
* Add missing WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
2024-04-17 18:47:16 +02:00
akallabeth
fdc253e909
start 3.5.1-dev0 cycle
2024-04-16 21:20:04 +02:00
akallabeth
cab5adde26
release-3.5.0
2024-04-16 21:20:04 +02:00
Armin Novak
2500fb7bfb
[cleanup] refactor some checks
2024-04-15 12:40:01 +02:00
Armin Novak
140b4d7fcb
[coverity] 1543161 Data race condition
2024-04-15 12:40:01 +02:00
Armin Novak
237dfcbd9f
[coverity] 1543163 Unintentional integer overflow
2024-04-15 11:30:31 +02:00
Armin Novak
a75ddcc091
[coverity] 1543036 Unintentional integer overflow
2024-04-15 11:30:31 +02:00
Armin Novak
98fa2d406d
[coverity] 1543226 Data race condition
2024-04-15 11:30:31 +02:00
Armin Novak
e4498df607
[coverity] 1543089 Data race condition
2024-04-15 11:30:31 +02:00
Armin Novak
e3f3f85391
[coverity] 1543117 Argument cannot be negative
2024-04-15 11:30:31 +02:00
akallabeth
0c9fb50170
[coverity] fix unchecked return
2024-04-12 13:30:35 +02:00
akallabeth
2c7a5f7bee
[winpr,env] WINPR_ATTR_MALLOC
...
mark the free functions for environment strings
2024-04-12 13:30:35 +02:00
akallabeth
c9850bb299
[coverity] 1543134 Explicit null dereferenced
2024-04-12 12:41:42 +02:00
akallabeth
8f9707897c
[coverity] 1543219 Dereference before null check
2024-04-12 12:41:42 +02:00
akallabeth
0304897f7b
[coverity] 1543175 Dereference null return value
2024-04-12 12:41:42 +02:00
akallabeth
dba673b678
[coverity] 1543077 Dereference null return value
2024-04-12 12:41:42 +02:00
akallabeth
9ced090cea
[coverity] 1543043 Dereference null return value
2024-04-12 12:41:42 +02:00
akallabeth
68f0e0a325
[winpr] WINPR_ATTR_MALLOC HANDLE functions
...
mark functions creating handles with WINPR_ATTR_MALLOC to ensure
compiler checks for proper handle close
2024-04-12 12:41:42 +02:00
akallabeth
0a34b1e95d
[coverity] 1543271 Explicit null dereferenced
2024-04-12 09:45:09 +02:00
akallabeth
0c7537c840
[coverity] 1543230 Missing unlock
2024-04-12 09:45:09 +02:00
akallabeth
6217076b47
[coverity] 1543030 Dereference before null check
2024-04-12 09:45:09 +02:00
akallabeth
f9d4b75610
[coverity] 1543101 Resource leak
2024-04-12 09:45:09 +02:00
akallabeth
e9e9e42a71
[coverity] 1543211 Resource leak
2024-04-12 09:45:09 +02:00
akallabeth
3a76eccf16
[coverity] 1543171 Resource leak
2024-04-12 09:45:09 +02:00
akallabeth
79d3825df0
[coverity] 1543256 Dereference null return value
2024-04-12 09:45:09 +02:00
akallabeth
61062128e2
[coverity] 1543067 Out-of-bounds read
2024-04-12 09:45:09 +02:00
akallabeth
e063d26bfe
[coverity] 1543053 Resource leak
2024-04-12 09:45:09 +02:00
akallabeth
960b35d09c
[coverity] 1543038 Resource leak
2024-04-12 09:45:09 +02:00
akallabeth
19d9afc0b4
[coverity] 1543289 Double free
2024-04-12 09:45:09 +02:00
akallabeth
d865321571
[coverity] 1543221 Resource leak
2024-04-11 12:04:07 +02:00
akallabeth
8bef31fdae
[coverity] 1543108 Resource leak
2024-04-11 12:04:07 +02:00
akallabeth
843ecfc01a
[coverity] 1543172 Pointer to local outside scope
2024-04-11 12:04:07 +02:00
akallabeth
3997eeb5b3
[coverity] 1543227 Readlink used insecurely
2024-04-11 12:04:07 +02:00
akallabeth
3b04ab95d4
[coverity] 1543146 Use after free
2024-04-11 12:04:07 +02:00
akallabeth
9768a5f48f
[coverity] 1543257 Buffer not null terminated
2024-04-11 12:04:07 +02:00
akallabeth
4a56e2f74c
[winpr,kerberos] use profile_abandon
...
suggested by @greghudson to just release the profile and not flush
changes back to config file. See #9766
2024-04-03 15:37:43 +02:00
Armin Novak
18612bb513
[mingw] fix missing shlwapi link
2024-04-02 09:31:55 +02:00
Kai Pastor
4b52dfd70c
Add #include to declare winpr_strerror
2024-04-01 09:31:57 +02:00
akallabeth
678ff144ab
[cmake] unify windows resource file generation
...
* use a macro to add resource files for executables and shared libraries
* use that macro to declare targets
* use that macro to set library/binary versioning
* use that macro to set target output name
* use a macro to create manpages and names
2024-03-20 11:17:18 +01:00
akallabeth
09ff2966af
[cmake] unify BSD related configuration in PlatformDefaults.cmake
2024-03-20 09:11:08 +01:00
akallabeth
92ed8b3916
[winpr,timezone] outside definition timezone file
...
allow defining the filepath of timezone file in buildsystem adjusting it
without a required code change.
2024-03-20 09:11:08 +01:00
akallabeth
f4b7c59915
[cmake] move platform defines to common include
...
* Move platform specific settings to a common CMake include
2024-03-20 09:11:08 +01:00
akallabeth
1bf3f5335e
[winpr,file] clean up FileSetFileTime
...
* Split POSIX and BSD implementations
* Add stub for unuspported platforms
2024-03-20 09:11:08 +01:00
Kai Pastor
c8c70ad730
Don't remove duplicate link libs
2024-03-19 08:33:54 +01:00
akallabeth
91b143be54
[winpr,clipboard] fix WCHAR buffer size
2024-03-18 22:33:54 +01:00
akallabeth
4b73e7525c
[winpr,crt] fix incompatible WCHAR pointer
2024-03-18 13:27:32 +01:00
akallabeth
199b51cebb
[winpr,smartcard] fix incompatible PCSC_SCardListReaders pointer
2024-03-18 13:27:32 +01:00
akallabeth
18ce4b35ce
[winpr,clipboard] fix incompatible WCHAR pointer
2024-03-18 13:27:32 +01:00
akallabeth
1c0bab542b
[winpr,sysinfo] clock_gettime is available since POSIX 1993
2024-03-18 08:52:22 +01:00
akallabeth
8df13033d5
start 3.4.1-dev0 cycle
2024-03-14 11:28:33 +01:00
akallabeth
708f376489
release-3.4.0
2024-03-14 11:28:33 +01:00
akallabeth
d87d598305
[winpr] add WINPR_ALIGN64 defines
...
Add defines to aling struct members to 8 bytes
2024-03-12 14:24:36 +01:00
Kai Pastor
f2f9c59b01
Disable WINPR_THREAD_POOL for mingw 7
2024-03-12 09:39:45 +01:00
Kai Pastor
47354c4519
Fix MSVC arm64
2024-03-12 08:40:42 +01:00
akallabeth
4732f379d4
[winpr,sysinfo] unify time function use
...
* Add new function winpr_GetTickCount64NS for high resolution tick
count with (up to) nanosecond resolution
* Add new function winpr_GetUnixTimeNS for high resolution system time
as nanoseconds since 1.1.1970
* Replace use of clock_gettime and gettimeofday in whole project with
these new functions
* Add new macros WINPR_TIME_NS_TO_* and WINPR_TIME_NS_REM_* to convert
the nano second count to less resolution or get the remainder in the
desired resolution
2024-03-11 09:54:10 +01:00
akallabeth
d8c0e7546e
[winpr,utils] allow quoted sub arguments
...
fixes #9890 .
2024-02-27 14:15:56 +01:00
akallabeth
f5704e025f
start development cycle 3.3.1-dev0
2024-02-22 15:18:30 +01:00
akallabeth
a1d8b55048
update release to 3.3.0
2024-02-22 15:18:30 +01:00
akallabeth
43eae6029f
[clang-tidy] fix various review warnings
2024-02-22 12:31:50 +01:00
akallabeth
d7ebec5a65
[tidy] move loop variable declaration to loop
2024-02-22 12:31:50 +01:00
Armin Novak
f51fdb2813
[winpr,clipboard] support alternate bitmap mime types
2024-02-22 09:33:59 +01:00
Armin Novak
894474b161
[winpr,utils] improve winpr image API
...
* Add checks for bitmap read functions
* Add more unit tests
* Do not expose internals to WinPR
2024-02-22 09:33:59 +01: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
d0dc657412
[build] delete unused static functions
2024-02-15 11:49:16 +01:00
akallabeth
0e44b2c674
[clang-tidy] clang-analyzer-unix.Malloc
2024-02-15 11:49:16 +01:00