Skip to content

Releases: ziembor/gomailtesttool

v3.1.6

12 Apr 05:49

Choose a tag to compare

gomailtesttool Suite - Email Infrastructure Testing Tools

Portable CLI tools for comprehensive email infrastructure testing - covering cloud services (Exchange Online via Microsoft Graph), SMTP, IMAP, POP3, and JMAP protocols.

What's Included

Each ZIP archive contains a single unified binary:

  • gomailtest - Unified CLI for all protocols (smtp, imap, pop3, jmap, msgraph subcommands)

Plus documentation:

  • README.md - Main documentation
  • TOOLS.md - Protocol-specific tool guides
  • EXAMPLES.md - Usage examples
  • LICENSE - MIT License

Installation

Windows (amd64):

  1. Download gomailtesttool-windows-amd64.zip
  2. Extract the ZIP file
  3. Run: gomailtest.exe --help

Linux (amd64):

  1. Download gomailtesttool-linux-amd64.zip
  2. Extract: unzip gomailtesttool-linux-amd64.zip
  3. Make executable: chmod +x gomailtest
  4. Run: ./gomailtest --help

macOS (Apple Silicon/arm64):

  1. Download gomailtesttool-macos-arm64.zip
  2. Extract: unzip gomailtesttool-macos-arm64.zip
  3. Make executable: chmod +x gomailtest
  4. Run: ./gomailtest --help

Note for macOS: If you see "cannot be opened because the developer cannot be verified":

  • Right-click the binary and select "Open", or
  • Run: xattr -d com.apple.quarantine gomailtest

Quick Start Examples

SMTP Testing:

# Test connectivity
./gomailtest smtp testconnect -host smtp.example.com -port 25

# TLS diagnostics
./gomailtest smtp teststarttls -host smtp.example.com -port 587

IMAP Testing:

# Test connection
./gomailtest imap testconnect -host imap.gmail.com -imaps

# List folders with OAuth2
./gomailtest imap listfolders -host imap.gmail.com -imaps \
  -username user@gmail.com -accesstoken "ya29..."

POP3 Testing:

# Test connection
./gomailtest pop3 testconnect -host pop.gmail.com -pop3s

# List mail
./gomailtest pop3 listmail -host pop.gmail.com -pop3s \
  -username user@gmail.com -password "app-password"

JMAP Testing:

# Discover session
./gomailtest jmap testconnect -host jmap.fastmail.com

# Get mailboxes
./gomailtest jmap getmailboxes -host jmap.fastmail.com \
  -username user@fastmail.com -accesstoken "token"

Microsoft Graph:

./gomailtest msgraph -tenantid "..." -clientid "..." -secret "..." \
  -mailbox "user@example.com" -action getinbox

Tools Overview

Tool Protocol Ports Auth Methods
smtptool SMTP 25, 587, 465 PLAIN, LOGIN, CRAM-MD5, XOAUTH2
imaptool IMAP 143, 993 PLAIN, LOGIN, XOAUTH2
pop3tool POP3 110, 995 USER/PASS, APOP, XOAUTH2
jmaptool JMAP 443 Basic, Bearer
msgraphtool Graph API 443 Client Secret, Certificate, Bearer

Documentation

v3.1.5

12 Apr 05:16

Choose a tag to compare

gomailtesttool Suite - Email Infrastructure Testing Tools

Portable CLI tools for comprehensive email infrastructure testing - covering cloud services (Exchange Online via Microsoft Graph), SMTP, IMAP, POP3, and JMAP protocols.

What's Included

Each ZIP archive contains a single unified binary:

  • gomailtest - Unified CLI for all protocols (smtp, imap, pop3, jmap, msgraph subcommands)

Plus documentation:

  • README.md - Main documentation
  • TOOLS.md - Protocol-specific tool guides
  • EXAMPLES.md - Usage examples
  • LICENSE - MIT License

Installation

