fix typos, re-run protoc (#686)
* fix typos in docs
* use keys in named literal
For easier grepping, and better stability.
* libplugin: regenerate with v1.36.10
592ca79999 upgraded
the dependency, but didn't actually regenerate.
This commit is contained in:
parent
584aae2d3a
commit
17c0645dc6
9 changed files with 645 additions and 1447 deletions
|
|
@ -1,6 +1,6 @@
|
|||
# Contributing
|
||||
|
||||
Thank you for your interest in contributing to sshpiper.
|
||||
Thank you for your interest in contributing to sshpiper.
|
||||
Make sure you have read [README.md](README.md) before starting.
|
||||
|
||||
## Getting Started
|
||||
|
|
@ -13,7 +13,7 @@ Make sure you have read [README.md](README.md) before starting.
|
|||
|
||||
### Get the code
|
||||
|
||||
rememeber to clone the submodules
|
||||
remember to clone the submodules
|
||||
|
||||
```
|
||||
git clone https://github.com/tg123/sshpiper
|
||||
|
|
@ -42,7 +42,7 @@ more settings: <https://github.com/linuxserver/docker-openssh-server>
|
|||
after you have done, attach to testrunner container:
|
||||
|
||||
```
|
||||
docker exec -ti e2e_testrunner_1 bash
|
||||
docker exec -ti e2e-testrunner-1 bash
|
||||
```
|
||||
|
||||
then run test in `/src/e2e`
|
||||
|
|
@ -57,9 +57,9 @@ go test
|
|||
|
||||
## Understanding how sshpiper works
|
||||
|
||||
### sshpiper seasoned cryto ssh lib
|
||||
### sshpiper seasoned crypto ssh lib
|
||||
|
||||
The `crypto` folder contains the source code of the [sshpiper seasoned cryto ssh lib](./crypto/).
|
||||
The `crypto` folder contains the source code of the [sshpiper seasoned crypto ssh lib](./crypto/).
|
||||
It based on [crypto/ssh](https://golang.org/pkg/crypto/ssh/) and with a drop-in [sshpiper.go](./crypto/ssh/sshpiper.go) to expose all low level sshpiper required APIs.
|
||||
|
||||
### sshpiperd
|
||||
|
|
@ -70,10 +70,10 @@ The plugins are responsible to figure out how to authenticate `downstream` and m
|
|||
|
||||
### plugin
|
||||
|
||||
The plugin is typically a grpc server that accepts requrests from `sshpiperd`.
|
||||
The plugin is typically a grpc server that accepts requests from `sshpiperd`.
|
||||
The proto defines in [sshpiper.proto](./proto/sshpiper.proto).
|
||||
|
||||
In most of the cases, the plugin connects with `sshpiperd` via `stdin/stdout`. The [ioconnn](./libplugin/ioconn/) wraps stdin/stdout to net.Conn for grpc use.
|
||||
In most of the cases, the plugin connects with `sshpiperd` via `stdin/stdout`. The [ioconn](./libplugin/ioconn/) wraps stdin/stdout to net.Conn for grpc use.
|
||||
`sshpiperd` also supports to create remote grpc connections to a plugin deploy in a different machine.
|
||||
|
||||
## Your first plugin
|
||||
|
|
@ -96,8 +96,8 @@ Take `fixed` as an example:
|
|||
}
|
||||
```
|
||||
|
||||
Here means the `downstream` is sending password to `sshpiperd`. Then `sshpiperd` will call plugin's `PasswordCallback` to get the `upstream` to connect to.
|
||||
The `upstream` object contains host port and auth info about how to connect to the `upstream`. you can aslo return an error to deny the connection.
|
||||
Here means the `downstream` is sending password to `sshpiperd`. Then `sshpiperd` will call plugin's `PasswordCallback` to get the `upstream` to connect to.
|
||||
The `upstream` object contains host port and auth info about how to connect to the `upstream`. you can also return an error to deny the connection.
|
||||
|
||||
### build and run the plugin
|
||||
|
||||
|
|
@ -112,4 +112,3 @@ you will get the executable in the current directory. say `myplugin`. start it w
|
|||
```
|
||||
sshpiperd /path/to/myplugin
|
||||
```
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue