Mercurial > trustbridge
diff ui/listutil.h @ 4:9849250f50f2
Start implementation of certificatelist parser
author | Andre Heinecke <aheinecke@intevation.de> |
---|---|
date | Tue, 11 Feb 2014 16:46:02 +0000 |
parents | |
children | 992c0ec57660 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ui/listutil.h Tue Feb 11 16:46:02 2014 +0000 @@ -0,0 +1,39 @@ + +#include <stddef.h> + +/** + * @file listutil.h + * @brief Functions to work with the certificate list. + * + * This file definies the function + */ + +/* Status of the List Operations */ +typedef enum { + Unknown = 0, // Not yet parsed + UnknownError = 1, // The expected unexpected + TooLarge = 2, // Failed because the file exeeds the limit + InvalidFormat = 3, // File does not appear to be in list format + InvalidSignature = 4, // Signature was invalid + StatFailed = 5, // Could not stat the file + ReadFailed = 6, // Could not read the file + IncompatibleVersion = 7, // The Format Version does not match + Valid = 8 // List is valid +} list_status_t; + +/** + * @brief Obtain the complete and verified Certificate list. + * + * This checks if the file fileName is a valid certificate + * list signed by the key specified in pubkey.h + * + * The caller has to free data. + * + * @param[in] fileName Name of the file (UTF-8 encoded). + * @param[out] data Newly allocated pointer to the file content. + * @param[out] size Size in Bytes of the file content. + * + * @return status of the operation. + */ +list_status_t readAndVerifyList(char* fileName, void *data, size_t *size); +