fix: snmpv3 in ipv6
This commit is contained in:
@@ -18,7 +18,7 @@ type TelnetHandler struct {
|
||||
UserName string
|
||||
Password string
|
||||
AuthType string
|
||||
MaxConnNum uint8
|
||||
MaxConnNum int
|
||||
TagNE string
|
||||
ListenHost string
|
||||
|
||||
@@ -65,7 +65,8 @@ func (t *TelnetHandler) StartTelnetServer() {
|
||||
t.mu.Lock()
|
||||
if t.connCount >= int(t.MaxConnNum) {
|
||||
t.mu.Unlock()
|
||||
io.WriteString(conn, "Connection limit reached. Try again later.\r\n")
|
||||
msg := fmt.Sprintf("Connection limit reached (limit=%d). Try again later.\r\n", t.MaxConnNum)
|
||||
io.WriteString(conn, msg)
|
||||
conn.Close()
|
||||
continue
|
||||
}
|
||||
@@ -88,7 +89,8 @@ func (t *TelnetHandler) handleTelnetConnection(conn net.Conn) {
|
||||
writer := bufio.NewWriter(conn)
|
||||
|
||||
// 发送欢迎信息
|
||||
writer.WriteString("Welcome to the Telnet server!\r\n")
|
||||
|
||||
writer.WriteString(fmt.Sprintf("\r\nWelcome to the %s server!\r\n", strings.ToUpper(t.TagNE)))
|
||||
writer.Flush()
|
||||
|
||||
// 请求用户名
|
||||
@@ -129,7 +131,8 @@ func (t *TelnetHandler) handleTelnetConnection(conn net.Conn) {
|
||||
writer.Flush()
|
||||
|
||||
if t.handleTelnetAuth(t.AuthType, user, pass) {
|
||||
writer.WriteString("\r\nAuthentication successful!\r\n")
|
||||
msg := fmt.Sprintf("\r\n\r\nLast login: %s from %s \r\n\r\n", time.Now().Format(time.RFC1123), conn.RemoteAddr())
|
||||
writer.WriteString(msg)
|
||||
writer.Flush()
|
||||
t.HandleCommands(user, t.TagNE, reader, writer)
|
||||
} else {
|
||||
@@ -181,7 +184,7 @@ func (t *TelnetHandler) HandleCommands(user, tag string, reader *bufio.Reader, w
|
||||
case "time":
|
||||
writer.WriteString(fmt.Sprintf("\r\nCurrent time: %s\r\n", time.Now().Format(time.RFC1123)))
|
||||
case "exit", "quit":
|
||||
writer.WriteString("\r\nGoodbye!\r\n")
|
||||
writer.WriteString("\r\n\r\nGoodbye!\r\n")
|
||||
writer.Flush()
|
||||
return
|
||||
case "":
|
||||
|
||||
Reference in New Issue
Block a user