Commit Graph

17994 Commits

Author SHA1 Message Date
Armin Novak
88697183b9 [winpr,unicode] simplify unicode functions 2023-11-24 18:19:03 +01:00
Armin Novak
4fd7a5cf16 [channels,tsmf] fix ffmpeg deprecation 2023-11-24 18:19:03 +01:00
Armin Novak
2e9ee7a583 [channels,rdpsnd] fix missing include 2023-11-24 18:19:03 +01:00
Armin Novak
9449c8c3df [server,shadow] fix opaque settings build 2023-11-24 18:19:03 +01:00
Armin Novak
615604e8f2 [uwac] use posix functions 2023-11-24 18:19:03 +01:00
Armin Novak
854df33db1 [warnings] fix log_libusb_result empty format string 2023-11-24 18:19:03 +01:00
akallabeth
ceb7bd1d41 [warnings] fixed clang build warnings 2023-11-24 18:19:03 +01:00
Armin Novak
8e7561534e update settings 2023-11-24 14:54:56 +01:00
Armin Novak
4d50d59e7e [settings] renamed VirtualChannelCompressionFlags 2023-11-24 14:54:56 +01:00
Armin Novak
37bd7e0959 [settings] renamed VirtualChannelChunkSize
in [MS-RDPBCGR] it is named VCChunkSize
2023-11-24 14:54:56 +01:00
Armin Novak
3e9aad58f9 [common,settings] add documentation and missing API
* added freerdp_settings_are_valid for batch checks
* added missing settings function documentation
2023-11-24 14:54:56 +01:00
Armin Novak
1a5cea0023 [common,codecs] use an enum to define codecs 2023-11-24 14:54:56 +01:00
akallabeth
6eb4ff6212 [server,proxy] fix pf_context_copy_settings
possible memory leaks in failure case fixed
2023-11-24 14:54:56 +01:00
akallabeth
093d722447 [settings] assert invalid keys in getter 2023-11-24 14:54:56 +01:00
akallabeth
14ca8c736b [settings] assert invalid keys in getter 2023-11-24 14:54:56 +01:00
Armin Novak
704ee8bc4b [settings] add unused values and sign correct keys
* add -1 as unused enum entry
* change key parameter type from size_t to SSIZE_T
2023-11-24 14:54:56 +01:00
Armin Novak
6e6559c41a [settings] fix type mismatch warnings 2023-11-24 14:54:56 +01:00
Armin Novak
cda6239119 [settings] update generated settings helper 2023-11-24 14:54:56 +01:00
Armin Novak
8e9b6a9201 [settings] update test generator script 2023-11-24 14:54:56 +01:00
Armin Novak
81d7558184 [settings] remove obsolete generator script 2023-11-24 14:54:56 +01:00
Armin Novak
593e2bf4a9 [api] fix compiler warnings
check #if defined(__GNUC__)
2023-11-24 14:54:56 +01:00
akallabeth
cd4d77af86 [settings] add deprecation warnings
direct struct access to rdpSettings now produces warnings if not
explicitly deactiaved by defining FREERDP_SETTINGS_INTERNAL_USE
2023-11-24 14:54:56 +01:00
akallabeth
4e438d1c3e [client] make settings opaque 2023-11-24 14:54:56 +01:00
akallabeth
1f236ade7a [server] make settings opaque 2023-11-24 14:54:56 +01:00
akallabeth
eb445f7c43 [channels] make settings opaque 2023-11-24 14:54:56 +01:00
akallabeth
130501fcd5 [core,bitmap] make settings opaque 2023-11-24 14:54:56 +01:00
akallabeth
f068b6fc99 [utils,smartcard] make settings opaque 2023-11-24 14:54:56 +01:00
akallabeth
1163cc4d5c [core] add internal settings.h include 2023-11-24 14:54:56 +01:00
akallabeth
82eefe0bd1 [settings] auto generate key types from struct
* use enum types for settings getter/setter to have compiler check if
  keys are valid
* generate enum types from struct at compile time
* CMake option WITH_OPAQUE_SETTINGS to hide rdpStruct implementation
  from external projects
2023-11-24 14:54:56 +01:00
akallabeth
fc79519741 [settings] clean up string helper 2023-11-24 14:54:56 +01:00
akallabeth
71a7ffa8d8 [settings] add freerdp_settings_append_string
this function appends a string to an existing values, takes care of
memory allocations.
2023-11-24 14:54:56 +01:00
akallabeth
a9a879c59f [settings] remove freerdp_settings_take_string
this function is problematic as it allows mixing allocators.
2023-11-24 14:54:56 +01:00
akallabeth
ecc21a2cfc [settings] add freerdp_settings_copy_item
convenience function to copy a value of opaque type from one settings
struct to another, cleaning up possible existing data first
2023-11-24 14:54:56 +01:00
Martin Fleisz
13d35c8a98 client/common: Return NULL/-1 if settings value was not set 2023-11-23 18:05:19 +01:00
Armin Novak
25035b094d [client,common] support redirectlocation in rdp files 2023-11-22 13:01:10 +01:00
Armin Novak
c91428abf7 [ci] remove unused dependency 2023-11-22 10:38:16 +01:00
Armin Novak
1048ad4003 [scard] allow INFINITE timeout 2023-11-21 15:54:01 +01:00
akallabeth
dd8fce1c9e [packaging] enable opus support for nightly 2023-11-21 14:29:47 +01:00
akallabeth
84c3e5b027 [cmake] fix pkg-config check 2023-11-21 14:29:47 +01:00
akallabeth
8309b95fec [ci] update codeql deps 2023-11-21 14:29:47 +01:00
Pascal Nowack
9c3dfefb7f codec/dsp: Also set bitrate for Opus encoder 2023-11-21 14:29:47 +01:00
akallabeth
26e003ce05 [codec,dsp] experimental opus encoder 2023-11-21 14:29:47 +01:00
akallabeth
c2c40ae2ff [codec,dsp] initial support for ffmpeg/opus 2023-11-21 14:29:47 +01:00
akallabeth
7a05d85a7f [codec,dsp] unify opus sample rate check 2023-11-21 14:29:47 +01:00
akallabeth
a232cec690 [codec,dsp] fix opus related code
* proper library detection
* default to NOT WITH_DSP_FFMPEG
* disable if WITH_DSP_FFMPEG
2023-11-21 14:29:47 +01:00
Pascal Nowack
330f7ae0a2 codec/dsp: Add support for decoding Opus encoded streams
The Opus codec is a modern free audio codec, that is also royalty-free.
Adding support for it will allow clients and servers supporting it to
transfer audio in similar efficient way like with AAC.
So, add support it.
2023-11-21 14:29:47 +01:00
akallabeth
3ca26384ee [core] only move state on demand active
rdp_client_connect_demand_active returns STATE_RUN_ACTIVE if we received
it, some other return otherwise
2023-11-21 13:54:29 +01:00
akallabeth
0ee61dcb62 [core,connection] improve parsing of demand active
Split up parsing, so we don´t have to reread the data.
2023-11-21 13:54:29 +01:00
akallabeth
e3a84921de [core,gateway] fix TSG_PACKET_TYPE_QUARENC_RESPONSE
parsing of TSG_PACKET_TYPE_QUARENC_RESPONSE was incomplete, fix that
2023-11-20 18:00:42 +01:00
Armin Novak
e451b4cad1 [core,gateway] rpc use generated session id 2023-11-20 18:00:42 +01:00