[Spice-devel] [PATCH spice-server v6 00/10] SASL code improvements
Frediano Ziglio
fziglio at redhat.com
Tue Jan 9 07:44:55 UTC 2018
SASL authentication code were a bit dodgy to see.
The series have 2 parts:
- a test for SASL code;
- some code refactory.
Test is not that straightforward, maybe some code should be put in
different files. On the other end I don't think the code that is
mocking SASL will be reused in other tests.
The refactory is mainly put all the authentication logic in one file
(red-stream.c) instead of having half in reds.c and the other half in
red-stream.c. This allows to present a single function instead of one
for each authentication step.
Changes since v5:
- make the client emulator more robust making possible to run on
Valgrind which causes some timing and syscall difference
(disconnection is detected earlier causing a write after server
close the connection to fail).
Changes since v4:
- test cases where SASL APIs reply too large packets;
- test the way a failure is reported from server.
Changes since v3:
- tested with a MIPS machine (quite hard to do, I should write how to
do it!);
- change way to iterate tests;
- lot of comments;
- some style changes;
- fixed a regression for big endian machines.
Changes since v2:
- removed patch to keep mechlist without copy, not documented really
fine, safer to copy it.
Changes since v1:
- rebase on master;
- merged some patches;
- improved and fixed some comments;
- minor styles.
Frediano Ziglio (10):
test-sasl: Initial SASL test
test-sasl: Add code to mocking functions to test state
test-sasl: Base test, connect using SASL
test-sasl: Add tests for different mechanism names
test-sasl: Add tests for different failures and cases
test-sasl: Test how to server reports the failure
Handle SASL initialisation mainly in red-stream.c
red-stream: Handle properly endianness in SASL code
red-stream: Unify start and step passes
red-stream: Encapsulate all authentication state in RedSASLAuth
configure.ac | 1 +
server/red-stream.c | 330 ++++++++++-------------
server/red-stream.h | 11 +-
server/reds.c | 119 +--------
server/tests/.gitignore | 1 +
server/tests/Makefile.am | 4 +
server/tests/test-sasl.c | 665 +++++++++++++++++++++++++++++++++++++++++++++++
7 files changed, 825 insertions(+), 306 deletions(-)
create mode 100644 server/tests/test-sasl.c
--
2.14.3
More information about the Spice-devel
mailing list