Commit Graph

433 Commits (c3b99de7396417555d53579e280e377573ad0ab9)

Author SHA1 Message Date
Pavel Roskin a618d4f757 Don't use final newline in log calls, it's already appended 8 years ago
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.
9 years ago
Pavel Roskin 5465b8c85e Add socklen_t check with substitution, use socklen_t as needed 9 years ago
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.
9 years ago
Jay Sorg 8f747e37ca always set SSL_OP_NO_SSLv2 in TLS options 9 years ago
Alex Illsley 47124df4ed new options for xrdp.ini disableSSlv3=yes and tls_ciphers=HIGH and code to implement 9 years ago
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
9 years ago
Jay Sorg f4f23b0a7d Include stdint.h, don't redefine MAX/MIN constants if already defined 9 years ago
Jay Sorg d35e57b117 Pixman fixes 9 years ago
Jay Sorg bb7bac2d9b add region intersect 9 years ago
Jay Sorg 58c777783b add more advances region support using pixman 9 years ago
jsorg71 8353baab3d Merge pull request #390 from proski/june21
Cleanups and C++ compatibility
9 years ago
speidy c9b55e3691 sesman: env_set_user, fix potential bof issues 9 years ago
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.
9 years ago
Pavel Roskin 2c13ef5c6d Use enum logLevels consistently for log levels 9 years ago
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.
9 years ago
Pavel Roskin 28a1a090b3 Use correct types for ssl and ctx fields in struct ssl_tls 9 years ago
Pavel Roskin d1efb0d5ba Fix signed to unsigned comparisons reported by g++ 6.1.0 9 years ago
Pavel Roskin 5829323ad8 Use g_new or g_new0 when C++ compiler would complain about implicit cast 9 years ago
Pavel Roskin a24df49241 Introduce glib style macros for allocating memory with type 9 years ago
Pavel Roskin aeeb3d2c2e Fix warnings detected by -Wwrite-strings 9 years ago
Pavel Roskin 951e632757 Make program_name constant, don't duplicate or free it 9 years ago
Pavel Roskin 77b380c0b5 Fix format warnings in log_message() calls 9 years ago
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.
9 years ago
Pavel Roskin ae5bb5bf9c Fix incorrect use of "it's" and "its", adjust wording 9 years ago
speidy b38dcf1bb0 xrdp_wm: fix for multimon, draw login window and log window on primary
monitor
9 years ago
Itamar Reis Peixoto 0a6a55b547 Merge pull request #370 from proski/typos
Typo fixes and more
9 years ago
jsorg71 8249091183 Merge pull request #332 from metalefty/freebsd/ipv6
common: add log for g_tcp_connect
9 years ago
Pavel Roskin c3f6e1f58a Use uniform comments for GUIDs 9 years ago
Pavel Roskin ca9cbcafc8 Typo fixes 9 years ago
jsorg71 fdb146740f Merge pull request #360 from proski/format-warnings
Warning fixes
9 years ago
Jay Sorg fac0907a3c trans: set non blocking socket after accept 9 years ago
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.
9 years ago
Pavel Roskin e65bd6b7d7 Fix more format warnings 9 years ago
Pavel Roskin 55e12a09d8 Include config_ac.h from common/os_calls.h to enable all format warnings 9 years ago
Jay Sorg 0655272b9c common: call recv/send before can_recv/can_send 9 years ago
Jay Sorg bd6c38af4d common: fix warnings 9 years ago
jsorg71 034ee36f9c Merge pull request #341 from proski/sanity-checks
Sanity checks
9 years ago
Jay Sorg 689ffe79d9 fix warnings, move some calls to os_calls 9 years ago
Jay Sorg 7393579205 Don't attempt to intercept SIGKILL, it doesn't work on any OS 9 years ago
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.
9 years ago
Koichiro IWAO 9460bdb643 common: no logic change, indent 2 -> 4 9 years ago
Koichiro IWAO d01854a341 common: no logic change, fix alignment, whitespaces 9 years ago
Koichiro IWAO 1ed7dbec53 common: add log for g_tcp_connect
in case getaddrinfo(3) might fail.

In FreeBSD, AI_V4MAPPED support for getaddrinfo(3) was very recently
implemented[1].  Most of FreeBSD systems in the world do not have
this implementation yet.  This will be a problem when AI_V4MAPPED
isn't supported and xrdp is built with IPv6 option.  In such a case,
g_tcp_connect always fails.

Of course getaddrinfo(3) might fail in other cases.  The log helps
us to know what's happening.

[1] https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=198092
9 years ago
Jay Sorg f100036cd9 common: minor fix for older openssl keygen 9 years ago
Jay Sorg 3bc9f1e275 Merge branch 'devel' of git:neutrinolabs/xrdp into devel 9 years ago
Jay Sorg 0d192aee62 common: fix for key generated smaller than asked for 9 years ago
Pavel Roskin 59a5fb0ddb Move headers from EXTRA_DIST to sources, sort alphabetically
There should be no functional difference.
9 years ago
Pavel Roskin 92a6833e9b Fix typos 9 years ago
Pavel Roskin dcab7552db Stop redefining libdir, use moduledir for ${libdir}/xrdp
libdir is for shared and static libraries. Some xrdp libraries are loaded
dynamically from a non-standard directory, so they are used like modules.

Having separate libdir and moduledir would eventually allow to separate
dynamically loaded modules from shared libraries.
9 years ago