Commit Graph

734 Commits (59a7e8aedfdac1ebea0b1e6d362601b6040386ef)

Author SHA1 Message Date
Idan Freiberg a11af2bc95 Merge pull request #545 from moobyfr/fix-xauth
Fix xauth
8 years ago
Pavel Roskin b1db87ea21 Use per-display VNC password files, remove old style password if found
Every session uses its own VNC password, so keep then in separate files.

The old style password file uses the user's password encrypted with a
known key. Since we are not replacing it anymore, we should remove it.
8 years ago
Pavel Roskin c21b9a78f4 Distribute all files except git and github specific data
It is better to distribute a few useless file than not to distribute
needed files.
8 years ago
BLINDAUER Emmanuel a2d7720887 Fix typo 8 years ago
BLINDAUER Emmanuel 1430c54c40 - Removed tailing space
- Fixed the copyright and year
8 years ago
BLINDAUER Emmanuel 2927eed74c - Update copyright
- remove test on filename for xauth as we know what we send
- better names for variables in xauth
- if xauth fails, exit sesman
- g_bytes_to_hexstr returns a null-teminated string, don't set it twice.
8 years ago
BLINDAUER Emmanuel 480d6d37b7 use correct include 8 years ago
BLINDAUER Emmanuel 51759d3d84 remove unused include 8 years ago
BLINDAUER Emmanuel b2f4f68ab8 - move function related to xauth in own file
- use of g_bytes_to_hexstr()
- correct typos and coding syntax
- don't create auth file, xauth can do that if needed
8 years ago
BLINDAUER Emmanuel e72957b7c9 xauth: use the authfile if not using default value 8 years ago
BLINDAUER Emmanuel 7d1fdd04b5 Cosmetic change: follow coding standard 8 years ago
BLINDAUER Emmanuel 16b6471d88 use the correct size for snprintf 8 years ago
BLINDAUER Emmanuel 0aa4b85f81 Xauth: use snprintf for setting the filename and adjust the value of computed cookie 8 years ago
BLINDAUER Emmanuel 6875dbe860 use functions from os_call.h 8 years ago
BLINDAUER Emmanuel 7bd1823ceb Add xauth support to get more security for all backends 8 years ago
Koichiro IWAO 35bc7c1d65 sesman: unbreak FreeBSD build after #523 8 years ago
metalefty 731d4be670 Merge pull request #521 from proski/xorg-log
Change default Xorg logfile to .xorgxrdp.%s.log
8 years ago
Pavel Roskin 9cbf3d1bb8 Change default Xorg logfile to .xorgxrdp.%s.log
The log file is created in the home directory, %s is replaced with the
display number (e.g. 10).

If Xorg is run setuid root, it can refuse to run if the log path is
absolute.
8 years ago
Pavel Roskin 04414e0fd4 Disable privilege elevation by setuid for the X server 8 years ago
Jay Sorg f14e3dc8ac sesman: must save guid in session data 8 years ago
Jay Sorg 9a517b34f0 vnc: code cleanup 8 years ago
Jay Sorg 57905d71ad vnc: change password file to use guid hash 8 years ago
Pavel Roskin e46d15ca84 Fix C++ errors and warnings in FUSE code 8 years ago
Pavel Roskin 2ab321a7c6 Use fuse_ino_t for FUSE inodes, not tui32 or int 8 years ago
Pavel Roskin f622a17c75 Remove write-only FileId variable 8 years ago
Pavel Roskin 46f4025372 Cast pointer to uint64_t through tintptr to avoid warnings
Cast to long would damage a pointer on Win64.
8 years ago
Pavel Roskin e92c4f3b40 Use constant strings to fix warnings 8 years ago
Pavel Roskin 662172012b Call devredir_cvt_slash() on the path copy, it changes the argument 8 years ago
Pavel Roskin a4e3952d65 Disable or remove dead code to prevent it from throwing warnings 8 years ago
Pavel Roskin a547cc3784 Include needed files in chansrv_fuse.c, remove duplicate declarations 8 years ago
Pavel Roskin bf39fed6e4 Fix misuse of NULL for arithmetic type 8 years ago
Pavel Roskin 4234ed278e Use FUSE_CFLAGS and FUSE_LIBS from pkg-config
Include <fuse_lowlevel.h>, not <fuse/fuse_lowlevel.h>, the include path
should be set up for that.

