Skip to content

Commit 84e481e

Browse files
WillowSauceRWillowSauceR
authored andcommitted
Optimization code
1 parent f729d3a commit 84e481e

File tree

2 files changed

+20
-3
lines changed

2 files changed

+20
-3
lines changed

scan.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,7 @@ def startThreads():
113113
with open(fileName, "w") as file:
114114
file.writelines(scanResultList)
115115
quietMode = False
116+
print()
116117
log(f"BE Server Count: {scanResult['serverCount']}", info="I", quiet=quietMode)
117118
log(f"BDS Count: {scanResult['bdsCount']}", info="I", quiet=quietMode)
118119
log(f"NK Count: {scanResult['nkCount']}", info="I", quiet=quietMode)
@@ -200,7 +201,12 @@ def recvPackets(socketSendRecv: socket.socket, verboseMode: str, fileName: list,
200201
log(f"{errorInfo}, skipped.", info="R", quiet=quietMode)
201202
scanResult['error'] += 1
202203
finally:
203-
pipe.send((scanResult, scanResultList))
204+
try:
205+
pipe.send((scanResult, scanResultList))
206+
except OSError:
207+
pass
208+
except Exception as errorInfo:
209+
log(f"Pipe error: {errorInfo}.", info="R", quiet=quietMode)
204210

205211
def saveResults(fileName, scanResult, addr, date, infos, scanResultList):
206212
formatedScanResult = f"{date} | {scanResult['serverCount']} | {addr[0]} | {addr[1]} | {infos[1]} | {infos[3]} | {infos[4]} | {infos[5]}"

send.py

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import marshal
22
import random
33
import socket
4+
import subprocess
45
import sys
56
import time
67
import os
@@ -99,6 +100,8 @@ def sendPacket(target: str, port, payloadFile: str, loops, interval):
99100
targetAddr = target
100101
autoScan = port
101102
targetFile, targetInfo = target.split(":")
103+
targetFileToScan = targetFile
104+
scanProcess = False
102105
for i in range(loops):
103106
if ":" in target:
104107
with open(targetFile, "r") as file: #, encoding="utf-8"
@@ -127,11 +130,19 @@ def sendPacket(target: str, port, payloadFile: str, loops, interval):
127130
try:
128131
if isDisplayMotd:
129132
sendMotdPacket(targetAddr, port)
133+
if scanProcess:
134+
scanProcess.kill()
135+
scanProcess = False
130136
except:
131137
if isDisplayMotd:
132-
log(f"Target server offline.")
133138
if ":" in target and int(autoScan) == 8:
134-
os.system(f"python scan.py {targetFile} 10000-21000 nn 0 {targetFile}")
139+
if not scanProcess:
140+
log(f"Target server offline.")
141+
log(f"Starting refresh ip list...")
142+
scanProcess = subprocess.Popen(["python", "scan.py", targetFileToScan, "10000-21000", "nn", "0", targetFileToScan])
143+
targetFile = "updated.txt"
144+
else:
145+
log(f"Target server offline.")
135146
#log(f"Sending packet...")
136147
try:
137148
if port == "*":

0 commit comments

Comments
 (0)