예제 #1
0
 async def do10Formatting(self, core: s_cortex.Cortex, prox: s_telepath.Proxy) -> int:
     '''
     The same as do10AutoAdds without the adds (to isolate the autoadd part)
     '''
     q = "inet:ipv4 $val=$lib.str.format('{num}.rev', num=$(1000000-$node.value()))"
     count = await acount(prox.eval(q))
     assert count == self.workfactor
     return self.workfactor
예제 #2
0
 async def do09DelNodes(self, core: s_cortex.Cortex, prox: s_telepath.Proxy) -> int:
     count = await acount(prox.eval('inet:url | delnode'))
     assert count == 0
     return self.workfactor
예제 #3
0
 async def do10AutoAdds(self, core: s_cortex.Cortex, prox: s_telepath.Proxy) -> int:
     q = "inet:ipv4 $val=$lib.str.format('{num}.rev', num=$(1000000-$node.value())) [:dns:rev=$val]"
     count = await acount(prox.eval(q))
     assert count == self.workfactor
     return self.workfactor
예제 #4
0
 async def do05PivotAbsent(self, core: s_cortex.Cortex, prox: s_telepath.Proxy) -> int:
     count = await acount(prox.eval('inet:ipv4#odd -> inet:dns:a'))
     assert count == 0
     return self.workfactor // 2
예제 #5
0
 async def do06PivotPresent(self, core: s_cortex.Cortex, prox: s_telepath.Proxy) -> int:
     count = await acount(prox.eval('inet:ipv4#even -> inet:dns:a'))
     assert count == self.workfactor // 2 + self.workfactor // 10
     return count
예제 #6
0
 async def do04LiftByTagAbsent(self, core: s_cortex.Cortex, prox: s_telepath.Proxy) -> int:
     count = await acount(prox.eval('inet:ipv4#newp'))
     assert count == 0
     return 1
예제 #7
0
 async def do04LiftByTagPresent(self, core: s_cortex.Cortex, prox: s_telepath.Proxy) -> int:
     count = await acount(prox.eval('inet:ipv4#even'))
     assert count == self.workfactor // 2
     return count
예제 #8
0
 async def do03LiftBySecondaryAbsent(self, core: s_cortex.Cortex, prox: s_telepath.Proxy) -> int:
     count = await acount(prox.eval('inet:dns:a:fqdn=newp'))
     assert count == 0
     return 1
예제 #9
0
 async def do03LiftBySecondaryPresent(self, core: s_cortex.Cortex, prox: s_telepath.Proxy) -> int:
     count = await acount(prox.eval('inet:dns:a:fqdn=blackhole.website'))
     assert count == self.workfactor // 10
     return count
예제 #10
0
 async def do02LiftSimple(self, core: s_cortex.Cortex, prox: s_telepath.Proxy) -> int:
     count = await acount(prox.eval('inet:ipv4'))
     assert count == self.workfactor
     return count
예제 #11
0
 async def do02LiftFilterPresent(self, core: s_cortex.Cortex, prox: s_telepath.Proxy) -> int:
     count = await acount(prox.eval('inet:ipv4 | +#all'))
     assert count == self.workfactor
     return count
예제 #12
0
 async def do01SimpleCount(self, core: s_cortex.Cortex, prox: s_telepath.Proxy) -> int:
     count = await acount(prox.eval('inet:ipv4 | count | spin'))
     assert count == 0
     return self.workfactor
예제 #13
0
    async def do00EmptyQuery(self, core: s_cortex.Cortex, prox: s_telepath.Proxy) -> int:
        for _ in range(self.workfactor // 10):
            count = await acount(prox.eval(''))

        assert count == 0
        return self.workfactor // 10
예제 #14
0
 async def do10SlashAdds(self, core: s_cortex.Cortex, prox: s_telepath.Proxy) -> int:
     q = '[ inet:ipv4=1.2.0.0/16 ] | spin'
     count = await acount(prox.eval(q, opts=self.opts))
     assert count == 0
     return 2 ** 16
예제 #15
0
 async def do02LiftFilterAbsent(self, core: s_cortex.Cortex, prox: s_telepath.Proxy) -> int:
     count = await acount(prox.eval('inet:ipv4 | +#newp', opts=self.opts))
     assert count == 0
     return 1
예제 #16
0
    async def do00NewQuery(self, core: s_cortex.Cortex, prox: s_telepath.Proxy) -> int:
        for i in range(self.workfactor):
            count = await acount(prox.eval(f'$x={i}', opts=self.opts))

        assert count == 0
        return self.workfactor