HEX
Server: Apache
System: Linux vps-cdc32557.vps.ovh.ca 5.15.0-156-generic #166-Ubuntu SMP Sat Aug 9 00:02:46 UTC 2025 x86_64
User: hanode (1017)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: //usr/share/webmin/samba/log_parser.pl
# log_parser.pl
# Functions for parsing this module's logs

do 'samba-lib.pl';

# parse_webmin_log(user, script, action, type, object, &params)
# Converts logged information from this module into human-readable form
sub parse_webmin_log
{
local ($user, $script, $action, $type, $object, $p, $long) = @_;
$object = &html_escape($object);
if ($type eq 'shares') {
	return &text("log_delete_${type}", $object);
	}
elsif ($action eq 'save') {
	if ($object eq 'global') {
		return $text{"log_default_${type}"};
		}
	else {
		return &text("log_save_${type}", "<tt>$object</tt>");
		}
	}
elsif ($action eq 'create') {
	return &text("log_create_${type}", "<tt>$object</tt>");
	}
elsif ($action eq 'delete') {
	return &text("log_delete_${type}", "<tt>$object</tt>");
	}
elsif ($action eq 'manual') {
	return &text("log_manual", "<tt>$object</tt>");
	}
elsif ($action eq 'copy') {
	return &text('log_copy', "<tt>$object</tt>",
		     "<tt>".&html_escape($p->{'copy'})."</tt>");
	}
elsif ($action eq 'epass') {
	return &text($long ? 'log_epass_l' : 'log_epass',
		     int($p->{'created'}), int($p->{'modified'}),
		     int($p->{'deleted'}));
	}
elsif ($type eq 'euser') {
	return &text("log_${action}_euser", "<tt>$object</tt>");
	}
elsif ($type eq 'group') {
	return &text("log_${action}_group", "<tt>$object</tt>");
	}
elsif ($action eq 'kill') {
	if ($p->{'share'}) {
		return &text('log_skill', "<tt>$object</tt>",
			     "<tt>".&html_escape($p->{'share'})."</tt>");
		}
	else {
		return &text('log_kill', "<tt>$object</tt>");
		}
	}
elsif ($action eq 'kills') {
	if ($p->{'share'}) {
		return &text('log_skills', $object,
			     "<tt>".&html_escape($p->{'share'})."</tt>");
		}
	else {
		return &text('log_kills', $object);
		}
	}
elsif ($text{"log_${action}"}) {
	return $text{"log_${action}"};
	}
else {
	return undef;
	}
}