Commit Graph
89 Commits
Author SHA1 Message Date
Julien Laffaye 7b85eb4638 Document ServerConn is not safe for concurrent use.
Mention textproto.Error so users can access the error code via type
assertion (issue #78).
2017-03-04 13:34:31 +01:00
Julien LaffayeandGitHub cb3924c5c9 Merge pull request #80 from mappu/master
ftp: fix OPTS UTF8 ON for Filezilla Server
2017-03-04 13:04:48 +01:00
Julien Laffaye 602886c6b8 Do not export the scanner type
It is an internal specific to parse list responses.
2017-03-04 13:01:41 +01:00
Julien Laffaye 68918a8852 Remove useless assignment 2017-03-04 12:58:20 +01:00
Julien LaffayeandGitHub 106ab1b13b Merge pull request #76 from vahid-sohrabloo/patch-1
Add Size Command
2017-02-21 10:41:17 +01:00
Julien Laffaye de604c9776 Expose disableEPSV
Fixes #71
2017-02-05 21:02:16 +01:00
Julien LaffayeandGitHub 4596ddad4d Merge pull request #73 from digineo/move-utf8
Switch to UTF-8 after login
2017-02-05 20:45:42 +01:00
Julien LaffayeandGitHub a5c2cfe9ac Merge pull request #64 from digineo/mlst
Use MLST if supported
2017-01-30 14:43:20 +01:00
Julien LaffayeandGitHub 5a8b8eeb12 Merge pull request #66 from zeast/master
use utf8 default
2017-01-20 09:08:54 +01:00
Julien LaffayeandGitHub 0757556863 Merge pull request #63 from digineo/refactor_line_parsing
Refactoring the line parsing
2017-01-19 16:22:41 +01:00
Julien LaffayeandGitHub 95f4fe9d35 Merge pull request #62 from svett/fix-filename-parsing
Fix incorrect filename parsing
2016-12-29 18:20:21 +01:00
Julien Laffaye 988909ab28 Disable EPSV for tests.
Also disable it for next attempts when it failed.
2016-11-24 14:49:16 +01:00
Julien Laffaye 72154dff87 Use last Go version 2016-11-24 12:25:00 +01:00
Julien LaffayeandGitHub 17dda2a76c Merge pull request #59 from digineo/close-fix
Add missing Close() before return
2016-11-24 10:15:47 +01:00
Julien LaffayeandGitHub c47cb8ca13 Merge pull request #54 from 0086/master
Fix ls bug for file or folder name includes multiple spaces
2016-11-24 10:13:12 +01:00
Julien Laffaye 025815df64 Merge pull request #51 from brianfoshee/update-go-version
Add Go 1.6 test target as well as most recent 1.5 release
2016-02-29 22:52:38 +01:00
Julien Laffaye 0e072be722 Merge pull request #43 from HnH/master
ServerConn::openDataConn() recursively tries to use EPSV and PASV.
2016-02-27 11:10:24 +01:00
Julien Laffaye 3e92923fa0 Merge pull request #48 from ezeql/patch-1
Update README.md
2016-02-10 22:23:03 +01:00
Julien Laffaye fc06ecffd6 Merge pull request #47 from etix/hotfix
Fix a crash with pasv invalid responses
2016-02-08 20:19:59 +01:00
Julien Laffaye 8b4b15b841 Merge pull request #44 from digineo/fix_time_parsing
Do not crash on invalid lines
2015-12-28 18:04:02 +01:00
Julien Laffaye f780314026 Use latest Go version.
Remove cover tool, it is now part of Go.
2015-12-01 23:05:03 +01:00
Julien Laffaye ff69fe44f1 Make gofmt and golint happy. 2015-11-30 12:22:16 +01:00
Julien Laffaye a104f27d44 Merge pull request #41 from digineo/avoid_strings_split
Avoid strings.Split
2015-09-01 23:31:23 +02:00
Julien Laffaye 5260d41db2 Merge pull request #42 from digineo/multiline_mock
Create mock for multiline test
2015-09-01 23:28:59 +02:00
Julien Laffaye 1b24570309 Add ReportCard badge. 2015-08-28 15:52:55 +02:00
Julien Laffaye db9aa14e61 Merge pull request #40 from andybalholm/master
Add support for directory listings in MS-DOS DIR format.
2015-08-25 09:22:57 +02:00
Julien Laffaye 7acded32b2 Add a test for the legacy Connect function. 2015-08-21 18:47:44 +02:00
Julien Laffaye d640995c66 Add tests for timeout and wrong login. 2015-08-21 18:36:56 +02:00
Julien Laffaye 7534ffcb97 Add a test for RetrFrom method. 2015-08-20 22:47:09 +02:00
Julien Laffaye 4cb43e6615 Merge pull request #39 from digineo/increase_test_coverage
Increase test coverage
2015-08-20 11:06:57 +02:00
Julien Laffaye fb305c5912 Merge pull request #38 from digineo/test_pasv
Test PASV as well
2015-08-20 09:37:12 +02:00
Julien Laffaye 201b5505ae Merge pull request #37 from digineo/coveralls
Add coveralls.io to display test coverage
2015-08-19 21:18:42 +02:00
Julien Laffaye 519b366223 Silence StatusNotImplemented error for Logout() 2015-08-19 00:17:44 +02:00
Julien Laffaye c741076986 Merge pull request #35 from digineo/code_optimizations
Some code optimizations
2015-08-18 23:43:34 +02:00
Julien Laffaye b33f6e0005 Fix EPSV for domains with multiple A entries.
We can not use the DNS name to open the data connection, as we might get
another IP than the current host from the DNS resolution.
2015-08-18 23:38:53 +02:00
Julien Laffaye 23b395751d Merge pull request #33 from digineo/ipv6
Use localhost to test IPv6 connectivity
2015-08-18 23:07:04 +02:00
Julien Laffaye 994e6a4239 Merge pull request #34 from digineo/improve_parsing
Improve line parsing
2015-08-18 22:50:39 +02:00
Julien Laffaye c69930155d Merge pull request #32 from digineo/travis
Add Travis CI
2015-08-18 21:22:31 +02:00
Julien Laffaye e6587b1638 Merge pull request #31 from digineo/listings
Add support for more listing formats
2015-08-18 19:17:10 +02:00
Julien Laffaye 0ae5d598fa Use prefered API function. 2015-08-18 19:03:26 +02:00
Julien Laffaye 3e21d70d53 Skip TestConnIPv6 in short mode. 2015-08-18 19:02:23 +02:00
Julien Laffaye e987451f99 SplitHostPort before connecting to the remote.
This, way, we dont have to cleanup the tcp connection if SplitHostPort fails.
2015-08-18 19:00:56 +02:00
Julien Laffaye aae10f216b Merge branch 'stacktic-ipv6' 2015-08-18 18:59:16 +02:00
Julien Laffaye a6e47bb27d Merge branch 'ipv6' of https://github.com/stacktic/ftp into stacktic-ipv6
Conflicts:
	ftp.go
2015-08-18 18:52:29 +02:00
Julien Laffaye 110a39bff4 Skip functional testing in short mode. 2015-08-18 18:39:31 +02:00
Julien Laffaye a5b2614a99 Merge pull request #8 from dsluis/master
Changing expected status response for Logout call
2015-08-18 18:13:03 +02:00
Julien Laffaye 061d4ea288 Merge pull request #13 from stacktic/rest
Add support for the REST command
2015-08-18 18:05:20 +02:00
Julien Laffaye 10cade7090 Merge pull request #30 from d2g/patch-1
Copy Paste Error / Typo
2015-04-23 22:56:49 +02:00
Julien Laffaye a9410e3e51 Implements timeouts.
Added DialTimeout and Dial functions.
Fixes issue #27.
2015-03-16 23:45:56 +01:00
Julien Laffaye 5807e676a3 Add comments to make golint happy. 2015-03-05 11:57:38 +01:00
Julien Laffaye 816e28448f Specify the fields to make govet happy. 2015-03-05 11:49:26 +01:00
Julien Laffaye e177ecf60b Simplify the code with gofmt -s 2015-03-05 11:45:33 +01:00
Julien Laffaye 80fcd9720b Merge pull request #22 from pengux/master
Changed to using ReadResponse instead of ReadCodeLine for cmdDataConn
2014-10-30 20:10:31 +01:00
Julien Laffaye fec71e62e4 Merge pull request #18 from SoCloz/master
Allow multi-line 226 responses to STOR commands - fixes #17
2014-03-25 09:38:02 +01:00
Julien Laffaye 1a1cdac5e4 Merge pull request #16 from igungor/patch-1
Update README.md
2014-03-14 21:29:45 +01:00
Julien Laffaye 8fc92e7ea8 Merge pull request #14 from etix/master
Fix some issues with uncommon server behaviors
2014-02-18 20:15:40 +01:00
Julien Laffaye 460814bcb1 Merge pull request #9 from WesTower/master
Added NLST-equivalent command
2013-12-03 23:52:14 -08:00
Julien Laffaye 962edd16c2 Remove obsolete comment. 2013-09-07 18:49:50 +02:00
Julien Laffaye 1b161dcaad gofmt ftp.go 2013-09-07 18:48:40 +02:00
Julien Laffaye 816272713b Merge pull request #7 from gcastel/master
PASV support
2013-09-07 09:48:30 -07:00
Julien Laffaye 188465df99 Merge pull request #6 from SunRunAway/feature/fix_ReadCodeLine
doing ReadCodeLine in Close() @ ReadCloser
2013-07-10 11:23:31 -07:00
Julien Laffaye 01215b6c09 Create README.md 2013-07-08 20:34:49 +02:00
Julien Laffaye d4849c8195 gofmt parse_test.go 2013-07-08 20:06:16 +02:00
Julien Laffaye 7511d55831 Merge pull request #5 from SunRunAway/feature/time
add Time for Entry
2013-07-08 11:07:10 -07:00
Julien Laffaye 60693cc590 Add a comment to state why TestConn2 is interesting. 2013-07-08 08:44:16 +02:00
Julien Laffaye 100a5ab846 Merge pull request #4 from SunRunAway/feature/connect
use ReadResponse in Connect
2013-07-07 23:43:28 -07:00
Julien Laffaye 732309446f Use strings.TrimSpace() instead of strings.Trim(). 2013-05-20 01:30:03 +02:00
Julien Laffaye b82b87bce2 Fix spelling. 2013-05-20 01:20:29 +02:00
Julien Laffaye f23c3ddfab Added feature discovery as per RFC 2389. 2013-05-19 21:54:57 +02:00
Julien Laffaye 2257d14f75 Use ReadResponse instead of ReadCodeLine.
ReadResponse deals with multi-lines reponse, ReadCodeLine does not.
While I'm here, use the cmd() helper in epsv() method.
2013-05-19 21:23:29 +02:00
Julien Laffaye 91fc6ada34 Added Logout() method. 2013-05-19 21:15:23 +02:00
Julien Laffaye e00e1f11a0 Revise godoc comments. 2013-05-19 19:54:14 +02:00
Julien Laffaye ebf946ada5 Switch to binary mode once logged-in.
Data transfer in binary mode works for both ASCII and binary (such as JPEG
images) files. Therefore it should be the default.

Fixes #3
2013-05-08 17:46:48 +02:00
Julien Laffaye 3a7f65cd20 Update copyright years. 2013-02-17 10:34:01 +01:00
Julien Laffaye 1b12f17f86 Makefile is deprecated. 2013-02-17 10:33:24 +01:00
Julien Laffaye acaf7edcbc gofmt 2013-02-17 10:31:56 +01:00
Julien Laffaye 872a244347 More status code texts. 2013-02-17 10:29:16 +01:00
Julien Laffaye d69e9326f4 Set the size of the entry in List() 2013-02-17 10:03:46 +01:00
jlaffaye 47b339b57b Update to latest Go weekly. 2011-12-27 22:50:50 +01:00
jlaffaye 6110501482 Added CurrentDir() and ChangeDirToParent()
Added more tests.
2011-09-07 16:52:52 +02:00
jlaffaye 68f080c45f Returns a textproto.Error
It easier for the client to extract the code and message with type assertions.
2011-09-06 19:15:39 +02:00
jlaffaye af6f5aac6a Add helpers functions to cleanup code. 2011-09-06 19:12:22 +02:00
jlaffaye 6aaa275d08 Login() is a function on its own.
It allows to try multiple logins without closing the connection.
Drop the useless ConnectAnonymous.
2011-09-06 18:27:30 +02:00
jlaffaye b70c76ed28 More commands and their tests.
Delete()
MakeDir()
RemoveDir()
2011-09-06 00:02:01 +02:00
jlaffaye a87255661d Better error handling, new commands.
The code is no safer.
Added Stor(), Rename(), NoOp()
Improved Retr()
Added client tests (requires a ftp server on localhost)
2011-09-05 23:36:14 +02:00
jlaffaye faca79d4ea List() takes an argument. 2011-05-08 13:08:31 +01:00
jlaffaye 7b2259fd5d Use net/textproto instead of net. 2011-05-07 12:56:42 +01:00
jlaffaye 3b5a440874 Rename ServerCon' to ServerConn' to be consistent with core packages. 2011-05-07 12:13:51 +01:00
jlaffaye bcc332e95c First commit. 2011-05-07 00:29:10 +01:00