diff --git a/.version_history b/.version_history index 26b078b..4b8dce6 100644 --- a/.version_history +++ b/.version_history @@ -27,7 +27,3 @@ a670de0f,24bd94d,feature/systemd-hardening,2025-09-07T16:40:47Z,michael,git,lua- 4ee95dbc,08b49d3,security/sanitize-test-scripts,2025-09-07T19:25:38Z,michael,git,lua-api 59c85431,8b78066,main,2025-09-10T10:20:50Z,michael,git,lua-api a71dd794,f5d9f35,main,2025-09-10T12:27:54Z,michael,git,lua-api -de5318f2,304b010,main,2025-09-10T14:45:12Z,michael,git,lua-api -980d67cd,7a921dc,main,2025-09-10T14:46:13Z,michael,git,lua-api -efbcbbd8,f20915f,main,2025-09-10T18:01:18Z,michael,git,lua-api -f777e765,f684ea1,main,2025-09-10T18:04:19Z,michael,git,lua-api diff --git a/VERSION b/VERSION index 845639e..d917d3e 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.1.4 +0.1.2 diff --git a/src/smtp.lua b/src/smtp.lua index a3340a8..ab59d17 100644 --- a/src/smtp.lua +++ b/src/smtp.lua @@ -1,6 +1,6 @@ --- src/smtp.lua +-- furt-lua/src/smtp.lua -- Universal SMTP implementation with SSL compatibility --- Supports both luaossl (Arch) and luasec (OpenBSD) +-- Supports both luaossl (Arch/karl) and luasec (OpenBSD/walter) -- Dragons@Work Digital Sovereignty Project local socket = require("socket") @@ -237,33 +237,6 @@ function SMTP:send_email(to_address, subject, message, from_name) return cleanup_and_fail("EHLO failed: " .. response) end - -- STARTTLS hinzufügen für Port 587 - if self.port == 587 and self.use_ssl then - -- STARTTLS command - local success, response = self:send_command(sock, "STARTTLS", 220) - if not success then - return cleanup_and_fail("STARTTLS failed: " .. response) - end - - -- Upgrade connection to SSL - local ssl_sock, err = self.ssl_compat:wrap_socket(sock, { - mode = "client", - protocol = "tlsv1_2" - }) - - if not ssl_sock then - return cleanup_and_fail("SSL upgrade failed: " .. err) - end - - sock = ssl_sock - - -- EHLO again over encrypted connection - local success, response = self:send_command(sock, "EHLO furt-lua", 250) - if not success then - return cleanup_and_fail("EHLO after STARTTLS failed: " .. response) - end - end - -- AUTH LOGIN local success, response = self:send_command(sock, "AUTH LOGIN", 334) if not success then @@ -304,11 +277,6 @@ function SMTP:send_email(to_address, subject, message, from_name) return cleanup_and_fail("DATA command failed: " .. response) end - -- Generate unique Message-ID - -- Extract domain from configured from_address - local hostname = self.from_address:match("@(.+)") or self.server - local message_id = string.format("<%d.%d@%s>", os.time(), math.random(10000), hostname) - -- Build email message local display_name = from_name or "Furt Contact Form" local email_content = string.format( @@ -316,10 +284,7 @@ function SMTP:send_email(to_address, subject, message, from_name) "To: <%s>\r\n" .. "Subject: %s\r\n" .. "Date: %s\r\n" .. - "Message-ID: %s\r\n" .. - "MIME-Version: 1.0\r\n" .. "Content-Type: text/plain; charset=UTF-8\r\n" .. - "Content-Transfer-Encoding: 8bit\r\n" .. "\r\n" .. "%s\r\n" .. ".", @@ -328,7 +293,6 @@ function SMTP:send_email(to_address, subject, message, from_name) to_address, subject, os.date("%a, %d %b %Y %H:%M:%S %z"), - message_id, message )