Capture what automx answers today, before a Go program replaces it (issue 1630)
This commit is contained in:
@@ -0,0 +1 @@
|
||||
<clientConfig version="1.1"><emailProvider id="automx2-1"><identity /><domain>novox.be</domain><displayName>novox.be</displayName><displayShortName>novox.be</displayShortName><incomingServer type="imap"><hostname /><port>143</port><socketType>STARTTLS</socketType><username>%EMAILADDRESS%</username><authentication>password-cleartext</authentication></incomingServer><outgoingServer type="smtp"><hostname>mail.novox.be</hostname><port>587</port><socketType>STARTTLS</socketType><username>%EMAILADDRESS%</username><authentication>password-cleartext</authentication></outgoingServer></emailProvider></clientConfig>
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
Content-Length: 612
|
||||
Content-Type: application/xml
|
||||
Server: Werkzeug/3.1.9 Python/3.9.5
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
GET https://autoconfig.novox.be/mail/config-v1.1.xml?emailaddress=jochen@novox.be
|
||||
User-Agent: Thunderbird
|
||||
Accept: */*
|
||||
+1
@@ -0,0 +1 @@
|
||||
200 OK
|
||||
@@ -0,0 +1 @@
|
||||
<clientConfig version="1.1"><emailProvider id="automx2-1"><identity /><domain>novox.be</domain><displayName>novox.be</displayName><displayShortName>novox.be</displayShortName><incomingServer type="imap"><hostname /><port>143</port><socketType>STARTTLS</socketType><username>%EMAILADDRESS%</username><authentication>password-cleartext</authentication></incomingServer><outgoingServer type="smtp"><hostname>mail.novox.be</hostname><port>587</port><socketType>STARTTLS</socketType><username>%EMAILADDRESS%</username><authentication>password-cleartext</authentication></outgoingServer></emailProvider></clientConfig>
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
Content-Length: 612
|
||||
Content-Type: application/xml
|
||||
Server: Werkzeug/3.1.9 Python/3.9.5
|
||||
+2
@@ -0,0 +1,2 @@
|
||||
GET https://automx.novox.be/mail/config-v1.1.xml?emailaddress=jochen@novox.be
|
||||
User-Agent: Thunderbird
|
||||
+1
@@ -0,0 +1 @@
|
||||
200 OK
|
||||
+1
@@ -0,0 +1 @@
|
||||
<clientConfig version="1.1"><emailProvider id="automx2-1"><identity /><domain>novox.be</domain><displayName>novox.be</displayName><displayShortName>novox.be</displayShortName><incomingServer type="imap"><hostname /><port>143</port><socketType>STARTTLS</socketType><username>%EMAILADDRESS%</username><authentication>password-cleartext</authentication></incomingServer><outgoingServer type="smtp"><hostname>mail.novox.be</hostname><port>587</port><socketType>STARTTLS</socketType><username>%EMAILADDRESS%</username><authentication>password-cleartext</authentication></outgoingServer></emailProvider></clientConfig>
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
Content-Length: 612
|
||||
Content-Type: application/xml
|
||||
Server: Werkzeug/3.1.9 Python/3.9.5
|
||||
+2
@@ -0,0 +1,2 @@
|
||||
GET https://autodiscover.novox.be/mail/config-v1.1.xml?emailaddress=jochen@novox.be
|
||||
User-Agent: Thunderbird
|
||||
+1
@@ -0,0 +1 @@
|
||||
200 OK
|
||||
+2
@@ -0,0 +1,2 @@
|
||||
Content-Type: text/html; charset=utf-8
|
||||
Server: Werkzeug/3.1.9 Python/3.9.5
|
||||
+2
@@ -0,0 +1,2 @@
|
||||
GET https://autoconfig.novox.be/mail/config-v1.1.xml?emailaddress=nobody@unknown.example
|
||||
User-Agent: Thunderbird
|
||||
+1
@@ -0,0 +1 @@
|
||||
204 No Content
|
||||
+1
@@ -0,0 +1 @@
|
||||
Missing request argument "emailaddress"
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
Content-Length: 39
|
||||
Content-Type: text/html; charset=utf-8
|
||||
Server: Werkzeug/3.1.9 Python/3.9.5
|
||||
+2
@@ -0,0 +1,2 @@
|
||||
GET https://autoconfig.novox.be/mail/config-v1.1.xml
|
||||
User-Agent: Thunderbird
|
||||
+1
@@ -0,0 +1 @@
|
||||
400 Bad Request
|
||||
@@ -0,0 +1 @@
|
||||
<html><body>Show Thunderbird-style <a href="/mail/config-v1.1.xml?emailaddress=abc@example.com">XML configuration</a> for abc@example.com.</body></html>
|
||||
@@ -0,0 +1,3 @@
|
||||
Content-Length: 152
|
||||
Content-Type: text/html; charset=utf-8
|
||||
Server: Werkzeug/3.1.9 Python/3.9.5
|
||||
@@ -0,0 +1,2 @@
|
||||
GET https://autoconfig.novox.be/
|
||||
User-Agent: Mozilla/5.0
|
||||
@@ -0,0 +1 @@
|
||||
200 OK
|
||||
@@ -0,0 +1,5 @@
|
||||
<!doctype html>
|
||||
<html lang=en>
|
||||
<title>404 Not Found</title>
|
||||
<h1>Not Found</h1>
|
||||
<p>The requested URL was not found on the server. If you entered the URL manually please check your spelling and try again.</p>
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
Content-Length: 207
|
||||
Content-Type: text/html; charset=utf-8
|
||||
Server: Werkzeug/3.1.9 Python/3.9.5
|
||||
+1
@@ -0,0 +1 @@
|
||||
GET https://autoconfig.novox.be/.well-known/autoconfig/mail/config-v1.1.xml?emailaddress=jochen@novox.be
|
||||
+1
@@ -0,0 +1 @@
|
||||
404 Not Found
|
||||
@@ -0,0 +1,5 @@
|
||||
<!doctype html>
|
||||
<html lang=en>
|
||||
<title>500 Internal Server Error</title>
|
||||
<h1>Internal Server Error</h1>
|
||||
<p>The server encountered an internal error and was unable to complete your request. Either the server is overloaded or there is an error in the application.</p>
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
Content-Length: 265
|
||||
Content-Type: text/html; charset=utf-8
|
||||
Server: Werkzeug/3.1.9 Python/3.9.5
|
||||
+12
@@ -0,0 +1,12 @@
|
||||
POST https://autodiscover.novox.be/autodiscover/autodiscover.xml
|
||||
User-Agent: Microsoft Office/16.0 (Windows NT 10.0; Microsoft Outlook 16.0.14326; Pro)
|
||||
Content-Type: text/xml
|
||||
Accept: */*
|
||||
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Autodiscover xmlns="http://schemas.microsoft.com/exchange/autodiscover/outlook/requestschema/2006">
|
||||
<Request>
|
||||
<EMailAddress>jochen@novox.be</EMailAddress>
|
||||
<AcceptableResponseSchema>http://schemas.microsoft.com/exchange/autodiscover/outlook/responseschema/2006a</AcceptableResponseSchema>
|
||||
</Request>
|
||||
</Autodiscover>
|
||||
+1
@@ -0,0 +1 @@
|
||||
500 Internal Server Error
|
||||
+2
@@ -0,0 +1,2 @@
|
||||
Content-Type: text/html; charset=utf-8
|
||||
Server: Werkzeug/3.1.9 Python/3.9.5
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
POST https://autodiscover.novox.be/autodiscover/autodiscover.xml
|
||||
User-Agent: Microsoft Office/16.0
|
||||
Content-Type: text/xml
|
||||
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Autodiscover xmlns="http://schemas.microsoft.com/exchange/autodiscover/outlook/requestschema/2006"><Request><EMailAddress>nobody@unknown.example</EMailAddress><AcceptableResponseSchema>http://schemas.microsoft.com/exchange/autodiscover/outlook/responseschema/2006a</AcceptableResponseSchema></Request></Autodiscover>
|
||||
+1
@@ -0,0 +1 @@
|
||||
204 No Content
|
||||
+5
@@ -0,0 +1,5 @@
|
||||
<!doctype html>
|
||||
<html lang=en>
|
||||
<title>500 Internal Server Error</title>
|
||||
<h1>Internal Server Error</h1>
|
||||
<p>The server encountered an internal error and was unable to complete your request. Either the server is overloaded or there is an error in the application.</p>
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
Content-Length: 265
|
||||
Content-Type: text/html; charset=utf-8
|
||||
Server: Werkzeug/3.1.9 Python/3.9.5
|
||||
+5
@@ -0,0 +1,5 @@
|
||||
POST https://autodiscover.novox.be/autodiscover/autodiscover.xml
|
||||
User-Agent: Microsoft Office/16.0
|
||||
Content-Type: text/xml
|
||||
|
||||
this is not xml
|
||||
+1
@@ -0,0 +1 @@
|
||||
500 Internal Server Error
|
||||
+1
@@ -0,0 +1 @@
|
||||
Missing request argument "EMailAddress"
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
Content-Length: 39
|
||||
Content-Type: text/html; charset=utf-8
|
||||
Server: Werkzeug/3.1.9 Python/3.9.5
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
POST https://autodiscover.novox.be/autodiscover/autodiscover.xml
|
||||
User-Agent: Microsoft Office/16.0
|
||||
Content-Type: text/xml
|
||||
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Autodiscover xmlns="http://schemas.microsoft.com/exchange/autodiscover/outlook/requestschema/2006"><Request><AcceptableResponseSchema>http://schemas.microsoft.com/exchange/autodiscover/outlook/responseschema/2006a</AcceptableResponseSchema></Request></Autodiscover>
|
||||
+1
@@ -0,0 +1 @@
|
||||
400 Bad Request
|
||||
@@ -0,0 +1,5 @@
|
||||
<!doctype html>
|
||||
<html lang=en>
|
||||
<title>405 Method Not Allowed</title>
|
||||
<h1>Method Not Allowed</h1>
|
||||
<p>The method is not allowed for the requested URL.</p>
|
||||
@@ -0,0 +1,4 @@
|
||||
Allow: POST, OPTIONS
|
||||
Content-Length: 153
|
||||
Content-Type: text/html; charset=utf-8
|
||||
Server: Werkzeug/3.1.9 Python/3.9.5
|
||||
@@ -0,0 +1,2 @@
|
||||
GET https://autodiscover.novox.be/autodiscover/autodiscover.xml
|
||||
User-Agent: Microsoft Office/16.0
|
||||
@@ -0,0 +1 @@
|
||||
405 Method Not Allowed
|
||||
+5
@@ -0,0 +1,5 @@
|
||||
<!doctype html>
|
||||
<html lang=en>
|
||||
<title>404 Not Found</title>
|
||||
<h1>Not Found</h1>
|
||||
<p>The requested URL was not found on the server. If you entered the URL manually please check your spelling and try again.</p>
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
Content-Length: 207
|
||||
Content-Type: text/html; charset=utf-8
|
||||
Server: Werkzeug/3.1.9 Python/3.9.5
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
POST https://autodiscover.novox.be/Autodiscover/Autodiscover.xml
|
||||
User-Agent: Microsoft Office/16.0
|
||||
Content-Type: text/xml
|
||||
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Autodiscover xmlns="http://schemas.microsoft.com/exchange/autodiscover/outlook/requestschema/2006"><Request><EMailAddress>jochen@novox.be</EMailAddress><AcceptableResponseSchema>http://schemas.microsoft.com/exchange/autodiscover/outlook/responseschema/2006a</AcceptableResponseSchema></Request></Autodiscover>
|
||||
+1
@@ -0,0 +1 @@
|
||||
404 Not Found
|
||||
@@ -0,0 +1,5 @@
|
||||
<!doctype html>
|
||||
<html lang=en>
|
||||
<title>Redirecting...</title>
|
||||
<h1>Redirecting...</h1>
|
||||
<p>You should be redirected automatically to the target URL: <a href="https://automx.novox.be/mobileconfig/?emailaddress=jochen@novox.be">https://automx.novox.be/mobileconfig/?emailaddress=jochen@novox.be</a>. If not, click the link.
|
||||
@@ -0,0 +1,4 @@
|
||||
Content-Length: 319
|
||||
Content-Type: text/html; charset=utf-8
|
||||
Location: https://automx.novox.be/mobileconfig/?emailaddress=jochen@novox.be
|
||||
Server: Werkzeug/3.1.9 Python/3.9.5
|
||||
@@ -0,0 +1,3 @@
|
||||
GET https://automx.novox.be/mobileconfig?emailaddress=jochen@novox.be
|
||||
User-Agent: Mozilla/5.0 (iPhone; CPU iPhone OS 17_0 like Mac OS X) Safari
|
||||
Accept: */*
|
||||
@@ -0,0 +1 @@
|
||||
308 Permanent Redirect
|
||||
@@ -0,0 +1,5 @@
|
||||
<!doctype html>
|
||||
<html lang=en>
|
||||
<title>400 Bad Request</title>
|
||||
<h1>Bad Request</h1>
|
||||
<p>The browser (or proxy) sent a request that this server could not understand.</p>
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
Content-Length: 167
|
||||
Content-Type: text/html; charset=utf-8
|
||||
Server: Werkzeug/3.1.9 Python/3.9.5
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
GET https://automx.novox.be/mobileconfig/?emailaddress=jochen@novox.be
|
||||
User-Agent: Mozilla/5.0 (iPhone; CPU iPhone OS 17_0 like Mac OS X) Safari
|
||||
Accept: */*
|
||||
+1
@@ -0,0 +1 @@
|
||||
400 Bad Request
|
||||
+2
@@ -0,0 +1,2 @@
|
||||
Content-Type: text/html; charset=utf-8
|
||||
Server: Werkzeug/3.1.9 Python/3.9.5
|
||||
+2
@@ -0,0 +1,2 @@
|
||||
GET https://automx.novox.be/mobileconfig/?emailaddress=nobody@unknown.example
|
||||
User-Agent: Mozilla/5.0 (iPhone)
|
||||
+1
@@ -0,0 +1 @@
|
||||
204 No Content
|
||||
+1
@@ -0,0 +1 @@
|
||||
Missing request argument "emailaddress"
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
Content-Length: 39
|
||||
Content-Type: text/html; charset=utf-8
|
||||
Server: Werkzeug/3.1.9 Python/3.9.5
|
||||
+2
@@ -0,0 +1,2 @@
|
||||
GET https://automx.novox.be/mobileconfig/
|
||||
User-Agent: Mozilla/5.0 (iPhone)
|
||||
+1
@@ -0,0 +1 @@
|
||||
400 Bad Request
|
||||
@@ -0,0 +1,30 @@
|
||||
What mailu's autoconfiguration module (automx2 2021.6, container mailu-automx on novox, Werkzeug/3.1.9 Python/3.9.5)
|
||||
answers to the requests mail clients make (R4d step AMX-1, issue 1630, ADR 0480).
|
||||
|
||||
Captured 2026-10-21 between 13:58:25 and 13:58:52 (CEST; the Date headers said 11:58 GMT) with the mesh tool
|
||||
shanks/netcheck.netcheck_request, called from shanks, through the names clients use (autoconfig.novox.be,
|
||||
autodiscover.novox.be, automx.novox.be: HTTPS, the mesh's route), no ssh. A redirect is reported, never followed.
|
||||
Mail domain served: novox.be. Mailbox used: jochen@novox.be; unknown domain: nobody@unknown.example.
|
||||
|
||||
Each capture is four files with the same stem:
|
||||
<stem>.request method and URL, then the request headers sent, then (after a blank line) the body sent
|
||||
<stem>.status the status line
|
||||
<stem>.headers the response headers, sorted by name, without Date (it changes on every request)
|
||||
<stem>.body the response body, byte for byte (Content-Length in .headers equals its size)
|
||||
The files were written from the tool's answers by a script (not by retyping each by hand); the tool returns JSON, so
|
||||
a later capture that wants exact bytes needs a tool that writes the answer to a file.
|
||||
|
||||
What the answers show (read, not guessed):
|
||||
- GET /mail/config-v1.1.xml?emailaddress=... answers 200 application/xml on all three names; same body on each.
|
||||
- The incoming (IMAP) server has an EMPTY hostname (<hostname />), port 143, STARTTLS. The outgoing server is
|
||||
mail.novox.be:587 STARTTLS. Cause (from reading the module, not from the database): automx/files/add-domains:35
|
||||
reads AMX_IMAP_SERVER, files/mailu.env:58 sets AMX_IMAP_ADDRESS, so the IMAP name was never written.
|
||||
A client given this answer cannot find its IMAP server.
|
||||
- POST /autodiscover/autodiscover.xml with a valid request for the served domain answers 500 (the Outlook
|
||||
answer for a real mailbox does not work today). Unknown domain: 204 no body. Malformed body: 500.
|
||||
No EMailAddress element: 400 "Missing request argument "EMailAddress"". GET: 405 with Allow: POST, OPTIONS.
|
||||
The path is case sensitive (/Autodiscover/Autodiscover.xml is 404).
|
||||
- GET /mobileconfig?emailaddress=... redirects (308) to /mobileconfig/?emailaddress=...; for the served domain that
|
||||
answers 400 with no profile; unknown domain 204; no emailaddress 400.
|
||||
- GET / on autoconfig answers 200 with a small HTML page linking to an example address.
|
||||
- Not captured: the database rows (no mesh tool reads /data/db.sqlite; issue 1630 AC4).
|
||||
Reference in New Issue
Block a user