Don't define _FILE_OFFSET_BITS in one file, FUSE_CFLAGS would enable it
for the whole xrdp-chansrv build if needed.
8 years ago
Pavel Roskin 15c4c47811 Remove "-ac" from X server parameters, it's insecure and unnecessary
Fedora patches sesman.ini to remove "-ac", and that doesn't cause any ill
effects.
8 years ago
Pavel Roskin 7fce469cbc Fix format warnings if FUSE is enabled 8 years ago
Jay Sorg 25fd585d55 chansrv: some fixes to log file path 8 years ago
Itamar Reis Peixoto f7b0b0d89c Merge pull request #488 from metalefty/docs
Update man pages and config files
8 years ago
metalefty 9deaa078fc Merge pull request #477 from proski/vnc-strerror
Improve error messages about VNC password file
8 years ago
metalefty 8516e6f97b Merge pull request #476 from proski/auth
Fix compile warnings for non-default authentication methods
8 years ago
metalefty b89956d06e Merge pull request #485 from proski/code-standards
Code standards
8 years ago
metalefty d335c93a75 Merge pull request #480 from proski/strncat
Fix potential buffer overflow in strncat() invocation
8 years ago
Pavel Roskin 35b336272b Fix compilation with C++ 8 years ago
Pavel Roskin 16c3bbdb8d Remove all tabs in sources 8 years ago
Pavel Roskin e9d064e390 Don't try to create .vnc directory if it exists
Report system error if it cannot be created.
8 years ago
Pavel Roskin 60029514a6 Report system error if the VNC password file cannot be created 8 years ago
Pavel Roskin e9a0324cb3 Fix compile warnings for non-default authentication methods
Include string.h for strcmp(). Don't define _XOPEN_SOURCE, it conflicts
with libc headers and hides putpwent(). Make input strings constant. Fix
functions to match their declarations.
8 years ago
Pavel Roskin 92423a466e Fix potential buffer overflow in strncat() invocation
strncat() will copy at most the specified number of characters and append
the null character on top of that. strlen() doesn't count the final null
character.
8 years ago
Koichiro IWAO cb1960e0fc config: use semicolon to comment out descriptions in config files
and use number sign to comment out actual configurations.
For example:

    ; if set to true, enables foobar
    #foobar=true
8 years ago
Koichiro IWAO 4f2d94505a config: unify all boolean values in config to true/false 8 years ago
Pavel Roskin 0d72cced46 Omit numbers from the "param" keys, they are not needed
Users assume that they need to renumber the parameters. That makes
parameter editing more involved than it needs to be.
8 years ago
metalefty 94901c9989 Merge pull request #454 from metalefty/change-chansrv-log-path
chansrv: change chansrv log path to ${XDG_DATA_HOME}/xrdp
8 years ago
Dominik George c90bc13d39
Move -logfile /dev/null option for easier commenting in debug scenarios. 8 years ago
Koichiro IWAO 7d017482f6 chansrv: change chansrv log path to ${XDG_DATA_HOME}/xrdp
like Xorg's logfile is written to ${XDG_DATA_HOME}/xorg/Xorg.n.log.

If XDG_DATA_HOME is not defined, the log path will be
${HOME}/.local/share/xrdp.
8 years ago
Pavel Roskin b28a986071 Fix memory leak in xrdp-sesman on config reload 8 years ago
Pavel Roskin dc60a80b86 Memory leak fix: keep X server path in the parameter list
g_cfg->xorg_params, g_cfg->vnc_params and g_cfg->rdp_params don't have
auto_free enabled, so removing an item from one of those lists won't free
its contents.

It's better not to change those lists, as they represent the actual
config file and could be reused. Instead, omit the 0th parameter (the
executable path) from copying to xserver_params.

Found by Valgrind.
8 years ago
Pavel Roskin e17a56efb6 Call auth_end() exactly once in scp_v0_process()
As discovered by Valgrind, it wasn't called at all in case of a
successful session creation, which leaked memory.
8 years ago
Pavel Roskin 65ac8e758b Fix memory leak: free session data
Call scp_session_destroy() in the functions that call
scp_session_create() and nowhere else.

As found by Valgrind, the session data is not freed if the session is
created successfully.
8 years ago
Pavel Roskin a370306f75 Get rid of EXTRA_LIBS, use variables with more specific names 8 years ago
Pavel Roskin 5c69f3cd57 Eliminate EXTRA_FLAGS, it's a poor name, use AM_LDFLAGS 8 years ago
Pavel Roskin 0422734fc7 Merge EXTRA_DEFINES and EXTRA_INCLUDES into AM_CPPFLAGS
AM_CPPFLAGS is a documented Automake variable for C preprocessor flags
that should not be overridden when compiling the package.

There is no need to have two additional variables that are ultimately
merged into AM_CPPFLAGS.

