diff options
author | Diego Nehab <diego.nehab@gmail.com> | 2016-03-04 14:38:56 -0300 |
---|---|---|
committer | Diego Nehab <diego.nehab@gmail.com> | 2016-03-04 14:38:56 -0300 |
commit | cdce73b226cc4da6a073b79bec02a6780d32ff1a (patch) | |
tree | f47dd46096b92b520607d11cb81ac3376a12976c /src/ftp.lua | |
parent | fe7b37acedd61f425b8d0b0531e78cc45554b332 (diff) | |
download | luasocket-cdce73b226cc4da6a073b79bec02a6780d32ff1a.tar.gz luasocket-cdce73b226cc4da6a073b79bec02a6780d32ff1a.tar.bz2 luasocket-cdce73b226cc4da6a073b79bec02a6780d32ff1a.zip |
Added support for FTP command lists
Diffstat (limited to 'src/ftp.lua')
-rw-r--r-- | src/ftp.lua | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/src/ftp.lua b/src/ftp.lua index 917cd89..e0c3cae 100644 --- a/src/ftp.lua +++ b/src/ftp.lua | |||
@@ -271,8 +271,17 @@ _M.command = socket.protect(function(cmdt) | |||
271 | local f = _M.open(cmdt.host, cmdt.port, cmdt.create) | 271 | local f = _M.open(cmdt.host, cmdt.port, cmdt.create) |
272 | f:greet() | 272 | f:greet() |
273 | f:login(cmdt.user, cmdt.password) | 273 | f:login(cmdt.user, cmdt.password) |
274 | f.try(f.tp:command(cmdt.command, cmdt.argument)) | 274 | if type(cmdt.command) == "table" then |
275 | if cmdt.check then f.try(f.tp:check(cmdt.check)) end | 275 | local argument = cmdt.argument or {} |
276 | local check = cmdt.check or {} | ||
277 | for i,cmd in ipairs(cmdt.command) do | ||
278 | f.try(f.tp:command(cmd, argument[i])) | ||
279 | if check[i] then f.try(f.tp:check(check[i])) end | ||
280 | end | ||
281 | else | ||
282 | f.try(f.tp:command(cmdt.command, cmdt.argument)) | ||
283 | if cmdt.check then f.try(f.tp:check(cmdt.check)) end | ||
284 | end | ||
276 | f:quit() | 285 | f:quit() |
277 | return f:close() | 286 | return f:close() |
278 | end) | 287 | end) |
@@ -282,4 +291,4 @@ _M.get = socket.protect(function(gett) | |||
282 | else return tget(gett) end | 291 | else return tget(gett) end |
283 | end) | 292 | end) |
284 | 293 | ||
285 | return _M \ No newline at end of file | 294 | return _M |