Windows (amd64):

  1. Download gomailtesttool-windows-amd64.zip
  2. Extract the ZIP file
  3. Run: gomailtest.exe --help

Linux (amd64):

  1. Download gomailtesttool-linux-amd64.zip
  2. Extract: unzip gomailtesttool-linux-amd64.zip
  3. Make executable: chmod +x gomailtest
  4. Run: ./gomailtest --help

macOS (Apple Silicon/arm64):

  1. Download gomailtesttool-macos-arm64.zip
  2. Extract: unzip gomailtesttool-macos-arm64.zip
  3. Make executable: chmod +x gomailtest
  4. Run: ./gomailtest --help

Note for macOS: If you see "cannot be opened because the developer cannot be verified":

  • Right-click the binary and select "Open", or
  • Run: xattr -d com.apple.quarantine gomailtest

Quick Start Examples

SMTP Testing:

# Test connectivity
./gomailtest smtp testconnect -host smtp.example.com -port 25

# TLS diagnostics
./gomailtest smtp teststarttls -host smtp.example.com -port 587

IMAP Testing:

# Test connection
./gomailtest imap testconnect -host imap.gmail.com -imaps

# List folders with OAuth2
./gomailtest imap listfolders -host imap.gmail.com -imaps \
  -username user@gmail.com -accesstoken "ya29..."

POP3 Testing:

# Test connection
./gomailtest pop3 testconnect -host pop.gmail.com -pop3s

# List mail
./gomailtest pop3 listmail -host pop.gmail.com -pop3s \
  -username user@gmail.com -password "app-password"

JMAP Testing:

# Discover session
./gomailtest jmap testconnect -host jmap.fastmail.com

# Get mailboxes
./gomailtest jmap getmailboxes -host jmap.fastmail.com \
  -username user@fastmail.com -accesstoken "token"

Microsoft Graph:

./gomailtest msgraph -tenantid "..." -clientid "..." -secret "..." \
  -mailbox "user@example.com" -action getinbox

Tools Overview

Tool Protocol Ports Auth Methods
smtptool SMTP 25, 587, 465 PLAIN, LOGIN, CRAM-MD5, XOAUTH2
imaptool IMAP 143, 993 PLAIN, LOGIN, XOAUTH2
pop3tool POP3 110, 995 USER/PASS, APOP, XOAUTH2
jmaptool JMAP 443 Basic, Bearer
msgraphtool Graph API 443 Client Secret, Certificate, Bearer

Documentation

v3.1.0 — Unified gomailtest binary

11 Apr 21:29
10d4676

Choose a tag to compare

Version 3.1.0

Breaking Changes

Unit F — Legacy shim binaries removed

The individual tool binaries (smtptool, imaptool, pop3tool, jmaptool, msgraphtool) have been removed. Use gomailtest <protocol> <action> --flag instead.

Migration table:

Old command New command
smtptool -action testconnect -host X -port Y gomailtest smtp testconnect --host X --port Y
imaptool -action testauth -host X -imaps gomailtest imap testauth --host X --imaps
pop3tool -action listmail -host X -pop3s gomailtest pop3 listmail --host X --pop3s
jmaptool -action getmailboxes -host X gomailtest jmap getmailboxes --host X
msgraphtool -action getevents gomailtest msgraph getevents

Flag style also changed: single-dash long flags (-host, -username) become double-dash (--host, --username).

Environment variables are unchangedSMTPHOST, IMAPHOST, POP3HOST, JMAPHOST, MSGRAPHTENANTID, etc. continue to work.

Deleted:

  • cmd/smtptool/main.go
  • cmd/imaptool/main.go
  • cmd/pop3tool/main.go
  • cmd/jmaptool/main.go
  • cmd/msgraphtool/main.go

Only cmd/gomailtest/ remains under cmd/.

build-all.ps1 updated — now builds only bin/gomailtest.exe.

v2.7.0

10 Apr 04:49

Choose a tag to compare

gomailtesttool Suite - Email Infrastructure Testing Tools