Their names are also confusing. EXTDA_DIST is a documented Automake
variable. Everything else that starts with "EXTRA" is not.
8 years ago
Pavel Roskin 6fef1e4eb5 Use const pointers in function arguments when possible 8 years ago
Pavel Roskin c3b99de739 Fix wrong comments in sesman config printing code 8 years ago
Pavel Roskin bf08892622 Fix incorrect description of auth_userpass() return value 8 years ago
Pavel Roskin a618d4f757 Don't use final newline in log calls, it's already appended 8 years ago
Pavel Roskin 424cef464b Log malloc errors with LOG_LEVEL_ERROR 8 years ago
Pavel Roskin 945833a94f Don't close socket in scp_process_start(), the caller closes it 9 years ago
Pavel Roskin f7c27f05cf g_term_event is a wait object, not TCP socket, delete it correctly 9 years ago
Pavel Roskin 931fb90832 sesrun: remove unused g_sck and write-only g_pid 9 years ago
Pavel Roskin d605310bdc sesman: don't close listening socket in signal handler
It is closed when the main loop terminates.
9 years ago
Koichiro IWAO 9f277e4445 chansrv: pathname also should be URL decoded
because 1st argument to clipboard_get_file() is given as URL encoded.
Decoding only filename is incomplete.

Without this fix, clipboard file doesn't work in case pathname
contains non-ASCII characters or non-alphanumeric ASCII characters.
9 years ago
jsorg71 8353baab3d Merge pull request #390 from proski/june21
Cleanups and C++ compatibility
9 years ago
jsorg71 81fe939dd3 Merge pull request #388 from metalefty/freebsd/fuse
sesman: Add /sbin to PATH for FreeBSD
9 years ago
speidy f2addd346f Merge branch 'devel' of https://github.com/neutrinolabs/xrdp into devel 9 years ago
speidy c9b55e3691 sesman: env_set_user, fix potential bof issues 9 years ago
Kentaro Hayashi 8f3fb2f7c8 chansrv: avoid chansrv SEGV when xinode is NULL
When xfuse_create_file_in_xrdp_fs is failed, it returns NULL.

Without this fix, xinode->size causes SEGV, so implementation is changed
to return -1 and check the return value in caller.
9 years ago
Jay Sorg 9ccbfb6985 chansrv: added mp3 compression from Speidy 9 years ago
Pavel Roskin 2c13ef5c6d Use enum logLevels consistently for log levels 9 years ago
Pavel Roskin cbe413bd8b Fix return type of devredir_fuse_data_peek and devredir_fuse_data_dequeue 9 years ago
Pavel Roskin c5ca0332be Use cast when applying boolean OR to enum 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 bde4925f0e Cast appdata_ptr explicitly, needed for C++ compatibility 9 years ago
Pavel Roskin 4b05bb2ebd Mark g_drdynvc_chan_id as extern in g_drdynvc_chan_id, it's in chansrv.c 9 years ago
Pavel Roskin aaa89ad4e6 Use const unsigned for hex arrays
Some constants are too big for the signed 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 b00ca6e03d Remove commented out config_read_logging(), the code is long dead 9 years ago
Pavel Roskin 1ded8ec437 Remove unused string support in scp_session_set_addr()
Using the same argument for binary and text data is not a good idea. If
string support is ever needed, it should be a separate function.

Remove SCP_ADDRESS_TYPE_IPV4_BIN and SCP_ADDRESS_TYPE_IPV6_BIN, use
SCP_ADDRESS_TYPE_IPV4 and SCP_ADDRESS_TYPE_IPV6, which simplifies the
code.
9 years ago
Pavel Roskin f908528a00 Downgrade "libscp initialized" to LOG_LEVEL_DEBUG, remove line number
It's a bad style to start the log with a cryptic warning.
9 years ago
Pavel Roskin f7ef9bb938 Fix scp_init() invocation, it takes no arguments 9 years ago
Pavel Roskin 77b380c0b5 Fix format warnings in log_message() calls 9 years ago
Pavel Roskin be1d034f91 Report pid and listening address/port for xrdp and xrdp-sesman
For xrdp-sesman, don't report that the daemon is listening to a port if
it fails to attach to that port. Don't use LOG_LEVEL_ALWAYS for startup
message, it's not a critical error.
9 years ago
Pavel Roskin a77ae440a7 Rename SESMAN_CFG_X11DISPLAYOFFSET to SESMAN_CFG_SESS_X11DISPLAYOFFSET
Move it to other session options in config.h. X11DisplayOffset is part of
the [Sessions] section.
9 years ago
Pavel Roskin ae5bb5bf9c Fix incorrect use of "it's" and "its", adjust wording 9 years ago
Koichiro IWAO c0ac8251f7 sesman: Add /sbin to PATH for FreeBSD
to enable to execute FUSE mount program.

The place of FUSE mount programs are:

FreeBSD   : /sbin/mount_fusefs
GNU/Linux : /bin/fusermount

See also #387.
9 years ago
Pavel Roskin 1403652c72 Remove unused variable in devredir_cvt_from_unicode_len() 9 years ago
Pavel Roskin f2d326cbed Remove unused variables from dev_redir_proc_query_dir_response() 9 years ago
Pavel Roskin 0dd0426e6f Check XGetWindowProperty() return code in clipboard_event_property_notify() 9 years ago
Pavel Roskin 72019d3611 Use better symbols to protect include files 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