From 3c4243ddcf14eec75e3044d5379246977087c452 Mon Sep 17 00:00:00 2001 From: AfonsoCMSousa Date: Thu, 27 Feb 2025 11:19:53 +0000 Subject: [PATCH] Added server requests for clients --- bin/KeyMaster_server | Bin 34232 -> 34264 bytes src/server.c | 32 ++++++++++++-------------------- 2 files changed, 12 insertions(+), 20 deletions(-) diff --git a/bin/KeyMaster_server b/bin/KeyMaster_server index 821e197dd6a76f7c62135ddc0717ba7d021d1bc2..4c8a30356856428308c8ba32951295b0bad330b3 100755 GIT binary patch delta 1649 zcmZ8hZA@EL7(TbR-O?epjEyNDrO4`pErd>)Ev1xXx#Y$V+-3+Y3mFv(GJy&$1Cw3( zX#1nyG%Fsn_ybKfF%q*xB3YayLv%(U;YZc|z{F%mF}XF1ZpLUe)B2oy3W?nGea?N} z^S;mf-g8dRb=9z`8j|V#DHkCEA!NV=z>{*#{?J@xZsy(z?j&aF6nsU~d2cC8z%xy! z;hppG*iP;wbM!0Wvamq?hBDy*RSX_slYU~Tc1$4aaYCl7h?|%u*90!tw?2( zH83{XXBM5ti%-1nt`J_OHun+X1={L<#9%Se3vSQkA4Wpr(pE&-%2{Gn2$xmU;vP1* zWVJmjCmKqy5DP^65P_MK2vC(RSslBJSxx&LPB|`Z$`NG~`QPT@T;rY> zb1ZCZVM#_&?E*dKDJyx6O{v%N3b(;fxQljqDus5ccuLJF?h-|s^4J`2aP}P*eKod$ z3Q!`d{uYm2XKkpa8TzBAy5l@TECrUz7Q&jABX_KFT*-dQwp|;-99qYMD0i3H(a~Pn z@r+>sz4t)TM+ft=g-dvEa}PReDm8VZN`_u)vP~X^J1(UoN*Zf<7}}Uw)<4OGeVF4( z%c!s_-D0IPL%=VkjG=E;`nfU*;Ur?Tcj1jocT^>f_0g8t8PG1l7s(P!^ca`z-;sTZ z%k~Szjr~b$XA!xr{~+GsTV{U+?aVF-$Bu-TTD`VOl&^&rI{gii_+Y!Pw8850UN+@K z`-b)ncwAbGC~L%$$hWh?5^>@Z4MyJ13Qy8L!noZ{Ki*L!%hf;EBi8gI!2U6l&UNiG zjB)8|M7c^Vmn&GfYU>htm*$aPsi#Be z*{tkdv&78$X&pAvw?$yz(V}Xu^I$Crr(y>^_gE}74 z@nIdybga;kHIQ>u=~%6!L&qb)R{y|Ypw}J_+Ji6C_nM;*xR2L4Pq^xwb`2N&OIIp-_1 zW9AfW9#%q&rlt{WY32js|)zQYGej8h77$0_1m@NRnY9l9do3 zIRRK02YesKY+G=2$Uk@{FftYhg-Q7-e<(B_9PK4lB1w%PC^br#rrQju5xQ^YQNOj3 zU#is*wqPSy+??0vxwVP&6M4Si;ryvQ@6P9+&GYSRzB|wDi?cI(h12&zp^hJaL{4^i e!7g6Bi`#bb8v1SIoKQiX(GFlN`uFxiHT(yST)}Ms delta 1516 zcmZ8hT})eL82-*_JKU7CK-kDwDbm%lY!aIN&>x^xQ$5i+F^-5aQ|5&~7sLjw*@azC zIn;POX)O6JkQozhG`Q@71Wk}QM8^b^YHFMbS6*yve&`lij9JZs_4&T0-pRPk z9gt2kNqACNIk*bvm(BS^3^tD2QwN0hM(aB609MKdxhsNW~+8~#`SiL8GR3Z=})ON_W%H)IUrqMt27a72^^Q!IjnvuUqS~k5lfuR z{45{CaO%ag_edp?DU z1vYXoUtFPQ-1g9o*j`rxT}-;KyCr)K#b&Z>WXjm(esCl5g1DtHp2JC5^fr=~l2>@^ zwS&NKlWXeBOUd7SMG$MqVS|F^rj;pUKWvV_2rLSpQ6cWpLz1>;i`Fk`0}9FF`IOln zWNz}8kPP2E{~(xW8^vW5^0%aL^e;qkgV$s>`x$zZ;XRx&*HvU7@w`m@MI@B?U~*`v^y2S}{s z6*IYrwJL%Z^FLY9BFpalP6V?SLdIg^)Fp-}o_96y6Bw(3>jHljxF+y-fwu(yA@H`q zKLzrAR0DSe{w?sXzzu;_fqZ~!z#-5ju!f%PrS}~PcXWk1LY*Cu&-kIjo-n6ge!U=|{Pi8hsdN{SEp}?u4oj)B2GIPN$;sN9RYa z8@#Qy-D%sYZW%vj+aB9~+_o3&{O4?Y^Vd6Q+xpDJNR9H)228Na!Exq)+yC0N+w7)o Uwx8ZMo~M1IC+XDa9e&gQ0_i)T$p8QV diff --git a/src/server.c b/src/server.c index a474265..3e455d6 100644 --- a/src/server.c +++ b/src/server.c @@ -14,6 +14,13 @@ #define SERVER_IP "192.168.1.120" #define PASSWORDS "./files/KEYS.bin" +typedef struct Request +{ + unsigned char type; + char *key; + int ID; +} Request; + int main(void) { // Connect and bind to a port (8080) on the server @@ -46,7 +53,7 @@ int main(void) printf("Server listening on %s:8080\n", SERVER_IP); struct sockaddr_in cli; - int len = sizeof(cli); + u_int32_t len = sizeof(cli); int connfd = accept(sockfd, (struct sockaddr *)&cli, &len); if (connfd < 0) @@ -61,29 +68,14 @@ int main(void) // Listen to the client requests while (1) { - char buffer[1024] = {0}; - int bytes_read = read(connfd, buffer, sizeof(buffer)); - if (bytes_read <= 0) + // Receive the request + Request req; + int n = recv(connfd, &req, sizeof(Request), 0); + if (n <= 0) { fprintf(stderr, "Client disconnected\n"); break; } - - printf("Received request: %s\n", buffer); - - // Respond with the list of passwords - FILE *file = fopen(PASSWORDS, "r"); - if (file == NULL) - { - fprintf(stderr, "Could not open password file\n"); - break; - } - - char passwords[1024] = {0}; - fread(passwords, sizeof(char), sizeof(passwords), file); - fclose(file); - - write(connfd, passwords, strlen(passwords)); } // Close the socket