Portable CLI tools for comprehensive email infrastructure testing - covering cloud services (Exchange Online via Microsoft Graph), SMTP, IMAP, POP3, and JMAP protocols.

What's Included

Each ZIP archive contains 5 tools:

  • msgraphtool - Microsoft Graph API tool for Exchange Online
  • smtptool - SMTP connectivity and TLS testing
  • imaptool - IMAP server testing with XOAUTH2 support
  • pop3tool - POP3 server testing with XOAUTH2 support
  • jmaptool - JMAP protocol testing

Plus documentation:

  • README.md - Main documentation
  • ** _TOOL_README.md* - specific protocols tool guide
  • EXAMPLES.md - Usage examples
  • LICENSE - MIT License

Installation

Windows (amd64):

  1. Download gomailtesttool-windows-amd64.zip
  2. Extract the ZIP file
  3. Run any tool directly (e.g., smtptool.exe -help)

Linux (amd64):

  1. Download gomailtesttool-linux-amd64.zip
  2. Extract: unzip gomailtesttool-linux-amd64.zip
  3. Make executable: chmod +x *tool
  4. Run: ./smtptool -help

macOS (Apple Silicon/arm64):

  1. Download gomailtesttool-macos-arm64.zip
  2. Extract: unzip gomailtesttool-macos-arm64.zip
  3. Make executable: chmod +x *tool
  4. Run: ./smtptool -help

Note for macOS: If you see "cannot be opened because the developer cannot be verified":

  • Right-click the binary and select "Open", or
  • Run: xattr -d com.apple.quarantine *tool

Quick Start Examples

SMTP Testing:

# Test connectivity
./smtptool -action testconnect -host smtp.example.com -port 25

# TLS diagnostics
./smtptool -action teststarttls -host smtp.example.com -port 587

IMAP Testing:

# Test connection
./imaptool -action testconnect -host imap.gmail.com -imaps

# List folders with OAuth2
./imaptool -action listfolders -host imap.gmail.com -imaps \
  -username user@gmail.com -accesstoken "ya29..."

POP3 Testing:

# Test connection
./pop3tool -action testconnect -host pop.gmail.com -pop3s

# List mail
./pop3tool -action listmail -host pop.gmail.com -pop3s \
  -username user@gmail.com -password "app-password"

JMAP Testing:

# Discover session
./jmaptool -action testconnect -host jmap.fastmail.com

# Get mailboxes
./jmaptool -action getmailboxes -host jmap.fastmail.com \
  -username user@fastmail.com -accesstoken "token"

Microsoft Graph:

./msgraphtool -tenantid "..." -clientid "..." -secret "..." \
  -mailbox "user@example.com" -action getinbox

Tools Overview

Tool Protocol Ports Auth Methods
smtptool SMTP 25, 587, 465 PLAIN, LOGIN, CRAM-MD5, XOAUTH2
imaptool IMAP 143, 993 PLAIN, LOGIN, XOAUTH2
pop3tool POP3 110, 995 USER/PASS, APOP, XOAUTH2
jmaptool JMAP 443 Basic, Bearer
msgraphtool Graph API 443 Client Secret, Certificate, Bearer

Documentation

v2.6.19 - Connection Address Override

08 Apr 03:39

Choose a tag to compare

gomailtesttool Suite - Email Infrastructure Testing Tools

Portable CLI tools for comprehensive email infrastructure testing - covering cloud services (Exchange Online via Microsoft Graph), SMTP, IMAP, POP3, and JMAP protocols.

What's Included

Each ZIP archive contains 5 tools:

  • msgraphtool - Microsoft Graph API tool for Exchange Online
  • smtptool - SMTP connectivity and TLS testing
  • imaptool - IMAP server testing with XOAUTH2 support
  • pop3tool - POP3 server testing with XOAUTH2 support
  • jmaptool - JMAP protocol testing

