Server IP : 195.201.23.43 / Your IP : 3.12.107.192 Web Server : Apache System : Linux webserver2.vercom.be 5.4.0-192-generic #212-Ubuntu SMP Fri Jul 5 09:47:39 UTC 2024 x86_64 User : kdecoratie ( 1041) PHP Version : 7.1.33-63+ubuntu20.04.1+deb.sury.org+1 Disable Function : 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, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /usr/share/webmin/virtual-server/ |
Upload File : |
#!/usr/bin/perl # This script gets copied to each domain's CGI directory to output the # correct SMTP and IMAP server details. # For internal version checking $AUTOCONFIG_VERSION = 1.0; # These variables get replaced when the script is copied $OWNER = ''; # Bob's website $USER = ''; # bob $SMTP_HOST = ''; # mail.bob.com $SMTP_PORT = ''; # 25 $SMTP_TYPE = ''; # plain or SSL $SMTP_SSL = ''; # yes or no $SMTP_SSL2 = ''; # on or off $SMTP_ENC = ''; # password-cleartext $IMAP_HOST = ''; # mail.bob.com $IMAP_PORT = ''; # 143 $IMAP_TYPE = ''; # plain or SSL $IMAP_SSL = ''; # yes or no $IMAP_ENC = ''; # password-cleartext or password-encrypted $PREFIX = ''; # bob $STYLE = ''; # 1 sub error_exit { print "Content-type: text/plain\n\n"; print @_,"\n"; exit(0); } # Get email address parameter if ($ENV{'QUERY_STRING'} =~ /emailaddress=([^&]+)/) { # Thunderbird style $email = $1; $email =~ s/%(..)/pack("c",hex($1))/ge; ($mailbox, $SMTP_DOMAIN) = split(/\@/, $email); $mailbox && $SMTP_DOMAIN || &error_exit("emailaddress parameter is not in user@domain format"); } elsif ($ENV{'REQUEST_METHOD'} eq 'POST') { # Outlook style read(STDIN, $buf, $ENV{'CONTENT_LENGTH'}); $buf =~ /<EMailAddress>([^@<>]+)@([^<>]+)<\/EMailAddress>/i || &error_exit("EMailAddress missing from input XML"); ($mailbox, $SMTP_DOMAIN) = ($1, $2); $email = $1."\@".$2; } else { &error_exit("Missing emailaddress parameter"); } # Work out the full username if ($mailbox eq $USER) { # Domain owner, so no need for prefix $SMTP_LOGIN = $USER; } elsif ($STYLE == 0) { $SMTP_LOGIN = $mailbox.".".$PREFIX; } elsif ($STYLE == 1) { $SMTP_LOGIN = $mailbox."-".$PREFIX; } elsif ($STYLE == 2) { $SMTP_LOGIN = $PREFIX.".".$mailbox; } elsif ($STYLE == 3) { $SMTP_LOGIN = $PREFIX."-".$mailbox; } elsif ($STYLE == 4) { $SMTP_LOGIN = $mailbox."_".$PREFIX; } elsif ($STYLE == 5) { $SMTP_LOGIN = $PREFIX."_".$mailbox; } elsif ($STYLE == 6) { $SMTP_LOGIN = $email; } elsif ($STYLE == 7) { $SMTP_LOGIN = $mailbox."\%".$PREFIX; } else { &error_exit("Unknown style $STYLE"); } $MAILBOX = $mailbox; # Output the XML print "Content-type: text/xml\n\n"; if ($ENV{'SCRIPT_NAME'} =~ /autodiscover.xml/i) { # Outlook print <<EOF; _OUTLOOK_XML_GOES_HERE_ EOF } else { # Thunderbird print <<EOF; _THUNDERBIRD_XML_GOES_HERE_ EOF }Private