authres

package
v0.6.8 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 5, 2024 License: MIT Imports: 4 Imported by: 5

Documentation

Overview

Package authres parses and formats Authentication-Results

Authentication-Results header fields are standardized in RFC 7601.

Example
package main

import (
	"log"

	"github.com/emersion/go-msgauth/authres"
)

func main() {
	// Format
	results := []authres.Result{
		&authres.SPFResult{Value: authres.ResultPass, From: "example.net"},
		&authres.AuthResult{Value: authres.ResultPass, Auth: "sender@example.com"},
	}
	s := authres.Format("example.com", results)
	log.Println(s)

	// Parse
	identifier, results, err := authres.Parse(s)
	if err != nil {
		log.Fatal(err)
	}

	log.Println(identifier, results)
}
Output:

Index

Examples

Constants

View Source
const (
	ResultNone      ResultValue = "none"
	ResultPass                  = "pass"
	ResultFail                  = "fail"
	ResultPolicy                = "policy"
	ResultNeutral               = "neutral"
	ResultTempError             = "temperror"
	ResultPermError             = "permerror"
	ResultHardFail              = "hardfail"
	ResultSoftFail              = "softfail"
)

Variables

This section is empty.

Functions

func Format

func Format(identity string, results []Result) string

Format formats an Authentication-Results header.

Types

type AuthResult

type AuthResult struct {
	Value  ResultValue
	Reason string
	Auth   string
}

type DKIMResult

type DKIMResult struct {
	Value      ResultValue
	Reason     string
	Domain     string
	Identifier string
}

type DMARCResult added in v0.3.0

type DMARCResult struct {
	Value  ResultValue
	Reason string
	From   string
}

type DomainKeysResult

type DomainKeysResult struct {
	Value  ResultValue
	Reason string
	Domain string
	From   string
	Sender string
}

type GenericResult

type GenericResult struct {
	Method string
	Value  ResultValue
	Params map[string]string
}

type IPRevResult

type IPRevResult struct {
	Value  ResultValue
	Reason string
	IP     string
}

type Result

type Result interface {
	// contains filtered or unexported methods
}

Result is an authentication result.

func Parse

func Parse(v string) (identifier string, results []Result, err error)

Parse parses the provided Authentication-Results header field. It returns the authentication service identifier and authentication results.

type ResultValue

type ResultValue string

ResultValue is an authentication result value, as defined in RFC 5451 section 6.3.

type SPFResult

type SPFResult struct {
	Value  ResultValue
	Reason string
	From   string
	Helo   string
}

type SenderIDResult

type SenderIDResult struct {
	Value       ResultValue
	Reason      string
	HeaderKey   string
	HeaderValue string
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL