@@ -248,7 +248,7 @@ void ftp_run (void) {
248248 ftp_wait_for_enabled ();
249249 break ;
250250 case E_FTP_STE_START :
251- if (wlan_is_connected () && ftp_create_listening_socket (& ftp_data .lc_sd , FTP_CMD_PORT , FTP_CMD_CLIENTS_MAX )) {
251+ if (wlan_is_connected () && ftp_create_listening_socket (& ftp_data .lc_sd , FTP_CMD_PORT , FTP_CMD_CLIENTS_MAX - 1 )) {
252252 ftp_data .state = E_FTP_STE_READY ;
253253 }
254254 break ;
@@ -612,7 +612,7 @@ static void ftp_process_cmd (void) {
612612
613613 ftp_data .closechild = false;
614614 // also use the reply buffer to receive new commands
615- if (E_FTP_RESULT_OK == (result = ftp_recv_non_blocking (ftp_data .c_sd , ftp_cmd_buffer , FTP_BUFFER_SIZE , & len ))) {
615+ if (E_FTP_RESULT_OK == (result = ftp_recv_non_blocking (ftp_data .c_sd , ftp_cmd_buffer , FTP_MAX_PARAM_SIZE + FTP_CMD_SIZE_MAX , & len ))) {
616616 // bufptr is moved as commands are being popped
617617 ftp_cmd_index_t cmd = ftp_pop_command (& bufptr );
618618 if (!ftp_data .loggin .passvalid && (cmd != E_FTP_CMD_USER && cmd != E_FTP_CMD_PASS && cmd != E_FTP_CMD_QUIT )) {
@@ -707,7 +707,7 @@ static void ftp_process_cmd (void) {
707707 ftp_data .substate = E_FTP_STE_SUB_DISCONNECTED ;
708708 bool socketcreated = true;
709709 if (ftp_data .ld_sd < 0 ) {
710- socketcreated = ftp_create_listening_socket (& ftp_data .ld_sd , FTP_PASIVE_DATA_PORT , FTP_DATA_CLIENTS_MAX );
710+ socketcreated = ftp_create_listening_socket (& ftp_data .ld_sd , FTP_PASIVE_DATA_PORT , FTP_DATA_CLIENTS_MAX - 1 );
711711 }
712712 if (socketcreated ) {
713713 uint32_t ip ;
0 commit comments