diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/error.c | 27 | ||||
| -rw-r--r-- | src/main.c | 29 | ||||
| -rw-r--r-- | src/md5/main_md5.c | 18 | ||||
| -rw-r--r-- | src/sha256/main_sha256.c | 18 |
4 files changed, 89 insertions, 3 deletions
diff --git a/src/error.c b/src/error.c new file mode 100644 index 0000000..1492bde --- /dev/null +++ b/src/error.c @@ -0,0 +1,27 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* error.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: cacharle <marvin@42.fr> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2020/02/22 07:02:59 by cacharle #+# #+# */ +/* Updated: 2020/02/22 07:13:57 by cacharle ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "ft_ssl.h" + +void fl_error_command(char *command) +{ + ft_putstr_fd("ft_ssl: Error: '", STDERR_FILENO); + ft_putstr_fd(command, STDERR_FILENO); + ft_putendl_fd("' is an invalid command.", STDERR_FILENO); + ft_putstr_fd("\nStandard commands:\n" + "\nMessage Digest commands:\n" + "md5\n" + "sha256\n" + "\nCipher commands:\n", + STDERR_FILENO + ); +} @@ -6,14 +6,37 @@ /* By: cacharle <marvin@42.fr> +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2020/02/03 20:29:33 by cacharle #+# #+# */ -/* Updated: 2020/02/03 20:30:03 by cacharle ### ########.fr */ +/* Updated: 2020/02/22 07:22:09 by cacharle ### ########.fr */ /* */ /* ************************************************************************** */ #include "ft_ssl.h" +static t_command g_commands[] = { + {"md5", main_md5}, + {"sha256", main_sha256} +}; + +int fl_dispatch_command(char *command, int argc, char **argv) +{ + unsigned long i; + + i = -1; + while (++i < sizeof(g_commands) / sizeof(t_command)) + if (ft_strcmp(g_commands[i].name, command) == 0) + return (g_commands[i].entry(argc, argv)); + fl_error_command(command); + return (1); +} + int main(int argc, char **argv) { - ft_putendl("hello\n"); - return (0); + if (argc == 1) + { + ft_putstr("usage: "); + ft_putstr(argv[0]); + ft_putendl_fd(" command [command opts] [command args]", STDERR_FILENO); + return (1); + } + return (fl_dispatch_command(argv[1], argc - 2, argv + 2)); } diff --git a/src/md5/main_md5.c b/src/md5/main_md5.c new file mode 100644 index 0000000..703f8ef --- /dev/null +++ b/src/md5/main_md5.c @@ -0,0 +1,18 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* main_md5.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: cacharle <marvin@42.fr> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2020/02/22 07:20:07 by cacharle #+# #+# */ +/* Updated: 2020/02/22 07:20:15 by cacharle ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "ft_ssl_md5.h" + +int main_md5(int argc, char **argv) +{ + return (0); +} diff --git a/src/sha256/main_sha256.c b/src/sha256/main_sha256.c new file mode 100644 index 0000000..e2b0955 --- /dev/null +++ b/src/sha256/main_sha256.c @@ -0,0 +1,18 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* main_sha256.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: cacharle <marvin@42.fr> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2020/02/22 07:19:18 by cacharle #+# #+# */ +/* Updated: 2020/02/22 07:19:47 by cacharle ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "ft_ssl_sha256.h" + +int main_sha256(int argc, char **argv) +{ + return (0); +} |
