From e8f114edefee5d4bb890894522ca0fc1d179b076 Mon Sep 17 00:00:00 2001 From: Christopher Talib Date: Fri, 28 Aug 2020 15:55:43 +0200 Subject: [PATCH] Fix duplicated nodes in matcher --- matcher/main.go | 33 +++++++++++++++++---------------- 1 file changed, 17 insertions(+), 16 deletions(-) diff --git a/matcher/main.go b/matcher/main.go index ea8be10..4b1997b 100644 --- a/matcher/main.go +++ b/matcher/main.go @@ -204,19 +204,19 @@ Node(func: allofterms(full, $a)) { time.Sleep(time.Duration(2) * time.Second) logrus.Info("Found paste match for ", target) // TODO: review time and id to be updated on new resulsts - for _, res := range n.Result { if len(matcher.Nodes) == 0 { matcher.Nodes = append(matcher.Nodes, res) continue - } - - for _, node := range matcher.Nodes { - if res.UID != node.UID { - matcher.Nodes = append(matcher.Nodes, res) + } else { + for _, node := range matcher.Nodes { + if res.UID != node.UID { + matcher.Nodes = append(matcher.Nodes, res) + } } } + } query := fmt.Sprintf(`query { match as var(func: eq(target, "%s")) }`, target) @@ -289,11 +289,11 @@ Node(func: allofterms(cn, $a)){ if len(matcher.Nodes) == 0 { matcher.Nodes = append(matcher.Nodes, res) continue - } - - for _, nodes := range matcher.Nodes { - if res.UID != nodes.UID { - matcher.Nodes = append(matcher.Nodes, res) + } else { + for _, nodes := range matcher.Nodes { + if res.UID != nodes.UID { + matcher.Nodes = append(matcher.Nodes, res) + } } } } @@ -380,14 +380,15 @@ func runShodanMatcher(target string, graphClient *dgo.Dgraph) { if len(matcher.Nodes) == 0 { matcher.Nodes = append(matcher.Nodes, res) continue - } - - for _, node := range matcher.Nodes { - if res.UID != node.UID { - matcher.Nodes = append(matcher.Nodes, res) + } else { + for _, node := range matcher.Nodes { + if res.UID != node.UID { + matcher.Nodes = append(matcher.Nodes, res) + } } } + } query := fmt.Sprintf(`query { match as var(func: eq(target, "%s")) }`, target)