<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://wiki.pscs.co.uk/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://wiki.pscs.co.uk/feed.php">
        <title>PSCS Wiki</title>
        <description></description>
        <link>https://wiki.pscs.co.uk/</link>
        <image rdf:resource="https://wiki.pscs.co.uk/_media/wiki:dokuwiki.svg" />
       <dc:date>2026-05-06T11:55:54+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:lua_smtp_server_script?rev=1746692615&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:lua_smtp_mx_control?rev=1771948188&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:lua_smtp_relay_control?rev=1755163495&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:sender_advanced_relay_settings?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:lan_forwarding_script?rev=1755706120&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:password_strength_checking_script?rev=1767605139&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:imap4_server_script?rev=1750675906&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:signature_script?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:archive_script?rev=1679787211&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:user_manager_script?rev=1713775058&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:scheduling_management_scripts?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:attachment_extraction_script?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:autoresponder_global_script?rev=1774279769&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:error_handling_script?rev=1700475481&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:outgoing_message_script?rev=1711018194&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:smtp_filtering?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_httpget?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_httpgetmd5?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_httppost?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_winhttpget?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:virus_scan_filter_script?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:access_restrictions_internal_format?rev=1690964557&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:address_book_tab?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:attachment_processing_script?rev=1669282143&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:copy_smtp_rules?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:group_a_user_s_folders_into_letter_groups?rev=1773659562&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:lua_hash_functions?rev=1730217591&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:lua_monitor_script?rev=1566922420&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:lua_pop3_client_script?rev=1692172081&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:lua_smtp_mx_server_rules?rev=1771948203&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:management_scripting?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:scheduler_script?rev=1628506507&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:smtp_advanced?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:smtp_direct?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:smtp_load_limiting?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:smtp_rules_script?rev=1774525319&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_countmatches?rev=1749197557&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_getaddresstype?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_getusergroup?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_variables?rev=1692028861&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:vpop3.setsetting?rev=1615307830&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:vpop3net.gethttp?rev=1615308164&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://wiki.pscs.co.uk/_media/wiki:dokuwiki.svg">
        <title>PSCS Wiki</title>
        <link>https://wiki.pscs.co.uk/</link>
        <url>https://wiki.pscs.co.uk/_media/wiki:dokuwiki.svg</url>
    </image>
    <item rdf:about="https://wiki.pscs.co.uk/reference:lua_smtp_server_script?rev=1746692615&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-05-08T08:23:35+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>SMTP Server Lua Scripting</title>
        <link>https://wiki.pscs.co.uk/reference:lua_smtp_server_script?rev=1746692615&amp;do=diff</link>
        <description>SMTP Server Lua Scripting

The SMTP Server Lua Script is called SMTPSVR.LUA and can be edited from the Settings -&gt; Scripts page in the VPOP3 settings. This script is called whenever an instance of the VPOP3 SMTP server is launched - ie whenever someone opens a connection to port 25 on the VPOP3 server to send it a message, whether from a local user or an incoming SMTP message.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:lua_smtp_mx_control?rev=1771948188&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-02-24T15:49:48+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Lua SMTP MX Control</title>
        <link>https://wiki.pscs.co.uk/reference:lua_smtp_mx_control?rev=1771948188&amp;do=diff</link>
        <description>Lua SMTP MX Control

Every time VPOP3 is going to send messages using direct MX sending, it runs a script called mxout.lua which can be created/edited in Settings -&gt; Scripts (or in the VPOP3 directory in VPOP3 v6.6 or earlier).

Global Variables

Starting with v8.8, the following global variables are defined:</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:lua_smtp_relay_control?rev=1755163495&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-08-14T09:24:55+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Lua SMTP Relay Control</title>
        <link>https://wiki.pscs.co.uk/reference:lua_smtp_relay_control?rev=1755163495&amp;do=diff</link>
        <description>Lua SMTP Relay Control

