Commit Graph

440 Commits

Author SHA1 Message Date
Pavel Roskin
2dcc69b752 Use g_get_strerror() instead of strerror(errno) for portability 2016-11-08 14:08:51 -08:00
Pavel Roskin
1fe368c5b3 Install headers used by X11rdp and xorgxrdp
Installing the headers makes it possible to compile xorgxrdp as a
separate package, without xrdp sources.
2016-11-06 22:36:13 -08:00
Pavel Roskin
4324084d58 Use static inline functions for OpenSSL 1.0 backport
Conditional preprocessor directives spread throughout the code set a bad
example.

The new backport code is located in one place. The compiler checks
argument types. The backport code has no access to the caller variables.
The main code has all advantages of the new, more compact API.
2016-11-01 11:09:15 -07:00
Dominik George
e5cf45d1ac
Add backwards compatibility to OpenSSL < 1.1.0. 2016-10-27 22:40:48 +02:00
Dominik George
1b5fb8f1c8
Fix ssl_calls for OpenSSL 1.1.0, closes #458. 2016-10-27 21:56:22 +02:00
Pavel Roskin
6fef1e4eb5 Use const pointers in function arguments when possible 2016-10-17 08:54:07 -07:00
Pavel Roskin
bc868b96b1 Remove text2bool() from log.h, there is no such function 2016-10-17 08:54:07 -07:00
Pavel Roskin
a618d4f757 Don't use final newline in log calls, it's already appended 2016-10-17 08:54:07 -07:00
Pavel Roskin
7d03d1a3e9 Fix outgoing connections on Mac OSX
connect() on an already established connection returns error with errno
set to EISCONN. Treat it as success.
2016-09-08 22:28:38 -07:00
Pavel Roskin
5465b8c85e Add socklen_t check with substitution, use socklen_t as needed 2016-09-08 20:26:19 -07:00
Pavel Roskin
6f4ffa769c Improve debug information when closing a socket
Don't assume AF_INET family. Don't assume the socket is connected. Report
local address and port. Don't try to close non-sockets and invalid file
descriptors. Report errors getting socket information and closing the
socket. Use more appropriate log levels.
2016-09-08 20:26:19 -07:00
Jay Sorg
8f747e37ca always set SSL_OP_NO_SSLv2 in TLS options 2016-08-25 11:38:03 -07:00
Alex Illsley
47124df4ed new options for xrdp.ini disableSSlv3=yes and tls_ciphers=HIGH and code to implement 2016-08-25 11:20:47 -07:00
Koichiro IWAO
ceb4b7b2a4 Fix clipboard when text/filename contains non-ASCII characters
broken by #314. This is compatible with the fix introduced in #314.

To use non-ASCII text/filename in clipboard, chansrv needs to be run
with LC_CTYPE=*.UTF-8 because the behaviour of mbstowcs(3) function
called in chansrv depends on LC_CTYPE[1].  However #314 made
LC_CTYPE=C in chansrv context.  Even if LANG and LC_* are set in
.bashrc, /etc/profile, /etc/locale.conf or something like that,
it doesn't affect in chansrv context because chansrv doesn't source
any of them unlike sesman.

So do not set LC_CTYPE to blank or "C" in g_init() in order to get
g_mbstowcs and g_wcstombs to work properly with non-ASCII UTF-8
characters in any context.

Setting LC_CTYPE to *.UTF-8 doesn't obstruct applying system
language in RHEL [2].

[1] Linux man page says:
      The behavior of mbstowcs() depends on the LC_CTYPE category of
      the current locale.

