From 2f355d91d8a463572f83f6f968097fc8101c9757 Mon Sep 17 00:00:00 2001 From: root Date: Mon, 6 May 2024 19:09:23 +0200 Subject: [PATCH] ipv6 ok --- ftpCommandElaborate.c | 1 - library/connection.c | 11 +++-------- library/fileManagement.c | 4 ++-- 3 files changed, 5 insertions(+), 11 deletions(-) diff --git a/ftpCommandElaborate.c b/ftpCommandElaborate.c index 5027670..7ebf29b 100755 --- a/ftpCommandElaborate.c +++ b/ftpCommandElaborate.c @@ -635,7 +635,6 @@ int parseCommandPort(ftpDataType *data, int socketId) int portBytes[2]; theIpAndPort = getFtpCommandArg("PORT", data->clients[socketId].theCommandReceived, 0); - printf("\n theIpAndPort = %s", theIpAndPort); sscanf(theIpAndPort, "%d,%d,%d,%d,%d,%d", &ipAddressBytes[0], &ipAddressBytes[1], &ipAddressBytes[2], &ipAddressBytes[3], &portBytes[0], &portBytes[1]); data->clients[socketId].workerData.connectionPort = (portBytes[0] * 256) + portBytes[1]; diff --git a/library/connection.c b/library/connection.c index b8d911a..2cfbb72 100755 --- a/library/connection.c +++ b/library/connection.c @@ -964,40 +964,35 @@ int evaluateClientSocketConnection(ftpDataType * ftpData) if(inet_ntop(AF_INET6, &ftpData->clients[availableSocketIndex].client_sockaddr_in.sin6_addr, ftpData->clients[availableSocketIndex].clientIpAddress, sizeof(ftpData->clients[availableSocketIndex].clientIpAddress))) { ftpData->clients[availableSocketIndex].clientPort = (int) ntohs(ftpData->clients[availableSocketIndex].client_sockaddr_in.sin6_port); - printf("\n--> Client address is %s\n", ftpData->clients[availableSocketIndex].clientIpAddress); - printf("\n--> Client port is %d\n", ftpData->clients[availableSocketIndex].clientPort); } getsockname(ftpData->clients[availableSocketIndex].socketDescriptor, (struct sockaddr *)&ftpData->clients[availableSocketIndex].server_sockaddr_in, &ftpData->clients[availableSocketIndex].sockaddr_in_server_size); if(inet_ntop(AF_INET6, &ftpData->clients[availableSocketIndex].server_sockaddr_in.sin6_addr, ftpData->clients[availableSocketIndex].serverIpAddress, sizeof(ftpData->clients[availableSocketIndex].serverIpAddress))) { - printf("\n--> Server ip address is %s\n", ftpData->clients[availableSocketIndex].serverIpAddress); + ; } if (is_ipv4_mapped_ipv6(ftpData->clients[availableSocketIndex].clientIpAddress)) { - printf("\nServer is IPv4-mapped IPv6 address"); + sscanf (ftpData->clients[availableSocketIndex].serverIpAddress,"::ffff:%d.%d.%d.%d", &ftpData->clients[availableSocketIndex].serverIpV4AddressInteger[0], &ftpData->clients[availableSocketIndex].serverIpV4AddressInteger[1], &ftpData->clients[availableSocketIndex].serverIpV4AddressInteger[2], &ftpData->clients[availableSocketIndex].serverIpV4AddressInteger[3]); - printf("\nServer ip saved: %d.%d.%d.%d", ftpData->clients[availableSocketIndex].serverIpV4AddressInteger[0], ftpData->clients[availableSocketIndex].serverIpV4AddressInteger[1], ftpData->clients[availableSocketIndex].serverIpV4AddressInteger[2], ftpData->clients[availableSocketIndex].serverIpV4AddressInteger[3]); } else { - printf("\nServer is ipv6"); + ; } // Check if it's an IPv4-mapped address if (is_ipv4_mapped_ipv6(ftpData->clients[availableSocketIndex].clientIpAddress)) { - printf("\nClient connected from IPv4-mapped IPv6 address: "); ftpData->clients[availableSocketIndex].isIpV6 = 0; } else { - printf("\nClient connected from ipv6"); ftpData->clients[availableSocketIndex].isIpV6 = 1; } diff --git a/library/fileManagement.c b/library/fileManagement.c index 19a3c6e..de9a8ae 100755 --- a/library/fileManagement.c +++ b/library/fileManagement.c @@ -270,10 +270,10 @@ void FILE_GetDirectoryInodeList(char * DirectoryInodeName, char *** InodeList, i strcat(thePathToCheck, "/"); strcat(thePathToCheck, dir->d_name); - printf("\n ************* thePathToCheck = %s", thePathToCheck); + if (checkIfInodeExist == 1 && FILE_CheckIfLinkExist(thePathToCheck) == 0) { - printf("--> Not valid!"); + continue; }