* oss: fix function signature
* autodetection - if only /sound is given all enabled
plugins are tried in order and the first successful loaded is used.
- this restores the previous behavior
* alsa/pulse fix command line parsing - no parameters shouldn't be
treated as error
The rdpContext gets an event which will
get set if an error occoured in a channel.
If a thread or a void callback has to report an
error it will get signaled by this system.
winsock.h pulls in a lot of defines and dependencies that are not
required and partially unwanted in winpr's core (for parts that are not
related to network). In order to get rid of this dependency and have an
independent defines for extended winpr functions the WINPR_FD_* defines
are used internally (and for exposed functions). Where required, like in
WSAEventSelect, the FD_* is mapped to WINPR_FD_*.
This patch adds some checks for the TSMF channel:
* checks malloc / calloc / strdup / _strdup return value
* checks for available bytew before reading in a stream
This patch adds checks for the sound channel and plugins:
* checks for protocol bytes;
* checks for malloc/calloc;
* be more strict when interacting with sound plugin
This patch contains:
* checks for malloc return value + treat callers;
* modified malloc() + ZeroMemory() to calloc();
* misc fixes of micro errors seen during the code audit:
** some invalid checks in gcc.c, also there were some possible
integer overflow. This is interesting because at the end the data are parsed
and freed directly, so it's a vulnerability in some kind of dead code (at least
useless);
** fixed usage of GetComputerNameExA with just one call, when 2 were used
in misc places. According to MSDN GetComputerNameA() is supposed to return
an error when called with NULL;
** there were a bug in the command line parsing of shadow;
** in freerdp_dynamic_channel_collection_add() the size of array was multiplied
by 4 instead of 2 on resize