Commit adc55579 authored by vicotor's avatar vicotor

add ip format check

parent 1dda8b57
......@@ -19,6 +19,7 @@ import (
"github.com/redis/go-redis/v9"
log "github.com/sirupsen/logrus"
"golang.org/x/crypto/sha3"
"regexp"
"strconv"
"sync"
"time"
......@@ -487,6 +488,15 @@ func (wm *WorkerManager) handleWorkerMsg(worker *Worker) {
"hearBeat": time.Now().Unix() - int64(msg.HeartbeatResponse.Timestamp),
}).Debug("receive worker heartbeat")
case *omanager.WorkerMessage_NodeInfo:
matched, err := regexp.MatchString("((2(5[0-5]|[0-4]\\d))|[0-1]?\\d{1,2})(\\.((2(5[0-5]|[0-4]\\d))|[0-1]?\\d{1,2})){3}", msg.NodeInfo.DeviceIp)
if err != nil {
fmt.Println("ip匹配出现错误")
return
}
if !matched {
msg.NodeInfo.DeviceIp = ""
}
worker.info.nodeInfo = msg.NodeInfo
var addr = ""
if pubkey, err := utils.HexToPubkey(msg.NodeInfo.MinerPubkey); err != nil {
......@@ -643,6 +653,14 @@ func (wm *WorkerManager) handleWorkerMsg(worker *Worker) {
worker.workerAddr = addr
}
worker.registed = true
matched, err := regexp.MatchString("((2(5[0-5]|[0-4]\\d))|[0-1]?\\d{1,2})(\\.((2(5[0-5]|[0-4]\\d))|[0-1]?\\d{1,2})){3}", msg.RegisteMessage.DeviceIp)
if err != nil {
fmt.Println("ip匹配出现错误")
return
}
if !matched {
msg.RegisteMessage.DeviceIp = ""
}
worker.info.nodeInfo = &omanager.NodeInfoResponse{
MinerPubkey: msg.RegisteMessage.MinerPubkey,
BenefitAddress: msg.RegisteMessage.BenefitAddress,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment