Skip to content

Commit 2f3393e

Browse files
committed
Use a noopLogger if SetLogger() is called with nil.
1 parent 44563eb commit 2f3393e

File tree

2 files changed

+8
-2
lines changed

2 files changed

+8
-2
lines changed

service/tcp.go

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -186,13 +186,16 @@ func makeValidatingTCPStreamDialer(targetIPValidator onet.TargetIPValidator) tra
186186
// StreamHandler is a handler that handles stream connections.
187187
type StreamHandler interface {
188188
Handle(ctx context.Context, conn transport.StreamConn, connMetrics TCPConnMetrics)
189-
// SetLogger sets the logger used to log messages.
189+
// SetLogger sets the logger used to log messages. Uses a no-op logger if nil.
190190
SetLogger(l Logger)
191191
// SetTargetDialer sets the [transport.StreamDialer] to be used to connect to target addresses.
192192
SetTargetDialer(dialer transport.StreamDialer)
193193
}
194194

195195
func (s *streamHandler) SetLogger(l Logger) {
196+
if l == nil {
197+
l = &noopLogger{}
198+
}
196199
s.l = l
197200
}
198201

service/udp.go

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ func NewPacketHandler(natTimeout time.Duration, cipherList CipherList, m UDPMetr
108108

109109
// PacketHandler is a running UDP shadowsocks proxy that can be stopped.
110110
type PacketHandler interface {
111-
// SetLogger sets the logger used to log messages.
111+
// SetLogger sets the logger used to log messages. Uses a no-op logger if nil.
112112
SetLogger(l Logger)
113113
// SetTargetIPValidator sets the function to be used to validate the target IP addresses.
114114
SetTargetIPValidator(targetIPValidator onet.TargetIPValidator)
@@ -117,6 +117,9 @@ type PacketHandler interface {
117117
}
118118

119119
func (h *packetHandler) SetLogger(l Logger) {
120+
if l == nil {
121+
l = &noopLogger{}
122+
}
120123
h.l = l
121124
}
122125

0 commit comments

Comments
 (0)