1
1
Граф коммитов

71 Коммитов

Автор SHA1 Сообщение Дата
Jon Simons
9dc932c02b tests: introduce pkd_hello
Introduce a sample public-key testing daemon to the 'pkd' test directory,
and add support code for cycling through various combinations of different
key exchange, cipher, and MAC algorithms.

The goal of the 'pkd_hello' test is to make it easy to test interactions
between non-libssh clients and a libssh-server, and to provide a starting
point for testing new implementations for key types, ciphers, MACs, and
so on.  The thinking is that testing a new algorithm should be as simple
as adding a new line for it in the PKDTESTS_* lists.

Macros are used to generate the tests and helper functions for a couple of
clients -- here, OpenSSH and dropbear are included for the first cut.  If
binaries are found for these clients, their test lists will be enabled;
when binaries are not found for a given client, those tests are skipped.

Tests are run in one large batch by default, but can also be run individually
to help with tracking down things like signature bugs that may take many
iterations to reproduce.

Each test logs its stdout and stderr to its own file, which is cleaned up
when a test succeeds.  For failures, those logs can be combined with verbose
libssh output from pkd itself to start debugging things.

Some example usages:

  pkd_hello
    Run all tests with default number of iterations.

  pkd_hello --list
    List available individual test names.

  pkd_hello -i 1000 -t torture_pkd_openssh_ecdsa_256_ecdh_sha2_nistp256
    Run only the torture_pkd_openssh_ecdsa_256_ecdh_sha2_nistp256
    testcase 1000 times.

  pkd_hello -v -v -v -v -e -o
    Run all tests with maximum libssh and pkd logging.

Included in the tests are passes for all existing kex, cipher, and MAC
algorithms.

BUG: https://red.libssh.org/issues/144

Signed-off-by: Jon Simons <jon@jonsimons.org>
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2014-10-12 15:01:02 +02:00
Aris Adamantiadis
3bdc2b1d4f build: fix cmake bug introduced yesterday
Compilation failed on OSX because of the missing OR OSX
2014-02-02 20:56:21 +01:00
Aris Adamantiadis
f0d6ce8958 tests: fix compilation on OSX (libargp detection) 2014-02-01 14:49:57 +01:00
Andreas Schneider
c81010e2f7 test: Use cmocka instead of cmockery.
cmocka is the successor of cmockery.

http://git.cryptomilk.org/projects/cmocka.git/
2012-10-07 11:10:27 +02:00
Andreas Schneider
b7507fc85e cmake: Update FindCMokery. 2012-02-08 20:10:45 +01:00
Andreas Schneider
f421c05913 cmake: Check for argp library only on bsd and solaris. 2011-08-13 11:07:57 +02:00
Aris Adamantiadis
2917e71aad Replaced argp support for platforms that support it
Argp is really useful, but it's not mandatory.
2011-01-13 18:34:04 +01:00
Andreas Schneider
78abf5a88d cmake: Added include and library deps to torture. 2010-12-29 20:17:36 +01:00
Andreas Schneider
ad231ccd30 cmake: Fixed test includes and libraries. 2010-12-29 20:11:00 +01:00
Andreas Schneider
d2bf90c982 build: Fixed include directories for torture lib. 2010-12-29 19:49:07 +01:00
Andreas Schneider
17f592d4dd tests: Start to migrate tests to cmockery.
https://code.google.com/p/cmockery/wiki/Cmockery_Unit_Testing_Framework
2010-12-28 22:14:47 +01:00
Aris Adamantiadis
4fe1656cf8 Moved benchmarks to the tests/ directory 2010-12-28 13:17:27 +01:00
Andreas Schneider
72b62d3064 build: Fixed the unit test build. 2010-09-29 11:26:16 +02:00
Andreas Schneider
697d51cd93 build: Make sure to link against all required thread libraries. 2010-09-08 16:32:54 +02:00
Andreas Schneider
03087e020c build: Improve the check for argp. 2010-09-08 11:41:14 +02:00
Andreas Schneider
fbe102bada threads: Build a libssh threading library. 2010-09-06 15:17:03 +02:00
Andreas Schneider
2f8f230f61 build: Added support to find argp on BSD. 2010-09-03 15:38:12 +02:00
Andreas Schneider
5dd4f7604f tests: Move client tests to a seperate directory.
Tests which require a running sshd should go to tests/client.
2010-06-03 12:36:00 +02:00
Andreas Schneider
9cd5e97596 Fixed linking of the tests. 2010-03-04 20:08:04 +01:00
Andreas Schneider
8bcb835aa4 Fixed unit testing. 2010-03-02 23:49:21 +01:00
Andreas Schneider
464176d511 Added unit testing support using check. 2010-03-02 13:54:14 +01:00