Git Product home page Git Product logo

paramikojs's People

Contributors

kousu avatar mimecuvalo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

paramikojs's Issues

Support for more modern crypto schemes

ECDSA/Curve25519 for KEX, SHA2 as MAC and AES-GCM/ChaCha20 as cipher are getting more widespread, and I'd rather not drag along the old baggage on my servers for backwards compatibility with FireFTP (like we did with SSL3…).

I know this is far from a small request, but it'll be necessary sooner or later. The reduced CPU load from ed25519 would be a nice side effect, as FireFTP is cripplingly slow right now.

Pull socket inside of transport

This is a feature request.

I find it awkward that I need to create my real transport (cough_WebSockets_cough) outside of paramikojs and pass in a writeCallback to do writes and need to manually edit transport.fullBuffer to make reads work. Paramiko-python doesn't need this because it can use threads. However, in lieu of threads, setInterval() could be used on transport.run() to handle reads and instead of passing writeCallback, transport could be an base class with abstract read() and write() methods. This change would make it easier to integrate websockets as I would just write a subclass of transport.

I sort of like the idea of exposing the event processor (transport.run())--it fits nicely with my twisted/asyncio/SDL training--so I'm not entirely sold on secretly using setInterval()... but if original Paramiko does secret threads, maybe it's the quickest and most reliable choice.


Sort of relatedly, it's annoying that I need to poll (recv +WaitException ~= select(..., 0)) to get data out of a paramikojs shell session. I would rather set an event listener to be called when data comes in.

Components is deprecated

I'm trying to run paramikojs from the web. I find that it depends heavily on Components.classes; Firefox 32 does not have this object and plus https://github.com/mimecuvalo/paramikojs/blob/master/kryptos/Hash/SHA.js#L13 is giving me a warning that even "The Components object is deprecated. It will soon be removed."

I was just going to submit a pull request that erased all the Mozilla specific calls--I was assuming I could just use the drop in replacements written and marked with // Chrome --but then I realized this problem goes deeper that kryptos/ and that I'm out of my depth, so I'm logging an issue in case I get distracted and forget.

Is Components.classes reliable inside of extensions or is it just going away entirely? Does this break FireSSH in new browsers?

SFTP connection problems on FireFTP

Hi,

I hope this message can deliver to correct people.

I am using latest el-capitan osx on my macbook. Probably that error occurred after than I run some commands on terminal.
I was create ssh keys ssh-keygen and ssh-add commands also I was run ssh-agent..

Now the problem is occurs only while connecting sftp hosts, I can still connecting ftp sites.
I saw that error message on fireftp's console;
image

Thanks in advance.

Needs a License

Hey you should add an open source license to this repo, that way other people can use it!

Use promises

This is a feature request. Well, more of a stylistic request.

Paramikojs performs network processes in an entirely async environment. This leads to lots of callbacks everywhere. A lot of this would shortened for readability by the use of promises. The key feature is that the promises/A+ spec declares that promises chain, which means individual steps of an asynchronous process do not need to be hardcoded in what to call next. I recently solved another networking problem--implementing SOCKS5--elegantly with promises. If you put your thumb over all the .then()s, that _connect() reads like a synchronous subroutine.

I can't speak for everyone, but I would find the API would be easier to use if I could ask for promises instead of needing to pass in callbacks.

This would require a large overhaul of some code that you are probably a bit tired of, but I wanted to bring the option to your attention.

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.