summaryrefslogtreecommitdiff
path: root/Assistant
Commit message (Collapse)AuthorAge
...
* fix combining of pairing alertsGravatar Joey Hess2012-09-11
|
* pairing works!!Gravatar Joey Hess2012-09-11
| | | | | | | | | Finally. Last bug fixes here: Send PairResp with same UUID in the PairReq. Fix off-by-one in code that filters out our own pairing messages. Also reworked the pairing alerts, which are still slightly buggy.
* keep track of the stage we're at in pairingGravatar Joey Hess2012-09-11
| | | | | This avoids us responding to our own pairing messages, as well as ignoring any out of order messages that might be received somehow.
* work around a bug in YesodGravatar Joey Hess2012-09-11
| | | | The PathPiece instance for Text results in a 404 for T.empty.
* additional security sanity checks on pairing messagesGravatar Joey Hess2012-09-11
|
* add a UUID to pair requestsGravatar Joey Hess2012-09-11
| | | | | | | Pair requests the the same UUID are part of the same pairing session, which allows us to detect attempts to brute force the shared secret, as that will result in pair requests with the same UUID that are not verified with the right secret.
* handle stale PairAcksGravatar Joey Hess2012-09-11
|
* clean up authorized_keys handlingGravatar Joey Hess2012-09-11
| | | | | Including rollback of adding the key when a pairing response gets canceled by the user.
* pairing probably works now (untested)Gravatar Joey Hess2012-09-10
|
* check that ssh public key received over the wire is saneGravatar Joey Hess2012-09-10
|
* responding to pair requests *almost* worksGravatar Joey Hess2012-09-10
|
* broke out fairly generic ssh stuff to Assistant.Ssh so pairing can use it tooGravatar Joey Hess2012-09-10
| | | | | I'd rather Utility.Ssh, but the SshData type is not sufficiently clean and generic for Utility.
* split up ssh key generation and setup stepsGravatar Joey Hess2012-09-10
|
* add an alert while a locally initiated pairing request is in progressGravatar Joey Hess2012-09-09
| | | | Has a button to cancel the request.
* pair request alert tweaksGravatar Joey Hess2012-09-09
|
* unify bootstrap icon names in a data typeGravatar Joey Hess2012-09-09
|
* update pair request alert when button is pressedGravatar Joey Hess2012-09-09
|
* reorg templatesGravatar Joey Hess2012-09-08
|
* moved the PairStage inside the Verifiable dataGravatar Joey Hess2012-09-08
|
* add a PairDone messageGravatar Joey Hess2012-09-08
|
* render webapp staitc file url using yesodGravatar Joey Hess2012-09-08
|
* first pass at alert buttonsGravatar Joey Hess2012-09-08
| | | | | | | | | They work fine. But I had to go to a lot of trouble to get Yesod to render routes in a pure function. It may instead make more sense to have each alert have an assocated IO action, and a single route that runs the IO action of a given alert id. I just wish I'd realized that before the past several hours of struggling with something Yesod really doesn't want to allow.
* add remote directory to pair requestGravatar Joey Hess2012-09-08
|
* filter out our own pairing requestsGravatar Joey Hess2012-09-08
| | | | | Due to being multicast, requests sent by one thread are received by the listener in another thread.
* fix build without pairing supportGravatar Joey Hess2012-09-08
|
* added pair listener threadGravatar Joey Hess2012-09-08
|
* don't pass .local hostname over the wireGravatar Joey Hess2012-09-08
| | | | | | The remote computer may not support mDNS. Instead, pass over the uname -a hostname, and the IP address, and leave best hostname calculation to the remote side.
* fix fd leakGravatar Joey Hess2012-09-08
| | | | also, tested on ipv6.. doesn't work
* implement pair request broadcastsGravatar Joey Hess2012-09-08
| | | | | | | | | | Pair requests are sent on all network interfaces, and contain the best available hostname to use to contact the host on that interface. Added a pairing in progress page. Revert "reduce some boilerplate using ghc extensions", because it caused overlapping instances for Text.
* pairing passphrase entry form, validation, etcGravatar Joey Hess2012-09-08
| | | | | | Actually 3 forms in one, this handles the initial passphrase entry, and the confirmation, and also varys wording if the same user or a different user is confirming.
* yesod skelton and routes for pairingGravatar Joey Hess2012-09-08
| | | | yet more changes to pairing message data types
* broke out Verifiable to a utility library, and added a quickcheck testGravatar Joey Hess2012-09-07
|
* massively simplified the pairing protocolGravatar Joey Hess2012-09-07
| | | | | | Only 2 messages are needed to do pairing. And added a nice Verifiable data type.
* high-level pairing implementationGravatar Joey Hess2012-09-07
| | | | | | | Roughed out a data type that models the whole pairing conversation, and can be serialized to implement it. And a state machine to run that conversation. Not yet hooked up to any transport such as multicast UDP.
* display errors when any named thread crashesGravatar Joey Hess2012-09-06
|
* display alert for inotify/kqueue errorsGravatar Joey Hess2012-09-06
|
* improve syncing support for special remotesGravatar Joey Hess2012-09-04
| | | | | | Avoid trying to git push/pull to special remotes, but still do transfer scans of them, after git pull from any other remotes, so we know about any values that have been placed on them.
* rsync.net configurator tested and 100% workingGravatar Joey Hess2012-09-04
|
* rsync.net configurator displayGravatar Joey Hess2012-09-03
| | | | Doesn't set up the repo yet.
* defer setting up ssh public key until after confirmationGravatar Joey Hess2012-09-02
|
* allow making encrypted rsync special remotesGravatar Joey Hess2012-09-02
| | | | wow, that was easy!
* make bare repo on serverGravatar Joey Hess2012-09-02
| | | | | | | I think this makes sense.. Unless the assistant is running on the server, the repo won't be updated, so it might as well be bare. Non-bare repos will be handled by the pairing configurator, later.
* adding ssh remote workingGravatar Joey Hess2012-09-02
| | | | Rsync remote still needs work
* run sync in backgroundGravatar Joey Hess2012-09-02
|
* factored out repository creation code and made more genericGravatar Joey Hess2012-09-02
| | | | | for use by other configurators.. probably should be moved to a utility module somewhere
* reduce some boilerplate using ghc extensionsGravatar Joey Hess2012-09-02
|
* add ssh confirmation pageGravatar Joey Hess2012-09-02
| | | | also broke out webapp types into a separate module
* don't set up authorized_keys during probeGravatar Joey Hess2012-09-01
|
* ssh connection testing and key setupGravatar Joey Hess2012-09-01
|
* UI for adding a ssh or rsync remoteGravatar Joey Hess2012-08-31
|