Advertisement
pepeknamornik

SMBclient

May 26th, 2021 (edited)
2,475
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 3.28 KB | None | 0 0
  1. verze = "22.0924.R2"
  2. local idPC = os.getComputerID()
  3. local tArgs = { ... }
  4. timerOut = os.startTimer(5)
  5.  
  6. if fs.exists("/C/system/.core/defmodem") then
  7.         local data = fs.open ("/C/system/.core/defmodem","r") modemPos = data.readLine() data.close()
  8.         modem = peripheral.wrap(modemPos) modem.open(idPC)
  9.         if not modemPos then fs.delete("/C/system/.core/defmodem") modemPos = "offline" end
  10.     else
  11.         return
  12. end
  13.  
  14. if fs.exists("/C/system/RAM/userSMB") then local f=fs.open("/C/system/RAM/userSMB","r") user=f.readLine() pass=f.readLine() f.close()
  15. elseif fs.exists("/C/system/RAM/user") then local f=fs.open("/C/system/RAM/user","r") user=f.readLine() pass=f.readLine() f.close()
  16. else user = "guest" pass = ""
  17. end
  18.  
  19. function prijmout ()
  20.    
  21.     while true do
  22.    
  23.     local event, side, freq, rfreq, message = os.pullEvent()
  24.    
  25.         if (rfreq == 992 and event == 'modem_message') then
  26.             if message then
  27.             prijmout()
  28.             else
  29.             print(message)
  30.             error()
  31.             end
  32.         end
  33.        
  34.         if (rfreq == 994 and event == 'modem_message') then
  35.             local file = fs.open(tArgs[4],"w")
  36.             file.write(message)
  37.             file.close()
  38.             return
  39.         end
  40.        
  41.         if (rfreq == 997 and event == 'modem_message') then
  42.             print(message)
  43.             error()
  44.         end
  45.        
  46.         if (rfreq == 999 and event == 'modem_message') then
  47.             local file = fs.open("/C/system/RAM/smbError.tmp","w")
  48.             file.write(message)
  49.             file.close()
  50.             return
  51.         end
  52.    
  53.         if (event == "timer") then
  54.             if completed == timerA then
  55.             local file = fs.open("/C/system/RAM/struktura.tmp","w")
  56.             file.write("TimeOut")
  57.             file.close()
  58.             error()
  59.             end
  60.         end
  61.     end
  62. end
  63.  
  64. function vyhodnotit()
  65.     if fs.exists(tArgs[4]) then
  66.         local data = fs.open(tArgs[4], "r")
  67.         soubor = data.readLine()
  68.         data.close()
  69.     end
  70. end
  71.  
  72. function poslat(filePath)
  73.     local data = fs.open(filePath, "r")
  74.         obsah = data.readAll()
  75.         data.close()
  76.         modem.transmit(tonumber(tArgs[1]),994,obsah)
  77. end
  78.  
  79. if #tArgs > 0 then
  80.  
  81.  
  82.  
  83. if fs.exists("/C/system/RAM/struktura.tmp") then fs.delete("/C/system/RAM/struktura.tmp") end
  84.     modem.transmit(tonumber(tArgs[1]),990,idPC)
  85.     modem.transmit(tonumber(tArgs[1]),998,user)
  86.     modem.transmit(tonumber(tArgs[1]),999,pass)
  87.    
  88.         if (tArgs[2] == "copy") or (tArgs[2] == "cut") then
  89.         modem.transmit(tonumber(tArgs[1]),991,tArgs[3])
  90.         modem.transmit(tonumber(tArgs[1]),993,tArgs[2])
  91.         prijmout()
  92.         elseif (tArgs[2] == "signature") or (tArgs[2] == "delete") then
  93.         tArgs[4] = "/C/system/RAM/struktura.tmp"
  94.         modem.transmit(tonumber(tArgs[1]),991,tArgs[3])
  95.         modem.transmit(tonumber(tArgs[1]),993,tArgs[2])
  96.         if (tArgs[2] == "signature") then
  97.             if fs.exists(tArgs[4]) then fs.delete(tArgs[4]) end
  98.             prijmout()
  99.             vyhodnotit()
  100.         else
  101.             prijmout()
  102.         end
  103.         elseif (tArgs[2] == "paste") then
  104.         modem.transmit(tonumber(tArgs[1]),991,tArgs[4])
  105.         poslat(tArgs[3])
  106.         modem.transmit(tonumber(tArgs[1]),993,tArgs[2])
  107.         print("Soubor odeslan!")
  108.         elseif (tArgs[2] == "newFile") then
  109.         modem.transmit(tonumber(tArgs[1]),991,tArgs[3])
  110.         modem.transmit(tonumber(tArgs[1]),993,tArgs[2])
  111.         prijmout()
  112.         elseif (tArgs[2] == "newFolder") then
  113.         modem.transmit(tonumber(tArgs[1]),991,tArgs[3])
  114.         modem.transmit(tonumber(tArgs[1]),993,tArgs[2])
  115.         prijmout()
  116.         end
  117.        
  118.     else
  119.     print("smbc server prikaz cesta kam")
  120.     --     0      1     2       3    4
  121. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement