Bernhard Miklautz [Tue, 23 Jun 2015 08:14:11 +0000 (10:14 +0200)]
nla and cmdline: integrated feedback
* fix possible problems with 0 size lengths
* add return value checks
Bernhard Miklautz [Mon, 22 Jun 2015 17:31:25 +0000 (19:31 +0200)]
windows: fix compilation and warnings
Bernhard Miklautz [Mon, 22 Jun 2015 16:52:13 +0000 (18:52 +0200)]
misc: integrate pull request feedback
Bernhard Miklautz [Mon, 22 Jun 2015 12:26:11 +0000 (14:26 +0200)]
client/locale: properly check popen return value
popen returns NULL if an error occurs and not < 0.
Bernhard Miklautz [Mon, 22 Jun 2015 10:09:18 +0000 (12:09 +0200)]
client/android: reset debug level to default
* WLOG debug level was hard coded to DEBUG which generates a lot of
noise
* remove indecent and unneeded debug message
Bernhard Miklautz [Fri, 19 Jun 2015 08:38:37 +0000 (10:38 +0200)]
sspi/ntlm: integrate pull request comments
Bernhard Miklautz [Thu, 18 Jun 2015 11:00:10 +0000 (13:00 +0200)]
cmd line: add missing checks
* strdup
* some allocs
Bernhard Miklautz [Wed, 17 Jun 2015 10:23:14 +0000 (12:23 +0200)]
cache: fix regression
Fix a regression in cache_new introduced in commit
b4f147e242ea396ef92082d29866e5ab7d041b4e
Bernhard Miklautz [Tue, 16 Jun 2015 15:47:33 +0000 (17:47 +0200)]
codec/planar: regression - fix conflicting types
Update planar.h to fix the conflicting types of
freerdp_bitmap_planar_delta_encode_planes.
David FORT [Tue, 16 Jun 2015 13:42:07 +0000 (15:42 +0200)]
Fixes for malloc / calloc + other fixes
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
David FORT [Sat, 13 Jun 2015 22:55:09 +0000 (00:55 +0200)]
A malloc() pass on WinPR
This patch treats remaining non-checked mallocs. And changes to calloc in places
where it makes sense
Bernhard Miklautz [Tue, 16 Jun 2015 14:03:34 +0000 (16:03 +0200)]
client/android: misc updates and fixes
* increase minimum required SDK to 14
* change functions from void to BOOL where required to have proper
return values
* update the JAVA classes and JNI accordingly
* add return value checks for *alloc and strdup
Bernhard Miklautz [Wed, 10 Jun 2015 16:57:05 +0000 (18:57 +0200)]
android: fix misc compiler warnings
with gcc version arm-linux-androideabi-gcc (GCC) 4.8
Bernhard Miklautz [Wed, 3 Jun 2015 14:44:07 +0000 (16:44 +0200)]
winpr/wtsapi: disable tests that block on windows
Bernhard Miklautz [Wed, 3 Jun 2015 13:53:44 +0000 (15:53 +0200)]
winpr/thread: fix test compilation on windows
Use DWORD instead of QWORD.
Bernhard Miklautz [Tue, 2 Jun 2015 13:04:34 +0000 (15:04 +0200)]
Fix compiler warnings:
gcc 4.7.2
client/X11/xf_keyboard.c: In function ‘xf_keyboard_action_script_init’:
client/X11/xf_keyboard.c:48:6: warning: unused variable ‘exitCode’
[-Wunused-variable]
gcc 4.9
client/X11/xf_client.c: In function ‘xf_client_thread’:
client/X11/xf_client.c:1537:3: warning: ‘inputThread’ may be used
uninitialized in this function [-Wmaybe-uninitialized]
Bernhard Miklautz [Tue, 9 Jun 2015 13:22:50 +0000 (15:22 +0200)]
client/ios: fix unchecked strdups
Bernhard Miklautz [Wed, 17 Jun 2015 20:08:02 +0000 (22:08 +0200)]
Fix unchecked strdups
* add missing checks
* adapt function return values where necessary
* add initial test for settings
Marc-André Moreau [Mon, 22 Jun 2015 14:24:26 +0000 (10:24 -0400)]
Merge pull request #2686 from bmiklautz/ios/openssl
ios: update openssl build script
Marc-André Moreau [Mon, 22 Jun 2015 14:19:22 +0000 (10:19 -0400)]
Merge pull request #2705 from akallabeth/sspi_fix_v2
Sspi fix v2 - Fixes static build
Marc-André Moreau [Mon, 22 Jun 2015 13:52:53 +0000 (09:52 -0400)]
Merge pull request #2697 from realjiangms/shadow_audio
Shadow server: fix channel disposal and add audio support. fix message mechanism in client
Marc-André Moreau [Mon, 22 Jun 2015 13:39:17 +0000 (09:39 -0400)]
Merge pull request #2698 from realjiangms/shadow_stand_alone
server/shadow: Decouple shadow_subsystem and subsystem implementation detail.
Marc-André Moreau [Mon, 22 Jun 2015 13:38:46 +0000 (09:38 -0400)]
Merge pull request #2699 from realjiangms/shadow_connect_disconnect
server/shadow: add connect/disconnect anchor in subsystem callback
Marc-André Moreau [Mon, 22 Jun 2015 13:31:38 +0000 (09:31 -0400)]
Merge pull request #2701 from akallabeth/upn_syntax_support
Allowing UPN syntax for user argument.
Marc-André Moreau [Mon, 22 Jun 2015 13:31:15 +0000 (09:31 -0400)]
Merge pull request #2684 from Skool/master
Add bépo layout
Marc-André Moreau [Mon, 22 Jun 2015 13:15:37 +0000 (09:15 -0400)]
Merge pull request #2636 from xhaakon/master
Fix crashes in shadow server
Marc-André Moreau [Mon, 22 Jun 2015 12:53:36 +0000 (08:53 -0400)]
Merge pull request #2713 from bmiklautz/divbyzero
core/metrics: prevent division by zero
Marc-André Moreau [Mon, 22 Jun 2015 12:53:05 +0000 (08:53 -0400)]
Merge pull request #2702 from akallabeth/nla_null_identity_support
NLA Use current users credentials if none provided.
Bernhard Miklautz [Mon, 22 Jun 2015 10:26:31 +0000 (12:26 +0200)]
Merge pull request #2711 from nfedera/nf-fix-rdprecvmessagechannelpdu
core: message channel pdu broken with rdp security
Bernhard Miklautz [Fri, 19 Jun 2015 15:21:16 +0000 (17:21 +0200)]
core/metrics: prevent division by zero
Norbert Federa [Fri, 19 Jun 2015 12:47:00 +0000 (14:47 +0200)]
core: message channel pdu broken with rdp security
rdp_recv_message_channel_pdu always read the rdp security header
even if it was already previously read (which is the case if rdp
security is active)
This caused malfunctions and disconnects when heartbeat or bandwidth
autodetect packets were sent/received in rdp security mode.
Credit goes to @MartinHaimberger for identifying the broken code
part.
Armin Novak [Thu, 18 Jun 2015 14:07:25 +0000 (16:07 +0200)]
Setting hostname as default domain now.
Armin Novak [Thu, 18 Jun 2015 14:07:09 +0000 (16:07 +0200)]
Fixed typo and invalid domain name.
Armin Novak [Thu, 18 Jun 2015 11:01:28 +0000 (13:01 +0200)]
Fixed domain setting for windows client.
Armin Novak [Thu, 18 Jun 2015 10:24:22 +0000 (12:24 +0200)]
UPN syntax fix: domain must be empty, not NULL.
Armin Novak [Thu, 18 Jun 2015 10:01:17 +0000 (12:01 +0200)]
Added user setting if no domain provided.
Armin Novak [Thu, 18 Jun 2015 09:49:16 +0000 (11:49 +0200)]
Fixed variable parsed.
Armin Novak [Thu, 18 Jun 2015 09:35:22 +0000 (11:35 +0200)]
Using last @ for domain split.
Command line parser splits username after
parsing all options.
Hardening [Thu, 18 Jun 2015 07:28:31 +0000 (09:28 +0200)]
Merge pull request #2706 from nfedera/nf-fix-reset-event
winpr/synch: fix ResetEvent & improve CTest
Vic Lee [Thu, 18 Jun 2015 02:43:47 +0000 (02:43 +0000)]
Merge pull request #2675 from akallabeth/path_make_path
Added PathMakePath function.
Norbert Federa [Wed, 17 Jun 2015 12:13:28 +0000 (14:13 +0200)]
winpr/synch: fix ResetEvent & improve CTest
Unless there is an invalid parameter or internal error, ResetEvent
must return TRUE, even if the object is in nonsignaled state.
Also fixed and improved the CTest TestSynchEvent to test for the
expected/correct SetEvent and ResetEvent return values.
Armin Novak [Wed, 17 Jun 2015 11:24:11 +0000 (13:24 +0200)]
Removed duplicate function tables, respecting WITH_NATIVE_SSPI
Armin Novak [Wed, 17 Jun 2015 11:23:44 +0000 (13:23 +0200)]
Using InitSecurityInterfaceEx(0) now.
Armin Novak [Wed, 17 Jun 2015 11:23:21 +0000 (13:23 +0200)]
Fixed cmake warning.
Vic Lee [Tue, 16 Jun 2015 15:02:57 +0000 (15:02 +0000)]
Merge pull request #2703 from akallabeth/unified_sspi
Let SSPI module choose which implementation to use.
zihao.jiang [Mon, 15 Jun 2015 11:37:26 +0000 (19:37 +0800)]
server/shadow: integrate comment from @hardening
Return directly at subsystem->ClientConnect
Also change to argument to accept shadow_client instead of freerdp_peer
zihao.jiang [Mon, 15 Jun 2015 15:54:30 +0000 (23:54 +0800)]
server/shadow: Integrate comment from @hardening: use switch to handle different message id.
Armin Novak [Fri, 12 Jun 2015 08:32:13 +0000 (10:32 +0200)]
Let SSPI module choose which implementation to use.
Armin Novak [Mon, 15 Jun 2015 13:03:13 +0000 (15:03 +0200)]
NLA identity now a pointer, allowing NULL.
When NLA identity is NULL, the current user context
is used on windows.
Armin Novak [Mon, 15 Jun 2015 07:47:16 +0000 (09:47 +0200)]
Allowing UPN syntax for user.
zihao.jiang [Wed, 8 Apr 2015 17:30:57 +0000 (01:30 +0800)]
server/shadow: Decouple shadow_subsystem and subsystem implementation detail.
Make shadow_subsystem standalone so that others can implement customized shadow server with shadow library.
zihao.jiang [Wed, 8 Apr 2015 17:37:41 +0000 (01:37 +0800)]
server/shadow: add connect/disconnect anchor in subsystem callback
Other implementation of subsystem may want to track connect/disconnect of each client
zihao.jiang [Wed, 8 Apr 2015 18:13:52 +0000 (02:13 +0800)]
This is originally to add audio support. Several fixes included:
1. Introduce message queue in shadow client. No longer use subsytem->MsgPipe->out to deliver message to clients.
We used to use subsytem->MsgPipe->out for messages which need to be sent to client. But it's not correct. Only one client would get the message if multiple client exists
This problem make the fix in PR #2643 incomplete.
Introduced reference count based solution to release resource taken by the message.
Also added APIs for client message delivery.
Also fixed msg pipe in subsystem to clean resource when destroyed.
2. Discard unused StopEvent in client. We actually use quit message instead.
3. Enhance disposal of channels.
Free context for remdesk and encomsp channels. The original fix only stop the threads, but doesn't release resource.
Dispose channels earlier. The channels are built on client->vcm. Disposing channels after client->vcm is closed cause unknown behavior.
Original fix is #2644
4. Start to add audio support.
Vic Lee [Fri, 12 Jun 2015 12:52:53 +0000 (12:52 +0000)]
Merge pull request #2687 from akallabeth/known_hosts_v2
Store SSL fingerprints with host and port
Norbert Federa [Fri, 12 Jun 2015 08:52:52 +0000 (10:52 +0200)]
Merge pull request #2692 from nfedera/add-16bit-cursor-conversion
codec/color: support for 8bpp and 16bpp color pointer
Bernhard Miklautz [Fri, 12 Jun 2015 07:48:53 +0000 (09:48 +0200)]
Merge pull request #2688 from hardening/fix_packaging
Correct the included files to have a working freerdp-nightly-dev package
Armin Novak [Fri, 12 Jun 2015 07:30:01 +0000 (09:30 +0200)]
Renamed file to known_hosts2.
Norbert Federa [Thu, 11 Jun 2015 16:40:41 +0000 (18:40 +0200)]
xfreerdp: xfc->palette wasn't updated with /gdi:sw
When using software gdi (/gdi:sw) the rdp update PDU callback
gdi_palette_update() is used which writes the new colors to
the rdpContext's gdi->palette buffer.
The X11 functions however access xfc->palette which gets only
updated by xf_gdi_palette_update() which is the callback if
/gdi:hw is used.
This commit changes xfc->palette to a pointer which points to
xfc's private buffer with /gdi:hw or to the gdi->palette if
software gdi is used.
Norbert Federa [Thu, 11 Jun 2015 14:34:42 +0000 (16:34 +0200)]
codec/color: support for 8bpp color pointer
Norbert Federa [Thu, 11 Jun 2015 11:12:21 +0000 (13:12 +0200)]
codec/color: support for 16bpp color pointer
Bernhard Miklautz [Thu, 11 Jun 2015 10:47:10 +0000 (12:47 +0200)]
Merge pull request #2682 from nfedera/fix-hresult-winpr-path
winpr/path: more PathCch* fixes
MartinHaimberger [Thu, 11 Jun 2015 10:34:03 +0000 (12:34 +0200)]
Merge pull request #2690 from llyzs/autodetect_fix
Fix timer precision for network autodetection on Windows
Armin Novak [Thu, 11 Jun 2015 09:34:36 +0000 (11:34 +0200)]
Updated tests.
Armin Novak [Thu, 11 Jun 2015 09:34:22 +0000 (11:34 +0200)]
Added NULL pointer checks, fixed warnings.
Armin Novak [Thu, 11 Jun 2015 09:16:45 +0000 (11:16 +0200)]
Added subject and issuer to saved data.
When a certificate has changed, display not only the
fingerprint but also subject and issuer of old certificate.
Armin Novak [Thu, 11 Jun 2015 07:58:34 +0000 (09:58 +0200)]
Fixed fingerprint comparison, return value was inverted.
Armin Novak [Thu, 11 Jun 2015 07:57:30 +0000 (09:57 +0200)]
Fixed formatting.
Armin Novak [Thu, 11 Jun 2015 07:23:50 +0000 (09:23 +0200)]
Added test for fingerprint read.
Armin Novak [Thu, 11 Jun 2015 07:23:32 +0000 (09:23 +0200)]
Fixed data replace.
Armin Novak [Wed, 10 Jun 2015 21:33:58 +0000 (23:33 +0200)]
Added certificate_get_fingerprint function to read out old one.
Vic Lee [Thu, 11 Jun 2015 07:12:27 +0000 (15:12 +0800)]
autodetect: use high-precision timer.
Vic Lee [Thu, 11 Jun 2015 07:11:19 +0000 (15:11 +0800)]
winpr: add high-precision GetTickCountPrecise for Windows.
David FORT [Wed, 10 Jun 2015 19:33:40 +0000 (21:33 +0200)]
Correct the included files to have a working freerdp-nightly-dev package
Armin Novak [Wed, 10 Jun 2015 08:59:14 +0000 (10:59 +0200)]
Added port to certificate warnings.
Armin Novak [Wed, 10 Jun 2015 08:47:59 +0000 (10:47 +0200)]
Using binary mode for fopen.
Armin Novak [Wed, 10 Jun 2015 08:40:01 +0000 (10:40 +0200)]
Opening correct file.
Armin Novak [Wed, 10 Jun 2015 08:34:02 +0000 (10:34 +0200)]
Opening file on use now.
Armin Novak [Wed, 10 Jun 2015 07:15:38 +0000 (09:15 +0200)]
Working unit test for known_hosts functions.
Armin Novak [Wed, 10 Jun 2015 07:15:28 +0000 (09:15 +0200)]
Fixed bugs found due to test.
Armin Novak [Tue, 9 Jun 2015 16:03:32 +0000 (18:03 +0200)]
Added unit test.
Armin Novak [Tue, 9 Jun 2015 14:12:41 +0000 (16:12 +0200)]
Added legacy known_hosts support.
If no entry for the <host> <port> combination
was found in the v2 file and there is a legacy file
check if a matching <host> entry can be found.
In case there is a matching entry and the <fingerprint>
also matches, create a new entry in the v2 file using the
current port.
Armin Novak [Tue, 9 Jun 2015 13:33:13 +0000 (15:33 +0200)]
Using '<host> <port> <fp>' format for known hosts.
Armin Novak [Tue, 9 Jun 2015 13:32:50 +0000 (15:32 +0200)]
Added StrSep function.
Armin Novak [Tue, 9 Jun 2015 11:17:15 +0000 (13:17 +0200)]
Removed CreateDirectoryA, handled by PathMakePath
Armin Novak [Wed, 3 Jun 2015 10:35:45 +0000 (12:35 +0200)]
Added RemoveDirectoryA, clean up test directories.
Armin Novak [Wed, 3 Jun 2015 09:47:40 +0000 (11:47 +0200)]
Added PathMakePath function.
Bernhard Miklautz [Mon, 8 Jun 2015 14:17:39 +0000 (16:17 +0200)]
ios: update openssl build script
* remove patch - not required anymore
* add support for arm64 and x86_64 openssl builds
* update documentation
Bernhard Miklautz [Tue, 9 Jun 2015 10:35:45 +0000 (12:35 +0200)]
Merge pull request #2670 from akallabeth/windows_config_paths
Adjusted config paths
Norbert Federa [Mon, 8 Jun 2015 15:57:24 +0000 (17:57 +0200)]
Merge pull request #2683 from nfedera/fix-shadow-server
server/shadow: resuscitate shadow server
tdb [Mon, 8 Jun 2015 15:01:43 +0000 (17:01 +0200)]
fix French bépo layout id to match the bépo.fr installer
Norbert Federa [Mon, 8 Jun 2015 14:34:45 +0000 (16:34 +0200)]
server/shadow: prevent memcopy of NULL area
Norbert Federa [Mon, 8 Jun 2015 13:55:11 +0000 (15:55 +0200)]
server/shadow: resuscitate shadow server
shadow_client_refresh_rect returned FALSE if the areas parameter
was NULL. It may only do so if the count parameter is > 0.
Norbert Federa [Mon, 8 Jun 2015 12:32:19 +0000 (14:32 +0200)]
winpr/path: Denounce PathAllocCombine and more
Note: This commit does NOT really fix PathAllocCombine!
- print a warning message that the function is buggy and added a code
comment describing the issues
- fix misuse of the S_FALSE HRESULT in error conditions
- prevent some segfaults
- check result of HeapAlloc
Fortunately PathAllocCombine is unused in FreeRDP
Norbert Federa [Mon, 8 Jun 2015 12:03:32 +0000 (14:03 +0200)]
winpr/path: PathCchConvertStyle used S_FALSE
Use E_FAIL instead of S_FALSE which was used to indicate errors
although it is a HRESULT success code.
Norbert Federa [Mon, 8 Jun 2015 10:06:46 +0000 (12:06 +0200)]
winpr/path: umimplemented tests print a warning
Norbert Federa [Mon, 8 Jun 2015 09:56:46 +0000 (11:56 +0200)]
winpr/path: unimpl. functions should not succeed
Unimplemented PathCch* functions now return E_NOTIMPL instead of the
HRESULT S_OK and print an error message.
Norbert Federa [Mon, 8 Jun 2015 08:24:38 +0000 (10:24 +0200)]
winpr: fix PathCchFindExtension
Fix multiple inplementation errors including the incorrect usage of S_FALSE.
Make this function behave like the Windows 8 implementation and
the according MSDN specification.
- return S_OK if the extension was NOT found
- if no extension was found, ppszExt must point to the string's terminating null
- return E_INVALIDARG if pszPath is not null-terminated within the cchPath range
- return E_INVALIDARG if pszPath is NULL
- return E_INVALIDARG if ppszExt is NULL
- return E_INVALIDARG if cchPath is Zero
- return E_NOTIMPL instead of S_OK in PathPathCchFindExtensionW()
Also extended/fixed the TestPathCchFindExtension ctest
Bernhard Miklautz [Mon, 8 Jun 2015 12:17:50 +0000 (14:17 +0200)]
Merge pull request #2676 from nfedera/fix-hresult-xxx
winpr: fixed some misuses of S_FALSE
tdb [Fri, 5 Jun 2015 08:52:40 +0000 (10:52 +0200)]
Add Bépo Layout
Norbert Federa [Wed, 3 Jun 2015 14:05:19 +0000 (16:05 +0200)]
winpr: fix PathCchAppend
Fix incorrect usage of S_FALSE which was used to indicate errors
although it is a HRESULT success code.
Make this function behave like the Windows 8 implementation and
the according MSDN specification.
- return E_INVALIDARG instead of S_FALSE if pszPath is NULL
- return E_INVALIDARG instead of S_FALSE if pszMore is NULL
- return E_INVALIDARG if cchPath is zero
- return E_INVALIDARG if cchPath is greater than PATHCCH_MAX_CCH
- return HRESULT_FROM_WIN32(ERROR_FILENAME_EXCED_RANGE) if the combined
path size exceeds cchPath (this is the same HRESULT which the Windows
implementation returns in this case and which is referred to as
PATHCCH_E_FILENAME_TOO_LONG on msdn)
Also extended/fixed the TestPathCchAppend ctest