[2] https://bugzilla.redhat.com/show_bug.cgi?id=1290820
2016-08-18 13:27:55 +09:00
Jay Sorg
f4f23b0a7d Include stdint.h, don't redefine MAX/MIN constants if already defined 2016-08-12 12:16:14 -07:00
Jay Sorg
d35e57b117 Pixman fixes 2016-08-11 22:18:26 -07:00
Jay Sorg
bb7bac2d9b add region intersect 2016-08-08 23:12:52 -07:00
Jay Sorg
58c777783b add more advances region support using pixman 2016-08-08 20:02:10 -07:00
jsorg71
8353baab3d Merge pull request #390 from proski/june21
Cleanups and C++ compatibility
2016-08-05 14:38:41 -07:00
speidy
c9b55e3691 sesman: env_set_user, fix potential bof issues 2016-07-22 04:48:37 -04:00
Pavel Roskin
ace7d2c822 Declare unified module interface and use it in modules
This fixes loading modules compiled with a C++ compiler. Remote thandle
type, it's unused. Use tintptr for module data. Don't cast pointers to
long, they won't fit on Win64.
2016-07-08 05:09:09 +00:00
Pavel Roskin
2c13ef5c6d Use enum logLevels consistently for log levels 2016-07-08 04:29:57 +00:00
Pavel Roskin
0c72ee2371 Use char* for TLS send and receive
This is consistent with ssl_tls_read() and ssl_tls_write(). C++ warnings
are fixed without adding any casts.
2016-07-08 04:29:56 +00:00
Pavel Roskin
28a1a090b3 Use correct types for ssl and ctx fields in struct ssl_tls 2016-07-08 04:29:53 +00:00
Pavel Roskin
d1efb0d5ba Fix signed to unsigned comparisons reported by g++ 6.1.0 2016-07-08 04:29:51 +00:00
Pavel Roskin
5829323ad8 Use g_new or g_new0 when C++ compiler would complain about implicit cast 2016-07-08 04:29:49 +00:00
Pavel Roskin
a24df49241 Introduce glib style macros for allocating memory with type 2016-07-08 04:29:49 +00:00
Pavel Roskin
aeeb3d2c2e Fix warnings detected by -Wwrite-strings 2016-07-08 04:29:42 +00:00
Pavel Roskin
951e632757 Make program_name constant, don't duplicate or free it 2016-07-08 04:27:07 +00:00
Pavel Roskin
77b380c0b5 Fix format warnings in log_message() calls 2016-06-21 16:30:16 -07:00
Pavel Roskin
b1527b7947 Check string format in log_message
Move "printflike" definition to arch.h, it's used both by log.h and
os_calls.h.
2016-06-21 16:30:16 -07:00
Pavel Roskin
ae5bb5bf9c Fix incorrect use of "it's" and "its", adjust wording 2016-06-21 16:30:15 -07:00
speidy
b38dcf1bb0 xrdp_wm: fix for multimon, draw login window and log window on primary
monitor
2016-05-17 20:11:49 -04:00
Itamar Reis Peixoto
0a6a55b547 Merge pull request #370 from proski/typos
Typo fixes and more
2016-05-06 09:05:38 -04:00
jsorg71
8249091183 Merge pull request #332 from metalefty/freebsd/ipv6
common: add log for g_tcp_connect
2016-05-05 22:00:51 -07:00
Pavel Roskin
c3f6e1f58a Use uniform comments for GUIDs 2016-05-05 00:06:26 -07:00
Pavel Roskin
ca9cbcafc8 Typo fixes 2016-05-04 23:33:30 -07:00
jsorg71
fdb146740f Merge pull request #360 from proski/format-warnings
Warning fixes
2016-05-03 00:52:58 -07:00
Jay Sorg
fac0907a3c trans: set non blocking socket after accept 2016-04-27 18:16:45 -07:00
Pavel Roskin
f93074a430 Add unnamed semaphore support on Mac OS
sem_init() is not functional on Mac OS. Use the Grand Central Dispatch
implementation.

Make libscp_lock.c use semaphores through the thread_calls wrapper.
2016-04-23 00:26:46 -07:00
Pavel Roskin
e65bd6b7d7 Fix more format warnings 2016-04-21 21:21:17 -07:00
Pavel Roskin
55e12a09d8 Include config_ac.h from common/os_calls.h to enable all format warnings 2016-04-21 21:20:12 -07:00
Jay Sorg
0655272b9c common: call recv/send before can_recv/can_send 2016-04-06 16:37:34 -07:00
Jay Sorg
bd6c38af4d common: fix warnings 2016-04-02 16:49:23 -07:00
jsorg71
034ee36f9c Merge pull request #341 from proski/sanity-checks
Sanity checks
2016-03-16 20:51:58 -07:00
Jay Sorg
689ffe79d9 fix warnings, move some calls to os_calls 2016-03-16 14:32:14 -07:00
Jay Sorg
7393579205 Don't attempt to intercept SIGKILL, it doesn't work on any OS 2016-03-14 16:33:49 -07:00
Pavel Roskin
9091c3eef2 Annotate printf-like functions if supported by the compiler
Both GCC and Clang support it. Add a macro from Autoconf archive to check
for format attribute support.
2016-03-03 22:56:09 -08:00
Koichiro IWAO
9460bdb643 common: no logic change, indent 2 -> 4 2016-02-23 18:26:42 +09:00
Koichiro IWAO
d01854a341 common: no logic change, fix alignment, whitespaces 2016-02-23 18:26:41 +09:00