From c0b816ed5d6fbc533030ca3291c7680d894d42d1 Mon Sep 17 00:00:00 2001 From: Ugo Cirmignani Date: Mon, 26 Nov 2018 20:59:54 +0100 Subject: [PATCH] Added debug options in makefile --- MakeFileGeneric | 5 ++++- build/Debug/GNU-Linux/ftpCommandElaborate.o | Bin 56976 -> 57192 bytes build/Debug/GNU-Linux/ftpServer.o | Bin 48032 -> 49456 bytes build/modules/configRead.o | Bin 15200 -> 15280 bytes build/modules/ftpCommandElaborate.o | Bin 29488 -> 29712 bytes build/modules/ftpServer.o | Bin 29712 -> 31144 bytes build/uFTP | Bin 92600 -> 92600 bytes dist/Debug/GNU-Linux/uftp | Bin 160568 -> 160560 bytes ftpCommandElaborate.c | 6 +++++- ftpServer.c | 21 +++++++++++++++++++- library/configRead.c | 4 ++++ 11 files changed, 33 insertions(+), 3 deletions(-) diff --git a/MakeFileGeneric b/MakeFileGeneric index c2f3944..19044e1 100644 --- a/MakeFileGeneric +++ b/MakeFileGeneric @@ -3,6 +3,9 @@ CC=gcc OUTPATH=./build/ SOURCE_MODULES_PATH=./library/ + +#FOR DEBUG PURPOSE +#CFLAGS=-c -Wall -I. -g -O0 CFLAGS=-c -Wall -I. OPTIMIZATION=-O3 HEADERS=-I @@ -61,4 +64,4 @@ ftpServer.o: clean: @rm -rf $(LIBPATH)*.o $(OUTPATH)uFTP - @echo "Clean ok" \ No newline at end of file + @echo "Clean ok" diff --git a/build/Debug/GNU-Linux/ftpCommandElaborate.o b/build/Debug/GNU-Linux/ftpCommandElaborate.o index faccffc64e6ddc0134a6cf9cab5df687b78c9b2e..bd9195e23a2ea1f40ce6e959f57211cc222beae9 100644 GIT binary patch delta 8796 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 diff --git a/build/modules/configRead.o b/build/modules/configRead.o index b91b5204437c13562d5dbf8943c8800e293597fc..ce2895a3da511c11a76bbff0849e454dd9942cb0 100644 GIT binary patch delta 2211 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 diff --git a/build/modules/ftpServer.o b/build/modules/ftpServer.o index 9b9cb7ac2a618aa1256102916a430214556d9c0c..fd05f0f5a6509a6f9ad98050af2aadb76781fb03 100644 GIT binary patch literal 31144 zcmc&-4SZA8-9Bmg48;~@iWA30zyWIIs{(!ip-s7!mewQ%WX>9r+cuIWS#raN8>3R9 zWO*yyCL7LuIQ?yYjH%nZq4-WIIIXg=A#Uh9opamkMpu5mI6qdkn)mm=_nh|0O-|@4 z@SdNh$#b9coag+{|DJpAxi?{pv%0dtW@Dn**djLYX`nQ(A9%mSc)Ns+WksxBO}?SF z9aq%k=3{Egc`U_}&OSBuDWasDed;bX(79_SW2)_NsBtH zR%@x&cS@+Gu|!SnG=kteq6Ur_!`(h{9FJzQjfOLiBih{7n~tB`_G5BmYkQLZu;Lvp z>2$is)-i~xi=>>c*4CLkCT6D|@9){Z{&&*asn(Klj3qjY6OR?}CCVN7F;fcx~%V>(iwn>@r4~_M7g*wmhN!q`A~5cD7>JhUG|_Gm|g_gSzin;mPMRzMtPw zGA2&~sKaN?pyPpg^y;}*8dlgebqo)|`l5p$0hCXKpl^VLnYE-5i)wL7lLM^jU+3-TX3EG?_awq6RDY!Xyc zt;Tkmsax|N|4yEf#XE{e=V|H_P68)y|Flh^YWwyH`H#djVLrh|QHuYDC%KyE$do*o z>=>V4kv1nfi?9jP0i85g)2U9r5zDI*FX~EoxI)j;p*e}$O^y5~`~Q!VP3lpaOyr$QwXQBL`CkM(({9qDJ`8dP9CD-9mDgT`=7FOzIVv!T%2g6x?PEg$jh$8M)6iQ@#OBg zx=T$Ob=9^f4T;ltG)iqh$sxUCx^c*tOj#nqj4Rcw8Ld}MwW>7ZiTO8a1VCn=8U;>5OmyZ9jESG?m;K9x_HJvp;CdkpKO{T@{N9X%x-J!3n1>>WKLJ9>uE zac>_@JjTJ3F94N@GdAm0wz-Ia3krjHpEMU!tXf#ryku?bv}JIO))JlZ2}s5FU4}B1 z?!<_J3Ce5_)>2Z&x_Ufg2hAD^}zZhL+4jKju>PIABc z;$PI{VRiBe;}m%-q-3u8ne7k1hv=u&!L|?J@*vBB+OC%5>z@1+HA^aaFj-fWT2hqg zjIS`aW{!p&>%VX{QYt&i@)#^ibZ%N9-9E6(8Oo^vN3gB}nbrLpIQ(RF(CAz79S_lB zp7R9dNSE^+^N;bV`|`ZCTgQ)L?3(mQ#)@|=h69kbodYT733XTTo{EB!tH%~^`(~a5 zLaJSlNaE0bwJd|%<+*(zwUzv~tG47<=uN8rgz7s|yvK81iMnh1og*gDr3*jcFjIU+{ZRek=7eX z4=F`$>nu_G^LQX@x)<9RYuo&eEk18xZFAuIEh{3bZ@-${+A)){?%`(5g5t!7d4?9v zS?A{N1Nke`c;yY4I-G{j*tatl%cWt+ee_E@d)qemvMqy(u(cCCGuoUdYSVMk$@fDZ4*CwhnVB`j1_hLJJQR?`V2Io$kKm{dBscd)oWyw7A8R+fXIlE!4Xrf8_i{)#PzV!X)$UJw`7@V zn=;gje}^>uw_1F7XchHMl3?*OPrMzLF;ZPwyF})8+5Ygju~7Z_u>(_G&U(268=s$* z^Cz|6eNWNQ+M1cw7N(_nTy^$!JBBDfl&<_9mUmBg*a9bOtB^7-Yl(G8{rbp0v>_Tw z48M8?+nRQ=wnm(~8198--<-K|3frnVgKhm8&WcWVzv3rrOEN7Da;iA@^vXXra%g+e zAlXX2ANEwhbW)JDLs@WIS+@+5UGvN2%b43!>tY+$GRDfv<|_3e@7kcI=wW3; zG@xrnj~W9(O;-O3#@Ot#S&D7^D8Z0-Pf$e6g{kagEG0uau1ED5q3v-ODpz*)rvdTbEQ(|$SPm9GG)bJTlOW+$-U zuFF~OtXk=;V0NNq!|p1NliBGtdz+o~vf;W_q_(OedyD&eN?>};-d5>!c$l4Dv$uJ! zuX8F@%x?b8-tP9e>Xk}XQ(NIw+{|wN&88XE9bCqdy}i!iUTMT(WsYsNE)TQQYxXuf z?VZ_hImMwoR~*VK>g$-DUbAbtoD?H^&E96G-8KhI^H(-pv%G@YYnE4tJnc^s=2%+m zVs?7X-d5qPb}~D?W^b#l^SGIvUbDB=cq(d`onEuI*=gp=0UP1ud(nV9JLPIN?5e3? zc2`Y~?zmP|x|p3_bJSYlsike6+U#xasx?M#ugTF>M_rwh+37XA-iq4VI%cQW>}_mW zdHI#f^!l~&kRDg&m(DGnb=jQxapU9cFV9|3I&0nx6E=4A@#gN%Y`3_WZDWb;f})Y5 zI&6$hWaj@=UZNMrStYj>l#d-zaHMGDD8?o*#;)ddXO4sIYFi;~Tg|tv9SPgGrp~u* zEQW1`v0_75QfM)C7<Xu1ix2;@0H*$O7K71%>1;S zZH~GzFEGa5l<*4+a*x-iB=~d*K2L%>B)BTU-4Z+^!IKhvrv(3*1bpn*`6JM3FmS~jO_0gGySJQ^ww`!)K!P;mHl6;-eB>Rz@X z99^eH%Y&LX6pyfmW!1Gy9n}rBm6dL%r@`Y`TJ3CLvF5n$4{r#us20=oRYnb?^1xbz z398V|k|Lm=dD2x%L2K%-hyAf{{42A?cUZ-`J$Rv*Z2Yp^-j~7P}DXCbmosl10lVUnTsKu@9^n?^@1Lc1vM?w zU#lgqYa1JaVc)ub$QKUz8#Z_Y1JWib9x`aYa7)A+)!aHQ_LO^LT2&~fg<=6}gEi6` z0;3+XMq^opHPXee#wx3-oelnQd2@I}s4^OEsSo&<1^mq5R0m=@MX)N=81{sDw~Q?= zO^?#L0*l5&m12llEYKA42F>tBt3ol|8w^tP8v{-8sFxOlTx7r-i3B&5Bg_J!fL_VR z+KeS{t-eLlk zein)AG1kza(ZU4{ozZ0$F%}z`9%#{6i`EjO)SzS_&u-n@5@9~d>xxYwZ%e>u4j*~; zY>H?s6xOT5O--7=DpaGzV%{c=MZD3N#&?kVm=?_dC|0}^K@}&pbjQnZ|zD|OFMS?#l!Jm`h zbe<{VMsX19J|A$L;_zwc?|1@oLixT`Uj+0$lixYYHLka(R z34R=KdK)#n!`|aK>0^Jzk`v+B-;sPN%G%#4fRkjB>tD`s(!soP0w2e{8F13MkLyH1 z2Yr4CaP-**I;j63@GpdTJ}TkAB*Fg$I`n%SVqC=1o;5xSKVDh!a*k7cCV|ei5`K#W zZwDP(R}+5jl<r4qB>2w(C;eaYyxI@?n4hlzAN4;5oOJ%mbw-Ug-;htt&$9u?{5+rI z*7%eGPWr}|7HD}KbkOH2;G@r504E)K9D&L<&_SPf0FFL)f)48cT!Oy}I#Xc0{wCp% zw41)HaVVAG^%6WT!M`EFJ2_6{H5Ggw1RUpwqY|BhF}eLu;W+6}1O1s2{t5{mmEd2M z;Ezi17dcLTE(Sk;knrCFobrd(uc;JJ67b_A=HWz+TgP!R;G{$A-BhYT2lLPkIOgFR z(4n{Dd~&M<{~_Si?hU-%hdEAhzp9MsrW!wjV4nY@ zpG!Gz^-}?S^wSJD`iV$%ZUa8*+zUAAh~zcrC{%Zl8sG)+GGxfRoQgK8{}l9rXEaz|rS}po4LE25{2f%=KRY9gJrW z@KNV1x+sM_q5CvcCUBhki#{&`9DU9J9n`;0g2w?T|GRm+n?WDXzugK=vEob>5?nN)Uw z4vz1Gz(<{515P?ixz170L7%S!jy^w<;6?oYqR5{$T>l&k9_09i9Jl7xMS#zQ@tpxW z)UT=h{J0eOmjJ&^!oL#umjd5m;fuVg1pZ~fuaWRwz^6yfgwARUe;9R~G1dS$jmr)m zp8)9KxI}HaoxbQz6aP)Z@$4Q%h2}JO(w(!OI)l$GQK3@Rbh^J|jeaVXR{cbDZsPhZJ z4IR!u066mB1{~Y{*ouqmVZMMS;wk#O2ykq-0&r~ibATh?3pnz(aGWr_&PoCwb#?%b zIzN`+djKaL(XapFIBC%H#sc3DeAGV(IO_ZsbmoK3?=5^WKfG$eMZ13moduxNZQ+ag zW z<2-!5g-_3aP`MHKSAqV`z(=1Ez|rRefFu85z>$9haOA%XIPyON9QlQGQz1v3rvi@r znSi7IBEXSf0XXtk1CIO~0Z0CwfFu7~fFpk&;K+XlaOD44f)~=w5*{Da84WnJ6SJmvEf8c>Z=3@KN6ZIO^XBIP(2~Bmc{Qlb=5BXFJD%BGRKdl=yM#$sXM5D9^j}y4{+pP2{`g^QE8v(9?VykO@Ezcz{(XR>ekb6hFYbFC1buod{J#Wz)c+&ksGkNMT(28J z7YRA`iz2{LrsCE(K&;We&-wHVC&~tlK zwo7z&0Uvet0!}*L;X3;zIxhepb^ZxB>DEfeyxVi-rFO&QAg#eRcpJ z<9R>u%faU!3I8R)F>n6_I_R^8oWvk&;_^BkJ2`Eiq;9T0K8h~w7dW;x*G zQ=HE)2Oade%EB+A#Gv(i;G@rG;G@qiz;}YrJ0$!^04JaHJT8^TKnHz3ZQ*~G^A7Op1o-H474VmV&qfLV zcEBl~Yk0dmKnH!^ZQ*-4{|CTFpSyvNKA#3YeWym`=Mf42ZNSOrExg?iK?i+~q?`Q^ zf8lc+$EiB{oB(|Ec{%W_z~>?fzX5Rac`NtX1Ul$5X5nw={LR2epWA?sKJNzpwczt1 z3IA7slh5z-c3%V?^!X?(8b0q>>}>KbPayd1*f2JAfRj&g-}WQWL7$`P1MElQxvq0KPPWnKB;cdZslcxRpK~pI;nM>+ z`7EIq@(VijR*YA(g)g2Pivk~gZUR2$X9w_Cfd2O+{7%5h;!N)IInbfE!sqWSeEL2E zmDhleKHmU7`s@RKE$EM-hj{pSA^%dqsmV&-?mUjuIFh9Bxx~U>&iU5@AAMd2d~CNF z_;sMaLBih!I5jEmlimY5=ySJ)zn1&l1AO#(0Qlrn^tTK6*8zUi!Wa4ZFTklu@f=qg zbkOG*T11BZXcPDODUMtBqshQWpBDq)1wP9xeBpB?;M8OXZ}&#fL7z8U_;+%?4t$K~ z7lDuC{x#sc!RPlS`~!eflMnHB4}uQ*JZj-T!uhWQAAKGNKF0Gc;CsNQ@z7F^{b({h z%mm~3EN^!P$F2KOnT7u=&R-0C^jQgfjOXWpUk^Tm5`H`2)Z|}yyE{P#gt zBjBUYp8_9!J`a5QPPEv+UY79R2b`Mxn73=Ahr0On3;G<(aXL>RY9W74^gQ6B&ndu1 zpA~?Uj(F~<8g#JT)fWDzdAnQR*DsQ)l~vJ~xSR0Uh*t$in|J=f4De z^!Xa_(dWCsUjsge(L-H1=C^5plh2*J-OD&`o!=H(_}}9Ea^R!SYk`kGy}+mM3W#x! zNcdj`oP7R-w|f`pU_5_d;qT%6M}Ut$_W&P#9s>Ri;PX`p|0BT3=ONziaC(?2$NV;q z<6?e0!ub~fAAL>*KKgV5PVIJcof^==_*`${zsdPN;A6Wt10UPH75JZr_@pHKA4%{d zpo8nH{4&Le55-6n{5~4t;&(D=jHnPs|BK&6*l5AU?})I{*rpcUyOx#4^r-o_S-gvC zL2s!}-`6drU;bjHYhy818V#Et=;v*;kj_d&VO=X-wxa&BnC|thV`eq2xuG%YZP9qM zpSVyQ=+QGiO#MZ~;T0Y~QTStO{e_l)XKX<`mgp?@8a%4mLHNEE9cJ%d2? z&0pskC^I-f&z4~k{>5KfqZaS6c&viFSh;lUC(P=9HLu?xD)M6WPv`!*#_t~b0U5^F zO}rkBAJrB0X&9NW1$s=K_HS!_`nrL2?5I4>zc9LlCLJi&{?lWHx#~0i N?<$M$k&0ri|9_GE!(spc literal 29712 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 Kc@>bI!v6uS3PvIT delta 19308 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 Oo7v!X%;Qb6NBDo#FhQ@{s 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 NUgd>~+D^p*{|8-lF=+q* delta 25433 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 diff --git a/ftpCommandElaborate.c b/ftpCommandElaborate.c index 46a9654..bf0c4dc 100644 --- a/ftpCommandElaborate.c +++ b/ftpCommandElaborate.c @@ -142,7 +142,7 @@ int parseCommandPass(ftpDataType * data, int socketId) { if (((loginFailsDataType *) data->loginFailsVector.Data[searchPosition])->failureNumbers >= data->ftpParameters.maximumUserAndPassowrdLoginTries) { - //printf("\n TOO MANY LOGIN FAILS! \n"); + printf("\n TOO MANY LOGIN FAILS! \n"); data->clients[socketId].closeTheClient = 1; returnCode = dprintf(data->clients[socketId].socketDescriptor, "430 Too many login failure detected, your ip will be blacklisted for 5 minutes\r\n"); if (returnCode <= 0) return FTP_COMMAND_PROCESSED_WRITE_ERROR; @@ -220,6 +220,9 @@ int parseCommandAuth(clientDataType *theClientData) returnCode = dprintf(theClientData->socketDescriptor, "502 Security extensions not implemented.\r\n"); if (returnCode <= 0) return FTP_COMMAND_PROCESSED_WRITE_ERROR; + + //client -> AUTH TLS + //server -> 234 AUTH TLS OK. return FTP_COMMAND_PROCESSED; } @@ -823,6 +826,7 @@ int parseCommandQuit(ftpDataType * data, int socketId) return FTP_COMMAND_PROCESSED_WRITE_ERROR; data->clients[socketId].closeTheClient = 1; + printf("\n Closing the client quit received"); return FTP_COMMAND_PROCESSED; } diff --git a/ftpServer.c b/ftpServer.c index 4308553..1c45ba0 100644 --- a/ftpServer.c +++ b/ftpServer.c @@ -90,6 +90,7 @@ void *connectionWorkerHandle(void * socketId) if (ftpData.clients[theSocketId].workerData.passiveListeningSocket == -1) { ftpData.clients[theSocketId].closeTheClient = 1; + printf("\n Closing the client 1"); pthread_exit(NULL); } @@ -100,6 +101,7 @@ void *connectionWorkerHandle(void * socketId) if (returnCode <= 0) { ftpData.clients[theSocketId].closeTheClient = 1; + printf("\n Closing the client 2"); pthread_exit(NULL); } @@ -111,6 +113,7 @@ void *connectionWorkerHandle(void * socketId) else { ftpData.clients[theSocketId].closeTheClient = 1; + printf("\n Closing the client 3"); pthread_exit(NULL); } } @@ -122,6 +125,7 @@ void *connectionWorkerHandle(void * socketId) if (ftpData.clients[theSocketId].workerData.socketConnection < 0) { ftpData.clients[theSocketId].closeTheClient = 1; + printf("\n Closing the client 4"); pthread_exit(NULL); } @@ -130,6 +134,7 @@ void *connectionWorkerHandle(void * socketId) if (returnCode <= 0) { ftpData.clients[theSocketId].closeTheClient = 1; + printf("\n Closing the client 5"); pthread_exit(NULL); } @@ -172,6 +177,7 @@ void *connectionWorkerHandle(void * socketId) if (returnCode <= 0) { ftpData.clients[theSocketId].closeTheClient = 1; + printf("\n Closing the client 6"); pthread_exit(NULL); } @@ -183,6 +189,7 @@ void *connectionWorkerHandle(void * socketId) if (returnCode <= 0) { ftpData.clients[theSocketId].closeTheClient = 1; + printf("\n Closing the client 7"); pthread_exit(NULL); } @@ -217,6 +224,7 @@ void *connectionWorkerHandle(void * socketId) if (returnCode <= 0) { ftpData.clients[theSocketId].closeTheClient = 1; + printf("\n Closing the client 8"); pthread_exit(NULL); } @@ -238,6 +246,7 @@ void *connectionWorkerHandle(void * socketId) if (returnCode <= 0) { ftpData.clients[theSocketId].closeTheClient = 1; + printf("\n Closing the client 8"); pthread_exit(NULL); } @@ -245,6 +254,7 @@ void *connectionWorkerHandle(void * socketId) if (returnCode <= 0) { ftpData.clients[theSocketId].closeTheClient = 1; + printf("\n Closing the client 9"); pthread_exit(NULL); } @@ -252,6 +262,7 @@ void *connectionWorkerHandle(void * socketId) if (returnCode <= 0) { ftpData.clients[theSocketId].closeTheClient = 1; + printf("\n Closing the client 10"); pthread_exit(NULL); } @@ -266,6 +277,7 @@ void *connectionWorkerHandle(void * socketId) if (writeReturn <= 0) { ftpData.clients[theSocketId].closeTheClient = 1; + printf("\n Closing the client 11"); pthread_exit(NULL); } @@ -280,6 +292,7 @@ void *connectionWorkerHandle(void * socketId) if (writeReturn <= 0) { ftpData.clients[theSocketId].closeTheClient = 1; + printf("\n Closing the client 12"); pthread_exit(NULL); } break; @@ -290,6 +303,7 @@ void *connectionWorkerHandle(void * socketId) if (writeReturn <= 0) { ftpData.clients[theSocketId].closeTheClient = 1; + printf("\n Closing the client 13"); pthread_exit(NULL); } break; @@ -427,10 +441,12 @@ void runFtpServer(void) else if (commandProcessStatus == FTP_COMMAND_PROCESSED) { ftpData.clients[processingSock].lastActivityTimeStamp = (int)time(NULL); + } else if (commandProcessStatus == FTP_COMMAND_PROCESSED_WRITE_ERROR) { ftpData.clients[processingSock].closeTheClient = 1; + printf("\n Write error, closing the client!"); } } } @@ -441,7 +457,10 @@ void runFtpServer(void) ftpData.clients[processingSock].commandIndex = 0; memset(ftpData.clients[processingSock].theCommandReceived, 0, CLIENT_COMMAND_STRING_SIZE); returnCode = dprintf(ftpData.clients[processingSock].socketDescriptor, "500 Unknown command\r\n"); - if (returnCode <= 0) ftpData.clients[processingSock].closeTheClient = 1; + if (returnCode <= 0) + ftpData.clients[processingSock].closeTheClient = 1; + + printf("\n Command too long closing the client."); break; } } diff --git a/library/configRead.c b/library/configRead.c index c0dfb31..e584bfd 100644 --- a/library/configRead.c +++ b/library/configRead.c @@ -334,6 +334,10 @@ static int readConfigurationFile(char *path, DYNV_VectorGenericDataType *paramet parametersVector->PushBack(parametersVector, ¶meter, sizeof(parameter_DataType)); } + if (theFileSize > 0) { + free(theFileContent); + } + return 1; }