vncserver YAML config: support true and false values

KASM-1810_yaml_config
Dmitry Maksyoma 4 years ago
parent 42021dd29a
commit 7ad6810d7f

@ -1117,12 +1117,9 @@ sub DefineFilePathsAndStuff {
DetectFontPath(); DetectFontPath();
%configToXvncArgsMap = ( interface => "-interface" ); %xvncArgsToConfigAliases = (
$configToXvncArgsMap{dlp}{clipboard}{max_paste_size} = '-MaxCutText'; '-AcceptPointerEvents' => [qw(pointer.allow_clicks_and_cursor_movement)]
$configToXvncArgsMap{pointer}{allow_clicks_and_cursor_movement} = );
'-AcceptPointerEvents';
%xvncArgsToConfigAliases = ();
$xvncArgsToConfigAliases{'-MaxCutText'} = [qw(dlp.clipboard.max_paste_size dlp.clipboard.delay)]; $xvncArgsToConfigAliases{'-MaxCutText'} = [qw(dlp.clipboard.max_paste_size dlp.clipboard.delay)];
$xvncArgsToConfigAliases{'-httpd'} = [qw(httpd_directory)]; $xvncArgsToConfigAliases{'-httpd'} = [qw(httpd_directory)];
} }
@ -1291,27 +1288,41 @@ sub LoadYAMLConfig {
} }
sub ConvertConfigToXvncArgs { sub ConvertConfigToXvncArgs {
# my $result = ""; my $result = "";
foreach my $cliArg (keys %xvncArgsToConfigAliases) { foreach my $cliArg (keys %xvncArgsToConfigAliases) {
ComplementCliArgWithValue($cliArg); my $xvncCliArgWithValue = ComplementCliArgWithValue($cliArg);
next unless defined($xvncCliArgWithValue);
$result .= " $xvncCliArgWithValue";
} }
exit;
# $result .= " $key $value"; $result;
} }
sub ComplementCliArgWithValue { sub ComplementCliArgWithValue {
my $cliArg = $_[0]; my $cliArg = $_[0];
my $firstDefinedConfigKey = FirstDefinedConfigKey($cliArg); my $firstDefinedConfigKey = FirstDefinedConfigKey($cliArg);
return unless defined($firstDefinedConfigKey);
my $cliValue = ConfigValue($firstDefinedConfigKey); my $cliValue = ConfigValue($firstDefinedConfigKey);
if ($cliValue eq "default") { return unless defined($cliValue);
switch($cliValue) {
case "default" {
say "default value for $cliArg, skipping"; say "default value for $cliArg, skipping";
next; next;
} }
case "true" {
$cliValue = "1";
}
case "false" {
$cliValue = "0";
}
}
say "$cliArg $cliValue"; "$cliArg $cliValue";
} }
sub FirstDefinedConfigKey { sub FirstDefinedConfigKey {

Loading…
Cancel
Save