From df8755670187dc804d8c3808054791f66b185068 Mon Sep 17 00:00:00 2001 From: netbenixcn Date: Wed, 3 Jun 2020 21:14:42 +0200 Subject: [PATCH] Added the first commands --- .gitignore | 2 +- colors.o | Bin 0 -> 3680 bytes main.c | 66 ++++++++++++++++++++++++++++----- makefile | 8 ++-- {commands => utils}/gtk_test.c | 2 +- {commands => utils}/gtk_test.h | 0 {commands => utils}/sql_test.c | 2 +- {commands => utils}/sql_test.h | 0 8 files changed, 64 insertions(+), 16 deletions(-) create mode 100644 colors.o rename {commands => utils}/gtk_test.c (98%) rename {commands => utils}/gtk_test.h (100%) rename {commands => utils}/sql_test.c (97%) rename {commands => utils}/sql_test.h (100%) diff --git a/.gitignore b/.gitignore index d8a4e5a..c006b9c 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,6 @@ .vscode glade/test_window.glade~ +netbenixCMD output.log main.o logger.o @@ -8,4 +9,3 @@ logo.o sql_test.o gtk_test.o sys_info.o -netbenixCMD \ No newline at end of file diff --git a/colors.o b/colors.o new file mode 100644 index 0000000000000000000000000000000000000000..cfcc332978671005b0ade3322805213ced3b8617 GIT binary patch literal 3680 zcmeH}O-vI}5XWBu`B2cJ9wd-hFDi*{TJc*nr41C4DzQKe5z;PY0b@U~U1KpMaM6T= z2{%1(z#BKOn0O%Z;Ms$T2aR4#;D#qJBsjA>W6SI=P4wy{-Ffqy|9kuPy|=Sn=#BT) z_jKHHN&b!HLH>Sr62t-ZX#L7%O+ly$KU_w`>#X${a{wXTOQ&|6k8tR%M^oGv1s&q;B4&9NM|4v)IwTN9mo9v^F2){ zU&-%lZ*FK@h7IokhCj3ucLn1FiGm2RwL#2geiR zv|3f~fCqsbt(d2^_P{#e=Xa=;y5PaD0mpH;Kl=gVK^lwsIPreL^TbnvKOdNiKTCurmRKU=iSw}@{GjwKuQjg@BxwZsF0t8_k-FBG-3DjMdnQOHIy zP8blWWGp@y>4_%?`}&4@hm*rSk$7)X%@!Wy%qbzC+!IIgnaPB)m&FQ(k#ne=bkxXX z@=qK>H=KEFICK#SZ|l=W&eR=3Hy)kSol~@+;uBp1Yl)|RXVet6ncKn*B*L&572mhLUyR$ zl9%iGfjH~&y+-?JJF7xfuKzdUtmk#y^3eYh`T>ghFOZzi5uYvK@$ZtpjkwgG5qjRI zkcU1%oa@@6;9S>M1rJcHwBlUW)F;531>4VXt6*ew%`{4;(k68%3ED)lsI)@f4$}E- z7Al3(a(UCx;J?xNqN%4Jf&jZ2Gs&rfo;Bz({@Dd!1e~(`@`Zt+UFGMoLrY6d%eBK5 z&sf-s$`?Nss##okF#L|