Plus documentation:

  • README.md - Main documentation
  • ** _TOOL_README.md* - specific protocols tool guide
  • EXAMPLES.md - Usage examples
  • LICENSE - MIT License

Installation

Windows (amd64):

  1. Download gomailtesttool-windows-amd64.zip
  2. Extract the ZIP file
  3. Run any tool directly (e.g., smtptool.exe -help)

Linux (amd64):

  1. Download gomailtesttool-linux-amd64.zip
  2. Extract: unzip gomailtesttool-linux-amd64.zip
  3. Make executable: chmod +x *tool
  4. Run: ./smtptool -help

macOS (Apple Silicon/arm64):

  1. Download gomailtesttool-macos-arm64.zip
  2. Extract: unzip gomailtesttool-macos-arm64.zip
  3. Make executable: chmod +x *tool
  4. Run: ./smtptool -help

Note for macOS: If you see "cannot be opened because the developer cannot be verified":

  • Right-click the binary and select "Open", or
  • Run: xattr -d com.apple.quarantine *tool

Quick Start Examples

SMTP Testing:

# Test connectivity
./smtptool -action testconnect -host smtp.example.com -port 25

# TLS diagnostics
./smtptool -action teststarttls -host smtp.example.com -port 587

IMAP Testing:

# Test connection
./imaptool -action testconnect -host imap.gmail.com -imaps

# List folders with OAuth2
./imaptool -action listfolders -host imap.gmail.com -imaps \
  -username user@gmail.com -accesstoken "ya29..."

POP3 Testing:

# Test connection
./pop3tool -action testconnect -host pop.gmail.com -pop3s

# List mail
./pop3tool -action listmail -host pop.gmail.com -pop3s \
  -username user@gmail.com -password "app-password"

JMAP Testing:

# Discover session
./jmaptool -action testconnect -host jmap.fastmail.com

# Get mailboxes
./jmaptool -action getmailboxes -host jmap.fastmail.com \
  -username user@fastmail.com -accesstoken "token"

Microsoft Graph:

./msgraphtool -tenantid "..." -clientid "..." -secret "..." \
  -mailbox "user@example.com" -action getinbox

Tools Overview

Tool Protocol Ports Auth Methods
smtptool SMTP 25, 587, 465 PLAIN, LOGIN, CRAM-MD5, XOAUTH2
imaptool IMAP 143, 993 PLAIN, LOGIN, XOAUTH2
pop3tool POP3 110, 995 USER/PASS, APOP, XOAUTH2
jmaptool JMAP 443 Basic, Bearer
msgraphtool Graph API 443 Client Secret, Certificate, Bearer

Documentation

v2.6.18

03 Feb 19:11

Choose a tag to compare

gomailtesttool Suite - Email Infrastructure Testing Tools

Portable CLI tools for comprehensive email infrastructure testing - covering cloud services (Exchange Online via Microsoft Graph), SMTP, IMAP, POP3, and JMAP protocols.

What's Included

Each ZIP archive contains 5 tools:

  • msgraphtool - Microsoft Graph API tool for Exchange Online
  • smtptool - SMTP connectivity and TLS testing
  • imaptool - IMAP server testing with XOAUTH2 support
  • pop3tool - POP3 server testing with XOAUTH2 support
  • jmaptool - JMAP protocol testing

Plus documentation:

  • README.md - Main documentation
  • ** _TOOL_README.md* - specific protocols tool guide
  • EXAMPLES.md - Usage examples
  • LICENSE - MIT License

Installation

Windows (amd64):

  1. Download gomailtesttool-windows-amd64.zip
  2. Extract the ZIP file
  3. Run any tool directly (e.g., smtptool.exe -help)

Linux (amd64):

  1. Download gomailtesttool-linux-amd64.zip
  2. Extract: unzip gomailtesttool-linux-amd64.zip
  3. Make executable: chmod +x *tool
  4. Run: ./smtptool -help

