mirror of
https://gogs.blitter.com/RLabs/xs
synced 2024-08-14 10:26:42 +00:00
Merge branch 'master' into hkexcp-proto
This commit is contained in:
commit
e3e38fb6fa
2 changed files with 36 additions and 30 deletions
2
TODO.txt
2
TODO.txt
|
@ -6,7 +6,7 @@ Chaff Improvements
|
|||
- Client-input chaff file data (ie., Moby Dick)
|
||||
|
||||
Architecture
|
||||
- Move hkexnet components other than key exchange into a proper hkex package
|
||||
(DONE) - Move hkexnet components other than key exchange into a proper hkex package
|
||||
(ie., hkexsh imports hkex) - hkex should be usable for other client/svr utils,
|
||||
ala 'hkex-netcat')
|
||||
- Make KEx fully-pluggable: isolate all code to do with Herradura into a
|
||||
|
|
|
@ -44,39 +44,45 @@ const (
|
|||
|
||||
/*---------------------------------------------------------------------*/
|
||||
|
||||
type WinSize struct {
|
||||
Rows uint16
|
||||
Cols uint16
|
||||
}
|
||||
type (
|
||||
WinSize struct {
|
||||
Rows uint16
|
||||
Cols uint16
|
||||
}
|
||||
|
||||
type ChaffConfig struct {
|
||||
shutdown bool //set to inform chaffHelper to shut down
|
||||
enabled bool
|
||||
msecsMin uint //msecs min interval
|
||||
msecsMax uint //msecs max interval
|
||||
szMax uint // max size in bytes
|
||||
}
|
||||
// chaffconfig captures attributes used to send chaff packets betwixt
|
||||
// client and server connections, to obscure true traffic timing and
|
||||
// patterns
|
||||
// see: https://en.wikipedia.org/wiki/chaff_(countermeasure)
|
||||
ChaffConfig struct {
|
||||
shutdown bool //set to inform chaffHelper to shut down
|
||||
enabled bool
|
||||
msecsMin uint //msecs min interval
|
||||
msecsMax uint //msecs max interval
|
||||
szMax uint // max size in bytes
|
||||
}
|
||||
|
||||
// Conn is a HKex connection - a superset of net.Conn
|
||||
type Conn struct {
|
||||
m *sync.Mutex
|
||||
c net.Conn // which also implements io.Reader, io.Writer, ...
|
||||
h *hkex.HerraduraKEx
|
||||
cipheropts uint32 // post-KEx cipher/hmac options
|
||||
opts uint32 // post-KEx protocol options (caller-defined)
|
||||
WinCh chan WinSize
|
||||
Rows uint16
|
||||
Cols uint16
|
||||
// Conn is a HKex connection - a superset of net.Conn
|
||||
Conn struct {
|
||||
m *sync.Mutex
|
||||
c net.Conn // which also implements io.Reader, io.Writer, ...
|
||||
h *hkex.HerraduraKEx
|
||||
cipheropts uint32 // post-KEx cipher/hmac options
|
||||
opts uint32 // post-KEx protocol options (caller-defined)
|
||||
WinCh chan WinSize
|
||||
Rows uint16
|
||||
Cols uint16
|
||||
|
||||
chaff ChaffConfig
|
||||
chaff ChaffConfig
|
||||
|
||||
closeStat *uint8 // close status (shell exit status: UNIX uint8)
|
||||
r cipher.Stream //read cipherStream
|
||||
rm hash.Hash
|
||||
w cipher.Stream //write cipherStream
|
||||
wm hash.Hash
|
||||
dBuf *bytes.Buffer //decrypt buffer for Read()
|
||||
}
|
||||
closeStat *uint8 // close status (shell exit status: UNIX uint8)
|
||||
r cipher.Stream //read cipherStream
|
||||
rm hash.Hash
|
||||
w cipher.Stream //write cipherStream
|
||||
wm hash.Hash
|
||||
dBuf *bytes.Buffer //decrypt buffer for Read()
|
||||
}
|
||||
)
|
||||
|
||||
func (hc Conn) GetStatus() uint8 {
|
||||
return *hc.closeStat
|
||||
|
|
Loading…
Reference in a new issue