bd82084505
It supports the extended configurations for sesman.ini: Before: [Security] RestrictOutboundClipboard=true or false After: [Security] RestrictInboundClipboard=[true or false | text or file or image | comma separated list] RestrictOutboundClipboard=[true or false | text or file or image | comma separated list] Above configuration is disabled by default (false) And it can be specified comma separated list like this:. RestrictInboundClipboard=file, image RestrictOutboundClipboard=text, file, image Note that if RestrictOutboundClipboard=true,file is set, file is ignored and it is treated as RestrictOutboundClipboard=true It is same for RestrictInboundClipboard.
81 lines
2.1 KiB
C
81 lines
2.1 KiB
C
/**
|
|
* xrdp: A Remote Desktop Protocol server.
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*
|
|
* This file contains the chansrv configuration parameters from sesman.ini
|
|
*/
|
|
|
|
#ifndef _CHANSRV_CONFIG
|
|
#define _CHANSRV_CONFIG
|
|
|
|
#include <sys/stat.h>
|
|
|
|
struct config_chansrv
|
|
{
|
|
/** Whether to use a UNIX socket for chansrv */
|
|
int use_unix_socket;
|
|
|
|
/** Whether the FUSE mount is enabled or not */
|
|
int enable_fuse_mount;
|
|
|
|
/** RestrictOutboundClipboard setting from sesman.ini */
|
|
int restrict_outbound_clipboard;
|
|
/** RestrictInboundClipboard setting from sesman.ini */
|
|
int restrict_inbound_clipboard;
|
|
|
|
/** * FuseMountName from sesman.ini */
|
|
char *fuse_mount_name;
|
|
/** FileUmask from sesman.ini */
|
|
mode_t file_umask;
|
|
|
|
/** Whether to use nautilus3-compatible file lists for the clipboard */
|
|
int use_nautilus3_flist_format;
|
|
};
|
|
|
|
|
|
/**
|
|
*
|
|
* @brief Reads sesman configuration
|
|
* @param use_logger Use logger to log errors (otherwise stdout)
|
|
* @param sesman_ini Name of configuration file to read
|
|
*
|
|
* @return configuration on success, NULL on failure
|
|
*
|
|
* @pre logging is assumed to be active
|
|
* @post pass return value to config_free() to prevent memory leaks
|
|
*
|
|
*/
|
|
struct config_chansrv *
|
|
config_read(int use_logger, const char *sesman_ini);
|
|
|
|
/**
|
|
*
|
|
* @brief Dumps configuration to stdout
|
|
* @param pointer to a config_chansrv struct
|
|
*
|
|
*/
|
|
void
|
|
config_dump(struct config_chansrv *config);
|
|
|
|
/**
|
|
*
|
|
* @brief Frees configuration allocated by config_read()
|
|
* @param pointer to a config_chansrv struct (may be NULL)
|
|
*
|
|
*/
|
|
void
|
|
config_free(struct config_chansrv *cs);
|
|
|
|
#endif /* _CHANSRV_CONFIG */
|