aboutsummaryrefslogtreecommitdiffstats
path: root/p2p/peer_error.go
diff options
context:
space:
mode:
authorFelix Lange <fjl@twurst.com>2014-12-12 18:58:39 +0800
committerFelix Lange <fjl@twurst.com>2014-12-15 07:28:20 +0800
commitf0f672777866a524c36e767a6c313f93f574dd8c (patch)
tree4d9424c3a42153d412f6a4aac31208071a7001cc /p2p/peer_error.go
parent65e39bf20eecf7f3296fba531efb72ac28dc0124 (diff)
downloaddexon-f0f672777866a524c36e767a6c313f93f574dd8c.tar.gz
dexon-f0f672777866a524c36e767a6c313f93f574dd8c.tar.zst
dexon-f0f672777866a524c36e767a6c313f93f574dd8c.zip
p2p: use an error type for disconnect requests
Test-tastic.
Diffstat (limited to 'p2p/peer_error.go')
-rw-r--r--p2p/peer_error.go9
1 files changed, 9 insertions, 0 deletions
diff --git a/p2p/peer_error.go b/p2p/peer_error.go
index 88b870fbd..0eb7ec838 100644
--- a/p2p/peer_error.go
+++ b/p2p/peer_error.go
@@ -100,7 +100,16 @@ func (d DiscReason) String() string {
return discReasonToString[d]
}
+type discRequestedError DiscReason
+
+func (err discRequestedError) Error() string {
+ return fmt.Sprintf("disconnect requested: %v", DiscReason(err))
+}
+
func discReasonForError(err error) DiscReason {
+ if reason, ok := err.(discRequestedError); ok {
+ return DiscReason(reason)
+ }
peerError, ok := err.(*peerError)
if !ok {
return DiscSubprotocolError