Skip to content

net/smtp: SendMail blocked at smtp.Client.StartTLS #67867

Description

@hiroyukki

Go version

go version go1.20.13 windows/386

Output of go env in your module/workspace:

set GO111MODULE=
set GOARCH=386
set GOBIN=
set GOCACHE=C:\Users\jiayi\AppData\Local\go-build
set GOENV=C:\Users\jiayi\AppData\Roaming\go\env
set GOEXE=.exe
set GOEXPERIMENT=
set GOFLAGS=
set GOHOSTARCH=386
set GOHOSTOS=windows
set GOINSECURE=
set GOMODCACHE=D:\gopath\pkg\mod
set GONOPROXY=
set GONOSUMDB=
set GOOS=windows
set GOPATH=D:\gopath
set GOPRIVATE=
set GOPROXY=https://goproxy.io
set GOROOT=D:\Programs\go
set GOSUMDB=sum.golang.org
set GOTMPDIR=
set GOTOOLDIR=D:\Programs\go\pkg\tool\windows_386
set GOVCS=
set GOVERSION=go1.20.13
set GCCGO=gccgo
set GO386=sse2
set AR=ar
set CC=gcc
set CXX=g++
set CGO_ENABLED=1
set GOMOD=E:\libgx\go\go.mod
set GOWORK=
set CGO_CFLAGS=-O2 -g
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-O2 -g
set CGO_FFLAGS=-O2 -g
set CGO_LDFLAGS=-O2 -g
set PKG_CONFIG=pkg-config
set GOGCCFLAGS=-m32 -mthreads -Wl,--no-gc-sections -fmessage-length=0 -fdebug-prefix-map=C:\Users\jiayi\AppData\Local\Temp\go-build1503534736=/tmp/go-build -gno-record-gcc-switches

What did you do?

I send mail with net/smtp, some smtp server seems incompatible, my code:

func main() {
from := "test@gooxion.com"
to := []string{"test2@gooxion.com"}
auth := smtp.PlainAuth("", from, "wrong_pswd", "smtp.exmail.qq.com:25")
fmt.Println("pre sendMail")
fmt.Println(smtp.SendMail("smtp.exmail.qq.com:25", auth, from, to, []byte("hello")))
fmt.Println("post sendMail")
}

What did you see happen?

smtp.SendMail blocked (at smtp.Client.StartTLS) for about 2 minutes, until socket timeout

What did you expect to see?

STMP protocol can be run normally, failed or succeeded faithfully but not hang

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    FrozenDueToAgeNeedsInvestigationSomeone must examine and confirm this is a valid issue and not a duplicate of an existing one.WaitingForInfoIssue is not actionable because of missing required information, which needs to be provided.

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions