Mercurial > dropbear
view libtomcrypt/testprof/base64_test.c @ 1885:5d8dbb6fdab7
Fix SSH_PUBKEYINFO, limit characters, add tests
We fix a bad_bufptr() failure from a previous commit. We now limit
the allowed characters to those that will definitely be safe
in a shell. Some scripts/programs may use arbitrary environment
variables without escaping correctly - that could be a problem
in a restricted environment.
The current allowed set is a-z A-Z 0-9 .,_-+@
This also adds a test for SSH_PUBKEYINFO, by default it only runs
under github actions (or "act -j build").
author | Matt Johnston <matt@ucc.asn.au> |
---|---|
date | Wed, 16 Mar 2022 17:17:23 +0800 |
parents | f849a5ca2efc |
children |
line wrap: on
line source
#include <tomcrypt_test.h> int base64_test(void) { unsigned char in[64], out[256], tmp[64]; unsigned long x, l1, l2; for (x = 0; x < 64; x++) { yarrow_read(in, x, &yarrow_prng); l1 = sizeof(out); DO(base64_encode(in, x, out, &l1)); l2 = sizeof(tmp); DO(base64_decode(out, l1, tmp, &l2)); if (l2 != x || memcmp(tmp, in, x)) { fprintf(stderr, "base64 failed %lu %lu %lu", x, l1, l2); return 1; } } return 0; } /* $Source$ */ /* $Revision$ */ /* $Date$ */