Giter VIP home page Giter VIP logo

Comments (2)

buyology avatar buyology commented on June 27, 2024 2

I'm looking at RFC3659 and the examples of MLST/MLSD responses look like this:

7.7.2. MLST of a directory

C> PWD
S> 257 "/" is current directory.
C> MLst tmp
S> 250- Listing tmp
S>  Type=dir;Modify=19981107085215;Perm=el; /tmp
S> 250 End

7.7.3. MLSD of a directory

C> MLSD tmp
S> 150 BINARY connection open for MLSD tmp
D> Type=cdir;Modify=19981107085215;Perm=el; tmp
D> Type=cdir;Modify=19981107085215;Perm=el; /tmp
D> Type=pdir;Modify=19990112030508;Perm=el; ..
D> Type=file;Size=25730;Modify=19940728095854;Perm=; capmux.tar.z
D> Type=file;Size=1830;Modify=19940916055648;Perm=r; hatch.c
D> Type=file;Size=25624;Modify=19951003165342;Perm=r; MacIP-02.txt
D> Type=file;Size=2154;Modify=19950501105033;Perm=r; uar.netbsd.patch
D> Type=file;Size=54757;Modify=19951105101754;Perm=r; iptnnladev.1.0.sit.hqx
D> Type=file;Size=226546;Modify=19970515023901;Perm=r; melbcs.tif
D> Type=file;Size=12927;Modify=19961025135602;Perm=r; tardis.1.6.sit.hqx
D> Type=file;Size=17867;Modify=19961025135602;Perm=r; timelord.1.4.sit.hqx
D> Type=file;Size=224907;Modify=19980615100045;Perm=r; uar.1.2.3.sit.hqx
D> Type=file;Size=1024990;Modify=19980130010322;Perm=r; cap60.pl198.tar.gz
S> 226 MLSD completed

and the spec says:

      mlst-response    = control-response / error-response
      mlsd-response    = ( initial-response final-response ) /
                         error-response

      control-response = "250-" [ response-message ] CRLF
                         1*( SP entry CRLF )
                         "250" [ SP response-message ] CRLF

      initial-response = "150" [ SP response-message ] CRLF
      final-response   = "226" SP response-message CRLF

      response-message = *TCHAR

      data-response    = *( entry CRLF )

      entry            = [ facts ] SP pathname
      facts            = 1*( fact ";" )
      fact             = factname "=" value
      factname         = "Size" / "Modify" / "Create" /
                         "Type" / "Unique" / "Perm" /
                         "Lang" / "Media-Type" / "CharSet" /
                         os-depend-fact / local-fact
      os-depend-fact   = <IANA assigned OS name> "." token

and that seems to also indicate that there should be no extra CRLF.

from ftpserverlib.

asv avatar asv commented on June 27, 2024

I can'n find a description of the LIST output format.... But proftpd does't add CRLF to the end of LIST-response.

[Need more research]

from ftpserverlib.

Related Issues (20)

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.