Every time VPOP3 is going to send messages via SMTP Relay, it runs a script called relayout.lua in the VPOP3 directory.

Global Variables

This script may have global variables, depending on your version of VPOP3.

In VPOP3 3.0.0L and later, there are two read-only global variables set at the start of the script:</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:sender_advanced_relay_settings?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Mail Sender Advanced Relay Settings</title>
        <link>https://wiki.pscs.co.uk/reference:sender_advanced_relay_settings?rev=1542192349&amp;do=diff</link>
        <description>Mail Sender Advanced Relay Settings

SMTP Return Address

The SMTP Return Address (or Return Path) is a hidden part of a message which says where bounce messages (and other automated responses) should be sent. (It is not the same as the Reply address</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:lan_forwarding_script?rev=1755706120&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-08-20T16:08:40+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>LAN Forwarding Scripting</title>
        <link>https://wiki.pscs.co.uk/reference:lan_forwarding_script?rev=1755706120&amp;do=diff</link>
        <description>LAN Forwarding Scripting

(Added in V8.7)

This is stored in the &#039;LanForwarding.lua&#039; script in Settings -&gt; Scripts

Pre-send

These functions are called before the message is placed in the LAN Forwarding queue

There are two global variables set:

	*</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:password_strength_checking_script?rev=1767605139&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-01-05T09:25:39+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Password Strength Checking Script</title>
        <link>https://wiki.pscs.co.uk/reference:password_strength_checking_script?rev=1767605139&amp;do=diff</link>
        <description>Password Strength Checking Script

You can tell VPOP3 to enforce password strength checks by using a Lua script which performs the checks for you.

The Lua script can be edited in Settings -&gt; Scripts and is called passwordcheck.lua (in older versions of VPOP3 it is stored in a file called</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:imap4_server_script?rev=1750675906&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-06-23T10:51:46+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>IMAP4 Server Scripting</title>
        <link>https://wiki.pscs.co.uk/reference:imap4_server_script?rev=1750675906&amp;do=diff</link>
        <description>IMAP4 Server Scripting

(Added in V6.12)

DoCapability function

When the IMAP4 CAPABILITY command is received, VPOP3 generates a capability string based on settings, then calls
DoCapability(ipaddr, capabilities)
	*  ipaddr = IP address of the client computer</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:signature_script?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Signature Script</title>
        <link>https://wiki.pscs.co.uk/reference:signature_script?rev=1542192349&amp;do=diff</link>
        <description>Signature Script

If you want more complex signatures on outgoing emails, rather than the static text/HTML you can define within VPOP3, then you can use a simple Lua script to define the signature.

The Lua script is stored in a file called signature.lua</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:archive_script?rev=1679787211&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-03-25T23:33:31+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Archive Script</title>
        <link>https://wiki.pscs.co.uk/reference:archive_script?rev=1679787211&amp;do=diff</link>
        <description>Archive Script

(from VPOP3 v6 onwards)

Archive scripting lets you indicate whether full message content should be stored in the message archive. This could be used, for instance, for filtering out messages containing credit card details.

The message headers will still be archived, along with the explanation text returned by the script.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:user_manager_script?rev=1713775058&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-04-22T08:37:38+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>User Manager Script</title>
        <link>https://wiki.pscs.co.uk/reference:user_manager_script?rev=1713775058&amp;do=diff</link>
        <description>User Manager Script

If you want people to be able to log in using a different username than their VPOP3 username (eg if you want them to be able to log in using an email address), then you can use the UserManager Lua script

The Lua script is managed through the Settings → Scripts page in VPOP3 v8.0 and later and is called &#039;UserManager.LUA.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:scheduling_management_scripts?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Scheduling Management Scripts</title>
        <link>https://wiki.pscs.co.uk/reference:scheduling_management_scripts?rev=1542192349&amp;do=diff</link>
        <description>Scheduling Management Scripts

VPOP3 runs a script called scheduler.lua in the background, it will periodically call functions in this script at approximately 1 minute, 5 minute, 1 hour and 1 day intervals. These times are only approximate so should not be relied upon for timing.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:attachment_extraction_script?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Attachment Extraction Scripting</title>
        <link>https://wiki.pscs.co.uk/reference:attachment_extraction_script?rev=1542192349&amp;do=diff</link>
        <description>Attachment Extraction Scripting

This is the &#039;extraction.lua&#039; script.

(Added in V6.17)

This script has one functions:

	*  Extract

This functions is called if the attachment extraction is enabled in Settings -&gt; Attachment Processing -&gt; Extraction.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:autoresponder_global_script?rev=1774279769&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-23T15:29:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Autoresponder Global Scripting</title>
        <link>https://wiki.pscs.co.uk/reference:autoresponder_global_script?rev=1774279769&amp;do=diff</link>
        <description>Autoresponder Global Scripting

For scripting to modify the autoresponder text which is embedded in the autoresponder itself, see Autoresponder Scripting

The Autoresponder Global Script is executed for every autoresponse. It is stored in the &#039;Autoresponder.lua&#039; script in Settings → Scripts</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:error_handling_script?rev=1700475481&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-20T10:18:01+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Error Handling Scripting</title>
        <link>https://wiki.pscs.co.uk/reference:error_handling_script?rev=1700475481&amp;do=diff</link>
        <description>Error Handling Scripting

For most error messages that VPOP3 generates, it allows control of error messages, eg to limit the frequency of error messages if they would be generated repeatedly. These limits are set in Settings -&gt; Admin Settings -&gt; Message Control. However, if you want more granular control, you can use Lua scripting for more fine-grained control</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:outgoing_message_script?rev=1711018194&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-03-21T10:49:54+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Outgoing Message Scripting</title>
        <link>https://wiki.pscs.co.uk/reference:outgoing_message_script?rev=1711018194&amp;do=diff</link>
        <description>Outgoing Message Scripting

Every time VPOP3 adds a message to the Outgoing mail queue, it runs a script called outmessage.lua.

Scripts are stored as files in the VPOP3 directory in VPOP3 v6.6 and earlier, or managed through the Settings -&gt; Scripts page in VPOP3 v6.7 and later.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:smtp_filtering?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>SMTP Service - Filtering</title>
        <link>https://wiki.pscs.co.uk/reference:smtp_filtering?rev=1542192349&amp;do=diff</link>
        <description>SMTP Service - Filtering

The SMTP Server -&gt; Filtering tab lets you set up filtering of messages going through the VPOP3 SMTP service. This may be incoming SMTP messages, or locally sent messages.

SMTP Rules

SMTP Rules let you create custom rules for processing messages as they go through the VPOP3 SMTP service.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_httpget?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: HTTPGet</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_httpget?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: HTTPGet
Statement  HTTPGet Version  2.3.7+ Purpose  Enables the script to retrieve a web page 
The HTTPGet statement requires a url, headers variable name and content variable name, in the format
HTTPGet &lt;url&gt; &lt;headers variable name&gt; &lt;content variable name&gt;</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_httpgetmd5?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: HTTPGetMD5</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_httpgetmd5?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: HTTPGetMD5
Statement  HTTPGetMD5 Version  2.3.7+ Purpose  Enables the script to retrieve a web page, returning an MD5 hash of its contents in hex encoded form 
The HTTPGetMD5 statement requires a url, headers variable name and MD5 hash variable name, in the format</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_httppost?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: HTTPPost</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_httppost?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: HTTPPost
Statement  HTTPPost Version  2.4.9+ Purpose  Enables the script to post data to a web server 
The HTTPPost statement requires a url, data string, headers variable name and content variable name, in the format
HTTPPost &lt;url&gt; &lt;data string&gt; &lt;headers variable name&gt; &lt;content variable name&gt;</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_winhttpget?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: WinHTTPGet</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_winhttpget?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: WinHTTPGet
Statement  WinHTTPGet Version  2.4.9+ Purpose  Enables the script to retrieve a web page using the WinINET functionality 
The WinHTTPGet statement requires a url, headers variable name and content variable name, in the format</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:virus_scan_filter_script?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Virus Scan Filter Scripting</title>
        <link>https://wiki.pscs.co.uk/reference:virus_scan_filter_script?rev=1542192349&amp;do=diff</link>
        <description>Virus Scan Filter Scripting

(Added in V6.17)

The VIRUSSCAN.LUA script has a single function FilterResult

This function is called for every virus that a VPOP3-integrated (eg VPOP3 AV or Sophos SAV Interface) detects. The function has the opportunity to &#039;filter&#039; the virus detection so that VPOP3 will act as if the virus was not detected.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:access_restrictions_internal_format?rev=1690964557&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-08-02T08:22:37+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Access Restrictions Internal Format</title>
        <link>https://wiki.pscs.co.uk/reference:access_restrictions_internal_format?rev=1690964557&amp;do=diff</link>
        <description>Access Restrictions Internal Format

VPOP3 internally stores service IP Access Restrictions in its settings database using the following format to encode the multiple entries

These are stored in the settings database as *ALLOWED*.DAT (using VPOP3SETTINGS GET *ALLOWED*.DAT will list them)</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:address_book_tab?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Address Book tab</title>
        <link>https://wiki.pscs.co.uk/reference:address_book_tab?rev=1542192349&amp;do=diff</link>
        <description>Address Book tab

The Address Book tab within VPOP3 webmail enables you to manage your lists of contacts and add those contacts into a new or existing message. Substantial alterations to the interface were introduced in version 5. Both interfaces are documented.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:attachment_processing_script?rev=1669282143&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-11-24T09:29:03+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Attachment Processing Script</title>
        <link>https://wiki.pscs.co.uk/reference:attachment_processing_script?rev=1669282143&amp;do=diff</link>
        <description>Attachment Processing Script

(Added in v7.6)

This script has functions to allow message attachments to be altered:

	*  NeedsRecode
	*  NeedsRewrite
	*  GetRename
	*  GetContentDispositionLine (added in v7.8)
	*  IsLockNeeded
	*  RewriteAttachment</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:copy_smtp_rules?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Copy SMTP Rules - Database Query</title>
        <link>https://wiki.pscs.co.uk/reference:copy_smtp_rules?rev=1542192349&amp;do=diff</link>
        <description>Copy SMTP Rules - Database Query

This is an advanced Database action. There is no simple query that will perform the required operation, so we have to create a custom PostgreSQL function to copy the data.

At a command prompt in the VPOP3 directory run</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:group_a_user_s_folders_into_letter_groups?rev=1773659562&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-16T11:12:42+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Group a user&#039;s folders into letter groups</title>
        <link>https://wiki.pscs.co.uk/reference:group_a_user_s_folders_into_letter_groups?rev=1773659562&amp;do=diff</link>
        <description>Group a user&#039;s folders into letter groups

This is useful in VPOP3 Enterprise if you have a large folder with many subfolders and want to group the subfolders into other subfolders based on their first letter

For example, if you have

	*  Customers</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:lua_hash_functions?rev=1730217591&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-29T15:59:51+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Lua Hashing Functions</title>
        <link>https://wiki.pscs.co.uk/reference:lua_hash_functions?rev=1730217591&amp;do=diff</link>
        <description>Lua Hashing Functions

Added in VPOP3 8.7

Four functions have been added to perform hash algorithms on a text string

	*  VPOP3.SHA1(string)
	*  VPOP3.SHA256(string)
	*  VPOP3.SHA512(string)
	*  VPOP3.MD5(string)

All functions take a string parameter, and return a table of numbers containing the hash value (one byte per table entry). The length of the returned table are:</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:lua_monitor_script?rev=1566922420&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-08-27T16:13:40+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Monitor Scripting</title>
        <link>https://wiki.pscs.co.uk/reference:lua_monitor_script?rev=1566922420&amp;do=diff</link>
        <description>Monitor Scripting

(Added in V6.15)

This script has three functions:

	*  MonitorIncoming
	*  MonitorInternal
	*  MonitorOut

The functions are similar, except they are called when different messages are to be monitored (incoming, internal and outgoing messages respectively).</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:lua_pop3_client_script?rev=1692172081&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-08-16T07:48:01+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>POP3 Client Lua Scripting</title>
        <link>https://wiki.pscs.co.uk/reference:lua_pop3_client_script?rev=1692172081&amp;do=diff</link>
        <description>POP3 Client Lua Scripting

The POP3 Client Lua Script is called POP3CLT.LUA and is edited in Settings -&gt; Scripts. This script is called whenever VPOP3 runs a POP3 session to download messages from a remote POP3 server.

VPOP3 will call the following Lua functions in the script at the following times:</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:lua_smtp_mx_server_rules?rev=1771948203&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-02-24T15:50:03+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Lua SMTP MX Server Rules</title>
        <link>https://wiki.pscs.co.uk/reference:lua_smtp_mx_server_rules?rev=1771948203&amp;do=diff</link>
        <description>Lua SMTP MX Server Rules

Every time VPOP3 checks for remote MX server for sending messages using direct MX sending, it runs a script called mxserverrules.lua which can be created/edited in Settings -&gt; Scripts (or in the VPOP3 directory in VPOP3 v6.6 or earlier).</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:management_scripting?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Management Scripting</title>
        <link>https://wiki.pscs.co.uk/reference:management_scripting?rev=1542192349&amp;do=diff</link>
        <description>Management Scripting

In VPOP3 Enterprise, from version 6.17 there is the facility to run Lua scripts manually or according to a schedule. These scripts can do things like access mail folders &amp; messages and perform some maintenance on them.

Creating a new script</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:scheduler_script?rev=1628506507&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-08-09T10:55:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Scheduled Task Script</title>
        <link>https://wiki.pscs.co.uk/reference:scheduler_script?rev=1628506507&amp;do=diff</link>
        <description>Scheduled Task Script

Note that this functionality is only available in VPOP3 Enterprise

VPOP3 Enterprise can run Lua script periodically to do custom background tasks. It can run a function every minute, 5 minutes, hourly or daily.

The Lua script is stored in a file called</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:smtp_advanced?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>SMTP Service -&gt; Advanced Tab</title>
        <link>https://wiki.pscs.co.uk/reference:smtp_advanced?rev=1542192349&amp;do=diff</link>
        <description>SMTP Service -&gt; Advanced Tab

Services -&gt; SMTP Server -&gt; Advanced Tab

Refuse SMTP Connections from

This setting should be rarely needed, and should be normally left blank. It is here for historic purposes.

If you put some text in this box, then VPOP3 will refuse any SMTP connections from clients whose &#039;HELO&#039;/&#039;EHLO&#039; command data contains the text specified here as a substring. Eg, if this setting is set to &#039;.myisp.com&#039;, then VPOP3 would refuse SMTP connections from any client which sends the c…</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:smtp_direct?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Mail Connectors -&gt; Mail Senders -&gt; SMTP Direct</title>
        <link>https://wiki.pscs.co.uk/reference:smtp_direct?rev=1542192349&amp;do=diff</link>
        <description>Mail Connectors -&gt; Mail Senders -&gt; SMTP Direct

VPOP3 can be configured to send mail directly to the recipient&#039;s mail server (or the recipient&#039;s mail service provider). Usually this is only used if you have a high-end business class Internet connection - such as a leased line, or your mail server is co-located in a data centre. Attempts to use SMTP Direct sending on a dial-up/ADSL/Cable/FTTC/etc connection may be problematic since the receiving mail server may think you a home user who has been …</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:smtp_load_limiting?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>SMTP -&gt; Load Limiting tab</title>
        <link>https://wiki.pscs.co.uk/reference:smtp_load_limiting?rev=1542192349&amp;do=diff</link>
        <description>SMTP -&gt; Load Limiting tab

This page is reached from Services -&gt; SMTP Server, then the Load Limiting tab.

Here you can set limits on how many active SMTP sessions there are, and other related settings. This lets you limit the load on the VPOP3 server. This is especially important if VPOP3 is performing spam filtering on incoming SMTP messages, because the spam filter can add considerable load.
You can reduce the spamfilter load by using the</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:smtp_rules_script?rev=1774525319&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-26T11:41:59+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Lua SMTP Rules Scripts</title>
        <link>https://wiki.pscs.co.uk/reference:smtp_rules_script?rev=1774525319&amp;do=diff</link>
        <description>Lua SMTP Rules Scripts

When VPOP3 is processing SMTP Rules for messages received by SMTP, it runs a script called smtprules_(x).lua, where (x) is replaced by the numeric ID of the SMTP service

VPOP3 processes SMTP Rules at least three times for each message - once when MAIL FROM has been received, once for each RCPT TO, and once when the whole message data has been received.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_countmatches?rev=1749197557&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-06-06T08:12:37+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: CountMatches</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_countmatches?rev=1749197557&amp;do=diff</link>
        <description>Spam Filter Rules: CountMatches
Statement  CountMatches Version  2.3.13+ Purpose  Counts the number of times a specific regular expression matches in a string 
CountMatches statements require a data parameter, a search value, and the name of the variable to place the count into, in the format</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_getaddresstype?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: GetAddressType</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_getaddresstype?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: GetAddressType
Statement  GetAddressType Version  2.4.6+ Purpose  Analyses a specified email address and reports what &#039;type&#039; of address it is 
The GetAddressType statement requires an email address and variable name, in the format</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_getusergroup?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: GetUserGroup</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_getusergroup?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: GetUserGroup
Statement  GetUserGroup Version  2.4.5+ Purpose  Checks if the specified user is assigned to a VPOP3 group, and returns the group name 
The GetUserGroup statement requires a username and variable name, in the format
GetUserGroup &lt;username&gt; &lt;variable name&gt;</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_variables?rev=1692028861&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-08-14T16:01:01+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: Variables</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_variables?rev=1692028861&amp;do=diff</link>
        <description>Spam Filter Rules: Variables

The VPOP3 spam filter script language supports simple variables. In most places these are specified as ${&lt;variable name&gt;}, but in some places they are just specified as &lt;variable name&gt; - for instance where a statement always puts its result into a variable.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:vpop3.setsetting?rev=1615307830&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-03-09T16:37:10+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>VPOP3.SetSetting</title>
        <link>https://wiki.pscs.co.uk/reference:vpop3.setsetting?rev=1615307830&amp;do=diff</link>
        <description>VPOP3.SetSetting

The Lua function &#039;VPOP3.SetSetting&#039; sets a general setting forVPOP3

It takes two parameters:

	*  The name of the setting. This can either by the &#039;Name&#039; field of the &#039;Settings.Settings&#039; database table or the internal setting name
	*  The data to set (must be a string)</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:vpop3net.gethttp?rev=1615308164&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-03-09T16:42:44+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>VPOP3Net.GetHTTP</title>
        <link>https://wiki.pscs.co.uk/reference:vpop3net.gethttp?rev=1615308164&amp;do=diff</link>
        <description>VPOP3Net.GetHTTP

This function takes a single parameter

	*  the URL to retrieve. This can be http:// or https://

The function returns two values

	*  a table containing the result of the GET
		*  Host - the hostname
		*  File - the filename
		*  Headers - a table containing the response headers</description>
    </item>
</rdf:RDF>