macOS (Apple Silicon/arm64):

  1. Download gomailtesttool-macos-arm64.zip
  2. Extract: unzip gomailtesttool-macos-arm64.zip
  3. Make executable: chmod +x *tool
  4. Run: ./smtptool -help

Note for macOS: If you see "cannot be opened because the developer cannot be verified":

  • Right-click the binary and select "Open", or
  • Run: xattr -d com.apple.quarantine *tool

Quick Start Examples

SMTP Testing:

# Test connectivity
./smtptool -action testconnect -host smtp.example.com -port 25

# TLS diagnostics
./smtptool -action teststarttls -host smtp.example.com -port 587

IMAP Testing:

# Test connection
./imaptool -action testconnect -host imap.gmail.com -imaps

# List folders with OAuth2
./imaptool -action listfolders -host imap.gmail.com -imaps \
  -username user@gmail.com -accesstoken "ya29..."

POP3 Testing:

# Test connection
./pop3tool -action testconnect -host pop.gmail.com -pop3s

# List mail
./pop3tool -action listmail -host pop.gmail.com -pop3s \
  -username user@gmail.com -password "app-password"

JMAP Testing:

# Discover session
./jmaptool -action testconnect -host jmap.fastmail.com

# Get mailboxes
./jmaptool -action getmailboxes -host jmap.fastmail.com \
  -username user@fastmail.com -accesstoken "token"

Microsoft Graph:

./msgraphtool -tenantid "..." -clientid "..." -secret "..." \
  -mailbox "user@example.com" -action getinbox

Tools Overview

Tool Protocol Ports Auth Methods
smtptool SMTP 25, 587, 465 PLAIN, LOGIN, CRAM-MD5, XOAUTH2
imaptool IMAP 143, 993 PLAIN, LOGIN, XOAUTH2
pop3tool POP3 110, 995 USER/PASS, APOP, XOAUTH2
jmaptool JMAP 443 Basic, Bearer
msgraphtool Graph API 443 Client Secret, Certificate, Bearer

Documentation

v2.3.3

25 Jan 06:48

Choose a tag to compare

Microsoft Graph & SMTP Testing Tools

Portable CLI tools for comprehensive email infrastructure testing - both cloud (Exchange Online via Microsoft Graph) and on-premises (SMTP servers).

What's Included

Each ZIP archive contains:

  • msgraphgolangtestingtool - Microsoft Graph API tool for Exchange Online
  • smtptool - SMTP connectivity testing tool with comprehensive TLS diagnostics
  • README.md - Main documentation
  • SMTP_TOOL_README.md - Complete SMTP tool guide
  • BUILD.md - Build instructions for both tools
  • EXAMPLES.md - Microsoft Graph tool usage examples
  • LICENSE - MIT License

Installation

Windows:

  1. Download msgraphgolangtestingtool-windows.zip
  2. Extract the ZIP file
  3. Run msgraphgolangtestingtool.exe or smtptool.exe directly

Linux:

  1. Download msgraphgolangtestingtool-linux.zip
  2. Extract: unzip msgraphgolangtestingtool-linux.zip
  3. Make executable: chmod +x msgraphgolangtestingtool smtptool
  4. Run: ./msgraphgolangtestingtool or ./smtptool

macOS:

  1. Download msgraphgolangtestingtool-macos.zip
  2. Extract: unzip msgraphgolangtestingtool-macos.zip
  3. Make executable: chmod +x msgraphgolangtestingtool smtptool
  4. Run: ./msgraphgolangtestingtool or ./smtptool

Note for macOS: If you see "cannot be opened because the developer cannot be verified":

  • Right-click the binary and select "Open", or
  • Run: xattr -d com.apple.quarantine msgraphgolangtestingtool smtptool

Quick Start

Microsoft Graph Tool:

# Windows
.\msgraphgolangtestingtool.exe -tenantid "..." -clientid "..." -secret "..." -mailbox "user@example.com" -action getinbox

