diodemail/smtp/parsers.go

33 lines
1.1 KiB
Go

/* diodemail - send-only smtp server
* Copyright (c) 2024 Gnarwhal
*
* This file is part of SSHare.
*
* SSHare is free software: you can redistribute it and/or modify it under the terms of
* the GNU General Public License as published by the Free Software Foundation,
* either version 3 of the License, or (at your option) any later version.
*
* SSHare is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
* more details.
*
* You should have received a copy of the GNU General Public License along with
* SSHare. If not, see <https://www.gnu.org/licenses/>.
*/
package smtp
import (
"fmt"
"regexp"
)
var ReversePath = regexp.MustCompile(fmt.Sprintf("(?:%v)|<>", path))
var ForwardPath = regexp.MustCompile(path)
// https://datatracker.ietf.org/doc/html/rfc5321#page-41
// Is this...legal, m'lord? (no, but ¯\_(ツ)_/¯)
// ...
// Ok fine. TODO. Happy now?
var path = "<(?:.*:)?(\\w+@\\w+(?:\\.\\w+)*)>"