-
Notifications
You must be signed in to change notification settings - Fork 87
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
RawBearer API #4395
base: master
Are you sure you want to change the base?
RawBearer API #4395
Conversation
98f55de
to
53b2ef0
Compare
53b2ef0
to
82864b3
Compare
8232b17
to
c5fc556
Compare
ouroboros-network-framework/changelog.d/20230224_094922_tdammers_raw_bearer.rst
Outdated
Show resolved
Hide resolved
ouroboros-network-framework/test/Test/Ouroboros/Network/RawBearer.hs
Outdated
Show resolved
Hide resolved
ouroboros-network-framework/test/Test/Ouroboros/Network/RawBearer.hs
Outdated
Show resolved
Hide resolved
ouroboros-network-framework/test/Test/Ouroboros/Network/RawBearer.hs
Outdated
Show resolved
Hide resolved
ouroboros-network-framework/test/Test/Ouroboros/Network/RawBearer.hs
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM.
It can be merged once CI passes, we should merge it after #4571. |
78b5624
to
e9262c8
Compare
c8b8416
to
05cc47a
Compare
dad13cf
to
712308a
Compare
e9d6fb9
to
bd14316
Compare
There's a conflict in |
Just clientAddr -> do | ||
say $ "sender: binding to " ++ show clientAddr | ||
bind snocket s clientAddr | ||
say $ "sender: connecting to " ++ show serverAddr |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you provide a tracer instead of using say
or Debug.Trace.traceM
. By default the test should use nullTracer
. This will make it clean when the test passes and easy to get debug information once it fails.
@tdammers do we still need this PR? |
Lower-level send/receive API for Snockets, bypassing the normal Mux protocol. We need this for KES secure forgetting, as we cannot store secrets in intermediate data structures for serialization purposes; we must copy data directly between secure memory and file descriptors.
a5550a8
to
9810b71
Compare
Description
This provides a socket-like API for Snockets (backed by sockets / named pipes, or simulated in IOSim), reading/writing directly to/from raw memory buffers.
This will be needed to securely send KES keys over a network connection or local pipe, because we need to ensure that key data is never stored on disk, nor on the GHC heap, from where it might be swapped to disk.
For context, see also:
Checklist
changelog.d
directory created usingscriv
. If in doubt, see the Consensus release process.interface-CHANGELOG.md