From fb3c2c54c064e41694a0469bbc0ea3469684769b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bendeg=C3=BAz=20Gy=C3=B6nki?= Date: Sun, 29 Nov 2020 17:00:49 +0100 Subject: [PATCH] Updated Developer documentation (markdown) --- Developer-documentation.md | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/Developer-documentation.md b/Developer-documentation.md index 7cfed87..d71f9e5 100644 --- a/Developer-documentation.md +++ b/Developer-documentation.md @@ -15,15 +15,21 @@ Our implementation consists of the following modules: Note: each module is hosted in its own repository. # CAFF previewer -This module is responsible for extracting previews from CAFF files. +This module is responsible for extracting previews from CAFF files. The module can be built using CMake, detailed instructions are available in the module's [README file](https://github.com/UnstableVortexSecurity/caff-previewer/blob/master/README.md). + +## Error handling + +Functions that perform a complex task can fail in multiple ways. In order to be able to pinpoint the exact issue, these functions always have to return with a status code. The type of the status code is `uint8_t`. + +Successful execution is indicated by the status code `0x00`. Any outputs of the function must be returned using pointers given in the parameters. The status code is almost always used as an exit code for the program, so users can easily identify the exact issue. + +Each error type must have a status code that is unique in the whole program. The status codes are divided into two parts: + +- First 4 bits: identifies a certain module of the previewer +- Last 4 bits: identifies the exact problem # CAFF previewer wrapper This module makes communication between the previewer and the web client possible. # Web application -This module provides the web UI for the users. - -# Trying out our webshop -Since our webshop is a modern web application it has quite a few dependencies. To make trying it out easier we deployed to our own secure Kubernetes cluster. It is available at https://unstablevortex.kmlabz.com/ . - -The application connects to every dependency (Minio, Caff Previewer Wrapper, SMTP and PostgreSQL server) over TLS and the configuration environment variables are stored in Vault. \ No newline at end of file +This module provides the web UI for the users. \ No newline at end of file