Move base64 test code into a new tests subdirectory
This commit is contained in:
parent
a486c0c72a
commit
1801bd7fae
4 changed files with 76 additions and 35 deletions
|
@ -152,38 +152,3 @@ unsigned char * base64_decode(const unsigned char *src, size_t len,
|
|||
*out_len = pos - out;
|
||||
return out;
|
||||
}
|
||||
|
||||
|
||||
#ifdef TEST_MAIN
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
FILE *f;
|
||||
size_t len, elen;
|
||||
unsigned char *buf, *e;
|
||||
|
||||
if (argc != 4) {
|
||||
printf("Usage: base64 <encode|decode> <in file> <out file>\n");
|
||||
return -1;
|
||||
}
|
||||
|
||||
buf = os_readfile(argv[2], &len);
|
||||
if (buf == NULL)
|
||||
return -1;
|
||||
|
||||
if (strcmp(argv[1], "encode") == 0)
|
||||
e = base64_encode(buf, len, &elen);
|
||||
else
|
||||
e = base64_decode(buf, len, &elen);
|
||||
if (e == NULL)
|
||||
return -2;
|
||||
f = fopen(argv[3], "w");
|
||||
if (f == NULL)
|
||||
return -3;
|
||||
fwrite(e, 1, elen, f);
|
||||
fclose(f);
|
||||
free(e);
|
||||
|
||||
return 0;
|
||||
}
|
||||
#endif /* TEST_MAIN */
|
||||
|
|
1
tests/.gitignore
vendored
Normal file
1
tests/.gitignore
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
test-base64
|
27
tests/Makefile
Normal file
27
tests/Makefile
Normal file
|
@ -0,0 +1,27 @@
|
|||
TESTS=test-base64
|
||||
|
||||
all: $(TESTS)
|
||||
|
||||
ifndef CC
|
||||
CC=gcc
|
||||
endif
|
||||
|
||||
ifndef LDO
|
||||
LDO=$(CC)
|
||||
endif
|
||||
|
||||
ifndef CFLAGS
|
||||
CFLAGS = -MMD -O2 -Wall -g
|
||||
endif
|
||||
|
||||
CFLAGS += -I../src
|
||||
|
||||
|
||||
BASE64_OBJS=test-base64.o ../src/utils/base64.o ../src/utils/os_unix.o
|
||||
|
||||
test-base64: $(BASE64_OBJS)
|
||||
$(LDO) $(LDFLAGS) -o $@ $(BASE64_OBJS)
|
||||
|
||||
clean:
|
||||
$(MAKE) -C ../src clean
|
||||
rm -f $(TESTS) *~ *.o
|
48
tests/test-base64.c
Normal file
48
tests/test-base64.c
Normal file
|
@ -0,0 +1,48 @@
|
|||
/*
|
||||
* Base64 encoding/decoding (RFC1341) - test program
|
||||
* Copyright (c) 2005, Jouni Malinen <j@w1.fi>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* Alternatively, this software may be distributed under the terms of BSD
|
||||
* license.
|
||||
*
|
||||
* See README and COPYING for more details.
|
||||
*/
|
||||
|
||||
#include "utils/includes.h"
|
||||
#include "utils/os.h"
|
||||
#include "utils/base64.h"
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
FILE *f;
|
||||
size_t len, elen;
|
||||
unsigned char *buf, *e;
|
||||
|
||||
if (argc != 4) {
|
||||
printf("Usage: base64 <encode|decode> <in file> <out file>\n");
|
||||
return -1;
|
||||
}
|
||||
|
||||
buf = (unsigned char *) os_readfile(argv[2], &len);
|
||||
if (buf == NULL)
|
||||
return -1;
|
||||
|
||||
if (strcmp(argv[1], "encode") == 0)
|
||||
e = base64_encode(buf, len, &elen);
|
||||
else
|
||||
e = base64_decode(buf, len, &elen);
|
||||
if (e == NULL)
|
||||
return -2;
|
||||
f = fopen(argv[3], "w");
|
||||
if (f == NULL)
|
||||
return -3;
|
||||
fwrite(e, 1, elen, f);
|
||||
fclose(f);
|
||||
free(e);
|
||||
|
||||
return 0;
|
||||
}
|
Loading…
Reference in a new issue