mRX@p(B7ZRGNcUlRAlK4=o31BPS%ZGU{`t!XK&~V$o#U@+9 z`;YsFeYrpH9}X|?jXl?BL&B8AnutTn{>bFs0aBazaRcLeWk=4nYK4Sb|8<-&m~Oj2 ISFs%GH_!~jg8%>k literal 0 HcmV?d00001 diff --git a/main.c b/main.c index 07826c9..1f204c6 100644 --- a/main.c +++ b/main.c @@ -7,8 +7,8 @@ #include #include "commands/help.h" -#include "commands/gtk_test.h" -#include "commands/sql_test.h" +#include "utils/gtk_test.h" +#include "utils/sql_test.h" #include "etc/logo.h" #include "utils/logger.h" #include "utils/sys_info.h" @@ -22,6 +22,42 @@ void exit_app(){ exit(0); } +// Color Codes: +// Reset: \033[0m +// Red: \033[0;31m +// Green: \033[0;32m +// Yellow: \033[0;33m +// Blue: \033[0;34m +// Magenta: \033[0;35m +// Cyan: \033[0;36m +// BoldRed: \033[1;31m +// BoldGreen: \033[1;32m +// BoldYellow: \033[1;33m +// BoldBlue: \033[1;34m +// BoldMagenta: \033[1;35m +// BoldCyan: \033[1;36m + + +int commandHandler(char* cmd){ + if(!strcmp(cmd, "list")){ + printf("\033[0;34mlist\033[0m : this list\n"); + printf("\033[0;34mversion\033[0m : shows the version\n"); + printf("\033[0;34mexit\033[0m : exit the program\n"); + return 0; + } else if(!strcmp(cmd, "version")){ + printf("netbenixCMD (Version: \033[1;34m%s\033[0m)\n", VERSION); + printf("Author: \033[1;34m%s\033[0m\n", AUTHOR); + logger("Showing program version."); + return 0; + } else if(!strcmp(cmd, "exit")){ + return 1; + }else { + printf("Unknown command.\n"); + logger("User entered unknown command."); + return 0; + } +} + int main(int argc, char *argv[]){ char buffer[1024]; @@ -29,16 +65,16 @@ int main(int argc, char *argv[]){ snprintf(buffer, sizeof(buffer), "Starting netbenixCMD (Version: %s)", VERSION); logger(buffer); log_Specs(); - if(argc < 2){ - printf("Not enough Arguments. Please use --help for more information.\n"); - snprintf(buffer, sizeof(buffer), "[ERROR] Not enough Arguments. Total Arguments: %d", argc -1); - logger(buffer); - exit_app(); - } - showLogo(); //Show the Logo logger("Logo Displayed."); + if(argc > 2){ + printf("Too many arguments. Please use --help for more information.\n"); + snprintf(buffer, sizeof(buffer), "[ERROR] Too many arguments. Argument count: %i", argc-1); + logger(buffer); + } + + if(argc == 2){ if(!strcmp(argv[1], "--help")){ logger("Showing Help."); outputHelp(); @@ -56,6 +92,18 @@ int main(int argc, char *argv[]){ snprintf(buffer, sizeof(buffer), "[ERROR] Argument unknown. Given argument: %s", argv[1]); logger(buffer); } + } + + if(argc == 1){ + int exit = 0; + char cmd[128]; + logger("Starting Command Handler."); + while (!exit){ + printf("\033[0;32mnCMD> \033[0m"); + scanf("%s", &cmd); + exit = commandHandler(cmd); + } + } printf("\n"); exit_app(); diff --git a/makefile b/makefile index 0abc62b..713b875 100644 --- a/makefile +++ b/makefile @@ -16,7 +16,7 @@ help.o: commands/help.c $(CC) $(CFLAGS) -c commands/help.c sys_info.o: utils/sys_info.c $(CC) $(CFLAGS) $(ARGS) -c utils/sys_info.c -gtk_test.o: commands/gtk_test.c - $(CC) $(CFLAGS) -c commands/gtk_test.c -sql_test.o: commands/sql_test.c - $(CC) $(CFLAGS) -c commands/sql_test.c \ No newline at end of file +gtk_test.o: utils/gtk_test.c + $(CC) $(CFLAGS) -c utils/gtk_test.c +sql_test.o: utils/sql_test.c + $(CC) $(CFLAGS) -c utils/sql_test.c diff --git a/commands/gtk_test.c b/utils/gtk_test.c similarity index 98% rename from commands/gtk_test.c rename to utils/gtk_test.c index bf2d81d..a1db4af 100644 --- a/commands/gtk_test.c +++ b/utils/gtk_test.c @@ -1,7 +1,7 @@ #include #include "gtk_test.h" -#include "../utils/logger.h" +#include "logger.h" GtkWidget *window; GtkWidget *fixed1; diff --git a/commands/gtk_test.h b/utils/gtk_test.h similarity index 100% rename from commands/gtk_test.h rename to utils/gtk_test.h diff --git a/commands/sql_test.c b/utils/sql_test.c similarity index 97% rename from commands/sql_test.c rename to utils/sql_test.c index a71728f..2da8312 100644 --- a/commands/sql_test.c +++ b/utils/sql_test.c @@ -4,7 +4,7 @@ #include #include "sql_test.h" -#include "../utils/logger.h" +#include "logger.h" void testSQLConnection(){ diff --git a/commands/sql_test.h b/utils/sql_test.h similarity index 100% rename from commands/sql_test.h rename to utils/sql_test.h