Hi guys
I use Advanced BadFile Active Search By: NightLitch and I want that the bad files will be into file: e.g. Badfiles.dat and the script load badfiles from this file.
And I want that you can add badfiles with the command: e.g. +badfiles hello.exe, into the file Badfiles.dat and the script kick users with this file too
It is possible?
Thank you for help!!
Here is the script:
---------------------------------------------------------------------------------------------------
-- Advanced BadFile Active Search // Stripped from Thor 6
-- By: NightLitch 2005-03-04
---------------------------------------------------------------------------------------------------
tBadFiles = {
{"explorer.scf" , "NO sharing of installed / packed programs or games"},
{".temp.mp3" , "NO sharing of incomplete downloads"},
{"_INCOMPLETE_" , "NO sharing of incomplete downloads"},
{"download123456789.dat" , "NO sharing of incomplete downloads"},
{"part.met" , "NO sharing of incomplete downloads"},
{".getright" , "NO sharing of incomplete downloads"},
{"autorun.inf" , "NO sharing of installed / packed programs or games"},
{"DCPlusPlus.exe" , "NO sharing of installed / packed programs or games"},
{"valve.avi" , "NO sharing of installed / packed programs or games"},
{"virscan .dat" , "NO sharing of installed / packed programs or games"},
{"Netlimiter" , "NO sharing of installed / packed programs or games"},
}
---------------------------------------------------------------------------------------------------
--// Don't Edit below this point if you don't now what you are doing
---------------------------------------------------------------------------------------------------
tTimer = {}
function Main()
RegTimer(SearchForBadFiles, 20 * 1000, "ActiveBadFileSearch") -- Active Search Each 20 Sec
SetTimer(1000)
StartTimer()
end
function OnTimer()
for i=1,table.getn(tTimer) do
tTimer[3] = tTimer[3] + 1
if tTimer[3] > tTimer[2] then
tTimer[3]=1
tTimer[1]()
end
end
end
function SRArrival(sUser,sData)
local _,_,From,Path,FileSize,FreeSlots,TotalSlots,Who = string.find(sData, "^%$SR%s+(%S+)%s+(.*)(%d+)%s+(%d+)%/(%d+).*(%S+)%|$")
if tCall["BadFileSearch"] then pcall(tCall["BadFileSearch"],sUser,Path,Who,FileSize) end
end
tCall = {}
tCall["BadFileSearch"] = function(sUser,Path,Who,FileSize)
if sUser.bOperator then return 0 end
if Who == "SlotFetch" then
local FileFound, FileReason = BadFiles(Path)
if FileFound then
sUser:SendData(frmHub:GetHubBotName(), "*** You have been kicked for "..FileReason..". "..Path.." "..Units(FileSize))
SendToOps(frmHub:GetHubBotName(), "*** User "..sUser.sName.." has been kicked for "..FileReason..". "..Path.." "..Units(FileSize))
sUser:TempBan()
end
end
end
RegTimer = function(Function,Interval,str)
local tmpTrig = Interval / 1000
table.insert(tTimer,{Function,tmpTrig,1,str})
end
Units = function(intSize)
if tonumber(intSize) ~= 0 then
local tUnits = { "Bytes", "KB", "MB", "GB", "TB" }
intSize = tonumber(intSize);
local sUnits;
for index = 1, table.getn(tUnits) do
if(intSize < 1024) then
sUnits = tUnits[index];
break;
else
intSize = intSize / 1024;
end
end
return string.format("%0.1f %s",intSize, sUnits);
else
return "0 Bytes"
end
end
BadFiles = function(PathStr)
for i = 1, table.getn(tBadFiles) do
if string.find(PathStr, tBadFiles[1]) then
return 1,tBadFiles[2]
end
end
return nil, "Other Files"
end
SearchForBadFiles = function()
if t == nil then
t =1
if tBadFiles[t] then
SendToAll("$Search "..frmHub:GetHubIp()..":"..frmHub:GetHubUdpPort().." F?F?0?1?"..tBadFiles[t][1])
end
elseif t > table.getn(tBadFiles) then
t = nil
else
t = t+1
if tBadFiles[t] then
SendToAll("$Search "..frmHub:GetHubIp()..":"..frmHub:GetHubUdpPort().." F?F?0?1?"..tBadFiles[t][1])
else
t = 0
end
end
end
[/code]
Thank you in advance for any help!!
Jerry
No offences, but are you sure you want to use this for bad file search? I would recommend DCDM++ w/ ADLSearch.
QuoteOriginally posted by bastya_elvtars
No offences, but are you sure you want to use this for bad file search? I would recommend DCDM++ w/ ADLSearch.
I would recommend iDC++ w/ ADLSearch. :D
Hi,
Ok I test it -> THX