Coder Social home page Coder Social logo

dittodhole / dotnet-silverlight-ftp Goto Github PK

View Code? Open in Web Editor NEW
3.0 2.0 2.0 1.57 MB

sharpLightFtp is a Silverlight 5 assembly, written in C#. It enables rudimental ftp-access within an in-browser scenario.

Home Page: https://www.nuget.org/packages/sharpLightFtp/

License: Do What The F*ck You Want To Public License

C# 95.35% ASP 2.35% HTML 2.30% PowerShell 0.01%
dotnet silverlight ftp-client

dotnet-silverlight-ftp's People

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

dotnet-silverlight-ftp's Issues

Download Progress

Already opened an issue for upload progress - the same applies to download

Abort Download/Upload

Some guys need it, but this will mean heavy refactoring as the whole API has to be async (yes, internally it is, but ...)

Cannot get listing of file from latest version

Hi,

tnx for your hard work, but with latest update i cannot receive list of file.

in FileClient.cs line 156

var transferComplexSocket = this.GetPassiveComplexSocket(controlComplexSocket);

return null.

in the GetPassiveComplexSocket-method ftpReply.ResponseMessage is "End" so no match.

this is my connection log with filezilla, i think it can help you

Stato: Connessione a XX.XX.XX.XXX:21...
Stato: Connessione stabilita, in attesa del messaggio di benvenuto...
Risposta: 220 (vsFTPd 3.0.2)
Comando: USER XXXXX
Risposta: 331 Please specify the password.
Comando: PASS ***********
Risposta: 230 Login successful.
Comando: OPTS UTF8 ON
Risposta: 200 Always in UTF8 mode.
Stato: Connesso
Stato: Lettura elenco cartelle...
Comando: PWD
Risposta: 257 "/"
Stato: Contenuto cartella letto con successo

Cannot get listing from some FTP servers

I noticed that I was failing to get the directory listing from some FTP servers.

At first I thought it was just related to firewalls/routers/some weird aspect of my network setup. (I am testing my app on a VM).

Now I think I have finally figured it out:

some FTP servers do not respond to the "LIST" command until the connection to the second (PASV) port has been made.

Commenting the call to controlComplexSocket.Receive() after the LIST has been sent resolves the issue:

                        // send LIST/MLSD/MLST-command via control socket
                        {
                            var success = controlComplexSocket.Send(concreteCommand,
                                                                    this.Encoding,
                                                                    this.SendTimeout);
                            if (!success)
                            {
                                return Enumerable.Empty<FtpListItem>();
                            }
                        }

                        //NOTE: some FTP servers don't send a 150 response to the LIST command until the 2nd socket has connected!

                        //{
                        //    var complexResult = controlComplexSocket.Receive(this.Encoding,
                        //                                                     this.ReceiveTimeout);
                        //    var success = complexResult.Success;
                        //    if (!success)
                        //    {
                        //        return Enumerable.Empty<FtpListItem>();
                        //    }
                        //}

Trouble downloading

Hi, I'm having trouble with your latest revision.

I can't seem to download properly - I only get part of the file before .Download() returns.

I'm trying to figure out how that part of the code is working. The problem seems to be that ReceiveIntoStream() can return before the transfer is complete.

ftp server

HI,

tnx to your work!

is possible for you create a ftp server for silverlight? or you know a library for this?

Tnx in advance!

problem get list of dir /

Hi

but now there is a problem with latest version, if i try to do
GetListing("/")
i obtain error:

The path is not of a legal form.

at System.IO.Path.NormalizePath(String path, Boolean fullCheck, Int32 maxPathLength)
at System.IO.Path.NormalizePath(String path, Boolean fullCheck)
at System.IO.Path.GetDirectoryName(String path)
at sharpLightFtp.FtpFileSystemObject.GetParentDirectory()
at sharpLightFtp.FtpFileSystemObject.GetParentFtpDirectory()
at sharpLightFtp.FtpClient.GotoParentDirectory(ComplexSocket controlComplexSocket, FtpFileSystemObject ftpFileSystemObject, Boolean createDirectoryIfNotExists)
at sharpLightFtp.FtpClient.GetListing(String path)
at RemoteFileManager.RemoteService.FtpService.loadDir()
at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()

if i set a sub dir all work, if i do a dirlist to a subdir all works. i try because it cannot retry the parent of root.

Tnx

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.