Commit Graph

4598 Commits

Author SHA1 Message Date
matt335672
8af430e197
Fix regression in using window message names (#2925)
FreeRDP defines macros WM_LBUTTONUP, WM_LBUTTONDOWN, WM_RBUTTONUP
and WM_RBUTTONDOWN. These conflict with the definitions we have in
xrdp_constants.h. Because the FreeRDP system includes followed the local
includes however, the compiler did not emit a diagnostic for this -
see gcc bug #16358.

This PR rearranges the includes for NeutrinoRDP so the macro
redefinitions are flagged by the compiler.
2024-01-31 19:06:59 -05:00
Nexarian
17ba2e01e8 Librfxcodec had a build break. Fixing. 2024-01-22 12:24:19 -05:00
Nexarian
5742e1cafa Updating librfxcodec 2024-01-22 12:11:25 -05:00
matt335672
ec8dd8ad33
Merge pull request #2909 from matt335672/add_clearenv
Improve portability
2024-01-11 14:06:02 +00:00
matt335672
b80f07d2a7 Improve portability
- Use clearenv() if it exists
- Don't rely on <limits.h> being pulled in by <sys/param.h>
- Rename the DEFAULT_TYPE macro in sesrun.c.  This name appears to be
  used on Solaris. It's not a good choice.
2024-01-11 11:16:06 +00:00
matt335672
a547a8b613
Merge pull request #2901 from matt335672/test_suite_add_timeouts
Increase back-stop timeouts for some tests
2024-01-07 14:28:50 +00:00
matt335672
db04b4b54c Increase back-stop timeouts for some tests
The Debian build farm has a number of older and slower machines
which need to run the xrdp test suite.

On these platforms, we occasionally get timeouts where machine load is
high. This results in duplicate issues being raised. It is not obvious
that the issues are duplicates, which wastes time all round.

This commit splits up some test cases into multiple cases and
adds larger timeouts for those cases that are CPU-intensive.
2024-01-04 15:16:23 +00:00
matt335672
db70ce8b8d
Merge pull request #2888 from matt335672/fix_g_strtrim_utf8
Fix g_strtrim() regression
2024-01-02 12:12:32 +00:00
matt335672
62a51dead9 Fix g_strtrim() regression
Commit 36ea4a3 failed to take UTF-8 characters into account on
platforms with signed char.
2024-01-02 11:07:28 +00:00
matt335672
4d03d69125
Merge pull request #2896 from matt335672/update_to_freebsd_13
Bump CI version of FreeBSD to 13.2
2024-01-02 10:55:21 +00:00
matt335672
05c78bb284 Bump CI version of FreeBSD to 13.2 2024-01-02 10:32:17 +00:00
matt335672
7bcaa2a0b9
Merge pull request #2886 from matt335672/cppcheck_2_13
Bump cppchck to v2.13.0
2023-12-23 14:21:26 +00:00
matt335672
c38308a2d9 Bump cppchck to v2.13.0 2023-12-23 13:37:06 +00:00
matt335672
bbd3571d09
Merge pull request #2884 from matt335672/fix_sesman_cpu
Fix session_list scanning where some entries were skipped
2023-12-23 13:20:55 +00:00
matt335672
e529a04d26 Fix session_list scanning where some entries were skipped 2023-12-23 13:10:31 +00:00
metalefty
c65494886d
Merge pull request #2883 from metalefty/funding
Add FUNDING.yml
2023-12-22 14:41:48 +09:00
Koichiro Iwao
1b8e30ad29 Add FUNDING.yml 2023-12-22 14:28:04 +09:00
matt335672
9fbe0ad18c
Merge pull request #2872 from r-a-sattarov/e2k-initial-support
common/arch.h: added e2k arch definition
2023-12-11 20:46:07 +00:00
r-a-sattarov
aa8c651e38 common/arch.h: added e2k arch definition
Ref: https://en.wikipedia.org/wiki/Elbrus_(computer)
2023-12-11 22:34:17 +03:00
matt335672
04db78f6c6
Merge pull request #2864 from matt335672/neutrinordp-sidebutton-click
Neutrinordp sidebutton click
2023-11-27 16:09:26 +00:00
matt335672
c52a173db0 Use symbolic constants in the modules for WM events 2023-11-27 15:42:24 +00:00
Naruhito
e520ce3a5d Proxy extended mouse button 8, 9 events
https://github.com/neutrinolabs/xrdp/pull/2860#issuecomment-1818705074
2023-11-27 15:12:01 +00:00
matt335672
94b1481270
Merge pull request #2863 from matt335672/update_bug_template
Add markdown asking user to read the FAQ before submitting a bug
2023-11-27 09:56:04 +00:00
matt335672
a679b4ed2b Add markdown asking user to read the FAQ before submitting a bug 2023-11-22 16:06:11 +00:00
matt335672
64b347d7ef
Merge pull request #2855 from matt335672/fix_issue_2853
Allow for empty fields in TS_EXTENDED_INFO_PACKET (regression)
2023-11-13 19:24:23 +00:00
matt335672
cdf574cf6c Allow for empty fields in TS_EXTENDED_INFO_PACKET
Some clients appears to be sending cbClientAddress and/or cbClientDir
as 0 in the TS_EXTENDED_INFO_PACKET. This appears to be at odds with
[MS-RDPBCGR] which requires mandatory terminators for these fields.
2023-11-13 10:26:20 +00:00
matt335672
50cff2eb75
Merge pull request #2794 from matt335672/utf_changes_new
Improve Unicode support
2023-11-02 10:57:39 +00:00
matt335672
76d12c50a8
Merge pull request #2838 from matt335672/fix_devredir_ordering
Fix message ordering in devredir
2023-10-26 15:28:10 +01:00
matt335672
7ceff70c1c Fix message ordering in devredir
The drive redirector is not compliant with the message ordering
in [MS-RDPEFS], causing FreeRDP 2.11.2 ro fail on redirecting drives.
2023-10-26 15:17:17 +01:00
matt335672
736da24dd1
Merge pull request #2731 from matt335672/update_sockdir_security
Update sockdir security
2023-10-24 19:31:05 +01:00
matt335672
c51ec2e8e9 Remove sesmanruntimedir
Now we've made the XRDP_SOCKET_PATH only writeable by root, it's
safe to move the sesman socket back into this directory. We no longer
need a separate sesmanruntimedir
2023-10-23 18:14:46 +01:00
matt335672
675dd77807 Parameterise the sockdir with the UID of the user
The top level socket directory is now called XRDP_SOCKET_ROOT_PATH.
Below that are user-specific directories referred to with the
XRDP_SOCKET_PATH macro - this name is hard-coded into xorgxrdp and
the audio modules as an environment variable.

XRDP_SOCKET_PATH now looks like $XRDP_SOCKET_ROOT_PATH/<uid>

XRDP_SOCKET_PATH is only writeable by the user, and readable by the user
and the xrdp process.
2023-10-23 18:14:46 +01:00
matt335672
63235eaafd Fix typo in error message 2023-10-23 15:51:17 +01:00
matt335672
547c619c2f Move g_mk_socket_path() to sesman
The sockdir is only used when sesman is active. The
call g_mk_socket_path() is removed from os_calls and moved to
sesman.

We also change the permissions on this directory to
0755 rather than 01777 (01000 is the 'sticky bit', S_ISVTX).

The behaviour of g_create_dir() has been modified to not
set S_ISVTX on Linux directories. This is implementation-defined
behaviour according to 1003.1, and is no longer required for the
sockdir.
2023-10-23 15:51:17 +01:00
matt335672
ee328784dc
Merge pull request #2833 from matt335672/remove_unnecessary_assignments
Remove unnecessary assignments
2023-10-23 15:42:32 +01:00
matt335672
8f73f5ba73 Remove unnecessary assignments
As per title. Assigments are made to variables which are immediately
overwritten.
2023-10-23 15:23:07 +01:00
matt335672
f5f67e2e80 Remove g_mbstowcs() and g_wcstombs()
These calls are now replaced with explicit UTF conversion routines in
the common/string_calls.[hc] and common/parse.[hc] modules.

Also removed:-
- The support code in common/os_calls.c to set the locale to use
  these routines.
- The twchar type in arch.h
2023-10-23 14:19:49 +01:00
matt335672
d722ffe357 Update smartcard code to use new UTF-8 calls 2023-10-23 14:19:49 +01:00
matt335672
1b286a0469 Update RAIL code to use new UTF-8 calls 2023-10-23 14:19:49 +01:00
matt335672
8556f83905 Update drive redirection code to use new UTF-8 calls 2023-10-23 14:19:49 +01:00
matt335672
f8e7fd4c2c Update clipboard code to use new UTF-8 calls 2023-10-23 14:15:47 +01:00
matt335672
a50afc6500 Update xrdp font handling to use new UTF-8 calls 2023-10-23 14:15:47 +01:00
matt335672
3a5b8936d1 libxrdp: Replace mbstowcs/wcstombs calls
These calls are replaced with the newer UTF-16 parsing code
withing the parse module
2023-10-23 14:15:47 +01:00
matt335672
36ea4a3f86 Remove mbstowcs/wcstombs from g_strtrim()
Because of the way UTF-8 encoding works, there is no need to
use mbstowcs/wcstombs in the implementation of this function.
2023-10-23 14:15:46 +01:00
matt335672
0758fe03a6 Add UTF-16 LE I/O routines
These are intended to replace UTF-16 uses of mbstowcs() / wcstombs()
2023-10-18 10:07:49 +01:00
matt335672
0463e552dc Add UTF-8 / UTF-32 conversion routines
These are intended to replace non-UTF-16 uses of mbstowcs() / wcstombs()
2023-10-18 10:07:49 +01:00
matt335672
da8fa059cd
Merge pull request #2785 from firewave/cppcheck-inc
updated Cppcheck to 2.12.1 / provide more includes to Cppcheck
2023-10-18 09:09:40 +01:00
firewave
8c214280d3 bumped Cppcheck to 2.12.1
- build Cppcheck with matchcompiler for improved performance
- build Cppcheck with Boost for improved ValueFlow performance
2023-10-17 15:14:36 +02:00
firewave
f687174af1 provide more includes to Cppcheck
- added (temporary) suppression of Cppcheck `shiftTooManyBits` false positives in `libxrdp/xrdp_mppc_enc.c`
- added (temporary) suppression of Cppcheck `uninitMemberVar` true positives in `ulalaca/ulalaca.cpp` until fixes land downstream
- fix Cppcheck `nullPointerRedundantCheck` in `sesman/chansrv/clipboard.c`
- fix Cppcheck `syntaxError` in `fontutils/mkfv1.c` because it doesn't see the `freetype/fterrors.h` header / removed astyle workaround
2023-10-17 15:14:36 +02:00
matt335672
b1fca0100e
Merge pull request #2827 from matt335672/devredir_use_spec
devredir_proc_query_dir_response(): Conform to spec
2023-10-16 13:32:14 +01:00