# Linux/macOS
./msgraphgolangtestingtool -tenantid "..." -clientid "..." -secret "..." -mailbox "user@example.com" -action getinbox

SMTP Tool:

# Windows - Test connectivity
.\smtptool.exe -action testconnect -host smtp.example.com -port 25

# Windows - Comprehensive TLS diagnostics
.\smtptool.exe -action teststarttls -host smtp.example.com -port 587

# Linux/macOS - Test connectivity
./smtptool -action testconnect -host smtp.example.com -port 25

# Linux/macOS - Comprehensive TLS diagnostics
./smtptool -action teststarttls -host smtp.example.com -port 587

Documentation

  • README.md - Overview and quick start for both tools
  • SMTP_TOOL_README.md - Complete SMTP tool documentation with all actions
  • EXAMPLES.md - Detailed Microsoft Graph tool examples
  • BUILD.md - Build from source instructions
  • Online: GitHub Repository

Tools Overview

msgraphgolangtestingtool - Microsoft Graph API operations:

  • Send emails, create calendar events
  • List inbox messages and calendar events
  • Check availability, export data
  • Multiple authentication methods (Client Secret, PFX Certificate, Windows Certificate Store)

smtptool - SMTP connectivity testing:

  • Test basic SMTP connectivity with capability detection
  • Comprehensive TLS/SSL handshake analysis
  • Certificate chain validation and expiry warnings
  • SMTP authentication testing
  • Send test emails
  • Exchange server detection (2003-2019)

v1.23.8

08 Jan 07:22

Choose a tag to compare

Microsoft Graph EXO Mails/Calendar Golang Testing Tool

Portable CLI tool for Microsoft Graph API operations.

What's Included

Each ZIP archive contains:

  • Binary executable (msgraphgolangtestingtool.exe or msgraphgolangtestingtool)
  • EXAMPLES.md - Comprehensive usage examples
  • LICENSE - MIT License
  • README.md - Complete documentation

Installation

Windows:

  1. Download msgraphgolangtestingtool-windows.zip
  2. Extract the ZIP file
  3. Run msgraphgolangtestingtool.exe directly

Linux:

  1. Download msgraphgolangtestingtool-linux.zip
  2. Extract the ZIP file: unzip msgraphgolangtestingtool-linux.zip
  3. Make it executable: chmod +x msgraphgolangtestingtool
  4. Run: ./msgraphgolangtestingtool

macOS:

  1. Download msgraphgolangtestingtool-macos.zip
  2. Extract the ZIP file: unzip msgraphgolangtestingtool-macos.zip
  3. Make it executable: chmod +x msgraphgolangtestingtool
  4. Run: ./msgraphgolangtestingtool

Note for macOS: If you see "cannot be opened because the developer cannot be verified", you may need to:

  • Right-click the binary and select "Open", or
  • Run: xattr -d com.apple.quarantine msgraphgolangtestingtool

Quick Start

Windows:

.\msgraphgolangtestingtool.exe -tenantid "<TENANT_ID>" -clientid "<CLIENT_ID>" -secret "<SECRET>" -mailbox "<EMAIL>" -action <ACTION>

Linux / macOS:

./msgraphgolangtestingtool -tenantid "<TENANT_ID>" -clientid "<CLIENT_ID>" -secret "<SECRET>" -mailbox "<EMAIL>" -action <ACTION>

Documentation

  • See EXAMPLES.md in the ZIP for detailed usage examples
  • See README.md in the ZIP for complete reference
  • Online: README.md

v1.14.10

04 Jan 07:00

Choose a tag to compare

Microsoft Graph GoLang Testing Tool

Portable CLI tool for Microsoft Graph API operations.

Installation

Download msgraphgolangtestingtool.exe and run directly on Windows.

Usage

.\msgraphgolangtestingtool.exe -tenantid "<TENANT_ID>" -clientid "<CLIENT_ID>" -secret "<SECRET>" -mailbox "<EMAIL>" -action <ACTION>

See README.md for complete documentation.