diff --git a/build/modules/configRead.o b/build/modules/configRead.o index 441ccb4..73b75ba 100644 Binary files a/build/modules/configRead.o and b/build/modules/configRead.o differ diff --git a/build/modules/connection.o b/build/modules/connection.o index dcd8352..77a0222 100644 Binary files a/build/modules/connection.o and b/build/modules/connection.o differ diff --git a/build/modules/daemon.o b/build/modules/daemon.o index 5336d71..af1a69d 100644 Binary files a/build/modules/daemon.o and b/build/modules/daemon.o differ diff --git a/build/modules/dynamicVectors.o b/build/modules/dynamicVectors.o index e5a967b..ec8049d 100644 Binary files a/build/modules/dynamicVectors.o and b/build/modules/dynamicVectors.o differ diff --git a/build/modules/fileManagement.o b/build/modules/fileManagement.o index b36c195..ffc79e6 100644 Binary files a/build/modules/fileManagement.o and b/build/modules/fileManagement.o differ diff --git a/build/modules/ftpCommandElaborate.o b/build/modules/ftpCommandElaborate.o index fe2b698..eb2c009 100644 Binary files a/build/modules/ftpCommandElaborate.o and b/build/modules/ftpCommandElaborate.o differ diff --git a/build/modules/ftpData.o b/build/modules/ftpData.o index d351da7..1996bf7 100644 Binary files a/build/modules/ftpData.o and b/build/modules/ftpData.o differ diff --git a/build/modules/ftpServer.o b/build/modules/ftpServer.o index ab06ad2..5e15959 100644 Binary files a/build/modules/ftpServer.o and b/build/modules/ftpServer.o differ diff --git a/build/modules/logFunctions.o b/build/modules/logFunctions.o index 28f97b6..a256336 100644 Binary files a/build/modules/logFunctions.o and b/build/modules/logFunctions.o differ diff --git a/build/modules/openSsl.o b/build/modules/openSsl.o index d980f4e..dd90136 100644 Binary files a/build/modules/openSsl.o and b/build/modules/openSsl.o differ diff --git a/build/modules/signals.o b/build/modules/signals.o index a5f5a54..0f724fc 100644 Binary files a/build/modules/signals.o and b/build/modules/signals.o differ diff --git a/build/uFTP b/build/uFTP old mode 100755 new mode 100644 index ff590c4..cfc5a1a Binary files a/build/uFTP and b/build/uFTP differ diff --git a/ftpCommandElaborate.c b/ftpCommandElaborate.c index bf88b7d..515fed9 100644 --- a/ftpCommandElaborate.c +++ b/ftpCommandElaborate.c @@ -495,10 +495,10 @@ int parseCommandPort(ftpDataType * data, int socketId) returnCode = snprintf(data->clients[socketId].workerData.activeIpAddress, CLIENT_BUFFER_STRING_SIZE, "%d.%d.%d.%d", ipAddressBytes[0],ipAddressBytes[1],ipAddressBytes[2],ipAddressBytes[3]); void *pReturn; - if (data->clients[socketId].workerData.threadIsAlive == 1) - { + //if (data->clients[socketId].workerData.threadIsAlive == 1) + //{ returnCode = pthread_cancel(data->clients[socketId].workerData.workerThread); - } + //} returnCode = pthread_join(data->clients[socketId].workerData.workerThread, &pReturn); data->clients[socketId].workerData.passiveModeOn = 0; data->clients[socketId].workerData.activeModeOn = 1; @@ -526,10 +526,10 @@ int parseCommandAbor(ftpDataType * data, int socketId) if (data->clients[socketId].workerData.threadIsAlive == 1) { void *pReturn; - if (data->clients[socketId].workerData.threadIsAlive == 1) - { + //if (data->clients[socketId].workerData.threadIsAlive == 1) + //{ pthread_cancel(data->clients[socketId].workerData.workerThread); - } + //} pthread_join(data->clients[socketId].workerData.workerThread, &pReturn); returnCode = socketPrintf(data, socketId, "s", "426 ABORT\r\n"); @@ -596,7 +596,7 @@ int parseCommandList(ftpDataType * data, int socketId) setDynamicStringDataType(&data->clients[socketId].listPath, data->clients[socketId].login.absolutePath.text, data->clients[socketId].login.absolutePath.textLen); } - pthread_mutex_lock(&data->clients[socketId].workerData.conditionMutex); + pthread_mutex_trylock(&data->clients[socketId].workerData.conditionMutex); memset(data->clients[socketId].workerData.theCommandReceived, 0, CLIENT_COMMAND_STRING_SIZE); strcpy(data->clients[socketId].workerData.theCommandReceived, data->clients[socketId].theCommandReceived); data->clients[socketId].workerData.commandReceived = 1; @@ -627,7 +627,7 @@ int parseCommandNlst(ftpDataType * data, int socketId) setDynamicStringDataType(&data->clients[socketId].nlistPath, data->clients[socketId].login.absolutePath.text, data->clients[socketId].login.absolutePath.textLen); } - pthread_mutex_lock(&data->clients[socketId].workerData.conditionMutex); + pthread_mutex_trylock(&data->clients[socketId].workerData.conditionMutex); memset(data->clients[socketId].workerData.theCommandReceived, 0, CLIENT_COMMAND_STRING_SIZE); strcpy(data->clients[socketId].workerData.theCommandReceived, data->clients[socketId].theCommandReceived); data->clients[socketId].workerData.commandReceived = 1; @@ -652,7 +652,7 @@ int parseCommandRetr(ftpDataType * data, int socketId) if (isSafePath == 1 && FILE_IsFile(data->clients[socketId].fileToRetr.text) == 1) { - pthread_mutex_lock(&data->clients[socketId].workerData.conditionMutex); + pthread_mutex_trylock(&data->clients[socketId].workerData.conditionMutex); memset(data->clients[socketId].workerData.theCommandReceived, 0, CLIENT_COMMAND_STRING_SIZE); strcpy(data->clients[socketId].workerData.theCommandReceived, data->clients[socketId].theCommandReceived); data->clients[socketId].workerData.commandReceived = 1; @@ -682,7 +682,7 @@ int parseCommandStor(ftpDataType * data, int socketId) if (isSafePath == 1) { - pthread_mutex_lock(&data->clients[socketId].workerData.conditionMutex); + pthread_mutex_trylock(&data->clients[socketId].workerData.conditionMutex); memset(data->clients[socketId].workerData.theCommandReceived, 0, CLIENT_COMMAND_STRING_SIZE); strcpy(data->clients[socketId].workerData.theCommandReceived, data->clients[socketId].theCommandReceived); data->clients[socketId].workerData.commandReceived = 1; diff --git a/ftpData.c b/ftpData.c index e8d40e4..9a2775b 100644 --- a/ftpData.c +++ b/ftpData.c @@ -593,10 +593,10 @@ void resetWorkerData(ftpDataType *data, int clientId, int isInitialization) data->clients[clientId].workerData.theStorFile = NULL; } - #ifdef OPENSSL_ENABLED - SSL_free(data->clients[clientId].workerData.serverSsl); - SSL_free(data->clients[clientId].workerData.clientSsl); - #endif + #ifdef OPENSSL_ENABLED + SSL_free(data->clients[clientId].workerData.serverSsl); + SSL_free(data->clients[clientId].workerData.clientSsl); + #endif } else { @@ -627,10 +627,11 @@ void resetWorkerData(ftpDataType *data, int clientId, int isInitialization) data->clients[clientId].workerData.directoryInfo.Destroy(&data->clients[clientId].workerData.directoryInfo, deleteListDataInfoVector); free(lastToDestroy); } - #ifdef OPENSSL_ENABLED - data->clients[clientId].workerData.serverSsl = SSL_new(data->serverCtx); - data->clients[clientId].workerData.clientSsl = SSL_new(data->clientCtx); - #endif + + #ifdef OPENSSL_ENABLED + data->clients[clientId].workerData.serverSsl = SSL_new(data->serverCtx); + data->clients[clientId].workerData.clientSsl = SSL_new(data->clientCtx); + #endif } void resetClientData(ftpDataType *data, int clientId, int isInitialization) @@ -647,6 +648,7 @@ void resetClientData(ftpDataType *data, int clientId, int isInitialization) else { void *pReturn = NULL; + pthread_cancel(data->clients[clientId].workerData.workerThread); pthread_join(data->clients[clientId].workerData.workerThread, &pReturn); } @@ -654,7 +656,7 @@ void resetClientData(ftpDataType *data, int clientId, int isInitialization) #ifdef OPENSSL_ENABLED SSL_free(data->clients[clientId].ssl); - //SSL_free(data->clients[clientId].workerData.ssl); + SSL_free(data->clients[clientId].workerData.ssl); #endif } diff --git a/ftpData.h b/ftpData.h index 284fd0b..d637850 100644 --- a/ftpData.h +++ b/ftpData.h @@ -119,10 +119,10 @@ struct ipData struct workerData { - #ifdef OPENSSL_ENABLED - SSL *serverSsl; - SSL *clientSsl; - #endif + #ifdef OPENSSL_ENABLED + SSL *serverSsl; + SSL *clientSsl; + #endif int threadIsAlive; int connectionPort; diff --git a/ftpServer.c b/ftpServer.c index d40c729..9251396 100644 --- a/ftpServer.c +++ b/ftpServer.c @@ -570,7 +570,7 @@ void runFtpServer(void) //Debug print errors if (ftpData.clients[processingSock].bufferIndex < 0) { - ftpData.clients[processingSock].closeTheClient = 1; + //ftpData.clients[processingSock].closeTheClient = 1; printf("\n1 Errno = %d", errno); perror("1 Error: "); continue; diff --git a/library/connection.c b/library/connection.c index 165b12d..dbc3984 100644 --- a/library/connection.c +++ b/library/connection.c @@ -460,13 +460,13 @@ void closeClient(ftpDataType * ftpData, int processingSocket) { printf("\nQUIT FLAG SET!\n"); - if (ftpData->clients[processingSocket].workerData.threadIsAlive == 1) - { + // if (ftpData->clients[processingSocket].workerData.threadIsAlive == 1) + // { void *pReturn; pthread_cancel(ftpData->clients[processingSocket].workerData.workerThread); pthread_join(ftpData->clients[processingSocket].workerData.workerThread, &pReturn); printf("\nQuit command received the Pasv Thread has been cancelled."); - } + // } FD_CLR(ftpData->clients[processingSocket].socketDescriptor, &ftpData->connectionData.rsetAll); FD_CLR(ftpData->clients[processingSocket].socketDescriptor, &ftpData->connectionData.wsetAll); diff --git a/nbproject/Makefile-Debug.mk b/nbproject/Makefile-Debug.mk deleted file mode 100644 index 1fc9129..0000000 --- a/nbproject/Makefile-Debug.mk +++ /dev/null @@ -1,149 +0,0 @@ -# -# Generated Makefile - do not edit! -# -# Edit the Makefile in the project folder instead (../Makefile). Each target -# has a -pre and a -post target defined where you can add customized code. -# -# This makefile implements configuration specific macros and targets. - - -# Environment -MKDIR=mkdir -CP=cp -GREP=grep -NM=nm -CCADMIN=CCadmin -RANLIB=ranlib -CC=gcc -CCC=g++ -CXX=g++ -FC=gfortran -AS=as - -# Macros -CND_PLATFORM=GNU-Linux -CND_DLIB_EXT=so -CND_CONF=Debug -CND_DISTDIR=dist -CND_BUILDDIR=build - -# Include project Makefile -include Makefile - -# Object Directory -OBJECTDIR=${CND_BUILDDIR}/${CND_CONF}/${CND_PLATFORM} - -# Object Files -OBJECTFILES= \ - ${OBJECTDIR}/ftpCommandElaborate.o \ - ${OBJECTDIR}/ftpData.o \ - ${OBJECTDIR}/ftpServer.o \ - ${OBJECTDIR}/library/configRead.o \ - ${OBJECTDIR}/library/connection.o \ - ${OBJECTDIR}/library/daemon.o \ - ${OBJECTDIR}/library/dynamicVectors.o \ - ${OBJECTDIR}/library/fileManagement.o \ - ${OBJECTDIR}/library/logFunctions.o \ - ${OBJECTDIR}/library/openSsl.o \ - ${OBJECTDIR}/library/signals.o \ - ${OBJECTDIR}/uFTP.o - - -# C Compiler Flags -CFLAGS= - -# CC Compiler Flags -CCFLAGS= -CXXFLAGS= - -# Fortran Compiler Flags -FFLAGS= - -# Assembler Flags -ASFLAGS= - -# Link Libraries and Options -LDLIBSOPTIONS=-lpthread `pkg-config --libs libcrypto` `pkg-config --libs libssl` `pkg-config --libs openssl` - -# Build Targets -.build-conf: ${BUILD_SUBPROJECTS} - "${MAKE}" -f nbproject/Makefile-${CND_CONF}.mk ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/uftp - -${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/uftp: ${OBJECTFILES} - ${MKDIR} -p ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM} - gcc -o ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/uftp ${OBJECTFILES} ${LDLIBSOPTIONS} - -${OBJECTDIR}/ftpCommandElaborate.o: ftpCommandElaborate.c - ${MKDIR} -p ${OBJECTDIR} - ${RM} "$@.d" - $(COMPILE.c) -g -Wall -D_LARGE_FILE_SUPPORT_ENABLED -Ilibrary -include library/dynamicVectors.h -include library/fileManagement.h `pkg-config --cflags libcrypto` `pkg-config --cflags libssl` `pkg-config --cflags openssl` -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/ftpCommandElaborate.o ftpCommandElaborate.c - -${OBJECTDIR}/ftpData.o: ftpData.c - ${MKDIR} -p ${OBJECTDIR} - ${RM} "$@.d" - $(COMPILE.c) -g -Wall -D_LARGE_FILE_SUPPORT_ENABLED -Ilibrary -include library/dynamicVectors.h -include library/fileManagement.h `pkg-config --cflags libcrypto` `pkg-config --cflags libssl` `pkg-config --cflags openssl` -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/ftpData.o ftpData.c - -${OBJECTDIR}/ftpServer.o: ftpServer.c - ${MKDIR} -p ${OBJECTDIR} - ${RM} "$@.d" - $(COMPILE.c) -g -Wall -D_LARGE_FILE_SUPPORT_ENABLED -Ilibrary -include library/dynamicVectors.h -include library/fileManagement.h `pkg-config --cflags libcrypto` `pkg-config --cflags libssl` `pkg-config --cflags openssl` -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/ftpServer.o ftpServer.c - -${OBJECTDIR}/library/configRead.o: library/configRead.c - ${MKDIR} -p ${OBJECTDIR}/library - ${RM} "$@.d" - $(COMPILE.c) -g -Wall -D_LARGE_FILE_SUPPORT_ENABLED -Ilibrary -include library/dynamicVectors.h -include library/fileManagement.h `pkg-config --cflags libcrypto` `pkg-config --cflags libssl` `pkg-config --cflags openssl` -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/library/configRead.o library/configRead.c - -${OBJECTDIR}/library/connection.o: library/connection.c - ${MKDIR} -p ${OBJECTDIR}/library - ${RM} "$@.d" - $(COMPILE.c) -g -Wall -D_LARGE_FILE_SUPPORT_ENABLED -Ilibrary -include library/dynamicVectors.h -include library/fileManagement.h `pkg-config --cflags libcrypto` `pkg-config --cflags libssl` `pkg-config --cflags openssl` -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/library/connection.o library/connection.c - -${OBJECTDIR}/library/daemon.o: library/daemon.c - ${MKDIR} -p ${OBJECTDIR}/library - ${RM} "$@.d" - $(COMPILE.c) -g -Wall -D_LARGE_FILE_SUPPORT_ENABLED -Ilibrary -include library/dynamicVectors.h -include library/fileManagement.h `pkg-config --cflags libcrypto` `pkg-config --cflags libssl` `pkg-config --cflags openssl` -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/library/daemon.o library/daemon.c - -${OBJECTDIR}/library/dynamicVectors.o: library/dynamicVectors.c - ${MKDIR} -p ${OBJECTDIR}/library - ${RM} "$@.d" - $(COMPILE.c) -g -Wall -D_LARGE_FILE_SUPPORT_ENABLED -Ilibrary -include library/dynamicVectors.h -include library/fileManagement.h `pkg-config --cflags libcrypto` `pkg-config --cflags libssl` `pkg-config --cflags openssl` -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/library/dynamicVectors.o library/dynamicVectors.c - -${OBJECTDIR}/library/fileManagement.o: library/fileManagement.c - ${MKDIR} -p ${OBJECTDIR}/library - ${RM} "$@.d" - $(COMPILE.c) -g -Wall -D_LARGE_FILE_SUPPORT_ENABLED -Ilibrary -include library/dynamicVectors.h -include library/fileManagement.h `pkg-config --cflags libcrypto` `pkg-config --cflags libssl` `pkg-config --cflags openssl` -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/library/fileManagement.o library/fileManagement.c - -${OBJECTDIR}/library/logFunctions.o: library/logFunctions.c - ${MKDIR} -p ${OBJECTDIR}/library - ${RM} "$@.d" - $(COMPILE.c) -g -Wall -D_LARGE_FILE_SUPPORT_ENABLED -Ilibrary -include library/dynamicVectors.h -include library/fileManagement.h `pkg-config --cflags libcrypto` `pkg-config --cflags libssl` `pkg-config --cflags openssl` -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/library/logFunctions.o library/logFunctions.c - -${OBJECTDIR}/library/openSsl.o: library/openSsl.c - ${MKDIR} -p ${OBJECTDIR}/library - ${RM} "$@.d" - $(COMPILE.c) -g -Wall -D_LARGE_FILE_SUPPORT_ENABLED -Ilibrary -include library/dynamicVectors.h -include library/fileManagement.h `pkg-config --cflags libcrypto` `pkg-config --cflags libssl` `pkg-config --cflags openssl` -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/library/openSsl.o library/openSsl.c - -${OBJECTDIR}/library/signals.o: library/signals.c - ${MKDIR} -p ${OBJECTDIR}/library - ${RM} "$@.d" - $(COMPILE.c) -g -Wall -D_LARGE_FILE_SUPPORT_ENABLED -Ilibrary -include library/dynamicVectors.h -include library/fileManagement.h `pkg-config --cflags libcrypto` `pkg-config --cflags libssl` `pkg-config --cflags openssl` -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/library/signals.o library/signals.c - -${OBJECTDIR}/uFTP.o: uFTP.c - ${MKDIR} -p ${OBJECTDIR} - ${RM} "$@.d" - $(COMPILE.c) -g -Wall -D_LARGE_FILE_SUPPORT_ENABLED -Ilibrary -include library/dynamicVectors.h -include library/fileManagement.h `pkg-config --cflags libcrypto` `pkg-config --cflags libssl` `pkg-config --cflags openssl` -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/uFTP.o uFTP.c - -# Subprojects -.build-subprojects: - -# Clean Targets -.clean-conf: ${CLEAN_SUBPROJECTS} - ${RM} -r ${CND_BUILDDIR}/${CND_CONF} - -# Subprojects -.clean-subprojects: - -# Enable dependency checking -.dep.inc: .depcheck-impl - -include .dep.inc diff --git a/nbproject/Makefile-Release.mk b/nbproject/Makefile-Release.mk deleted file mode 100644 index 7da7d52..0000000 --- a/nbproject/Makefile-Release.mk +++ /dev/null @@ -1,149 +0,0 @@ -# -# Generated Makefile - do not edit! -# -# Edit the Makefile in the project folder instead (../Makefile). Each target -# has a -pre and a -post target defined where you can add customized code. -# -# This makefile implements configuration specific macros and targets. - - -# Environment -MKDIR=mkdir -CP=cp -GREP=grep -NM=nm -CCADMIN=CCadmin -RANLIB=ranlib -CC=gcc -CCC=g++ -CXX=g++ -FC=gfortran -AS=as - -# Macros -CND_PLATFORM=GNU-Linux -CND_DLIB_EXT=so -CND_CONF=Release -CND_DISTDIR=dist -CND_BUILDDIR=build - -# Include project Makefile -include Makefile - -# Object Directory -OBJECTDIR=${CND_BUILDDIR}/${CND_CONF}/${CND_PLATFORM} - -# Object Files -OBJECTFILES= \ - ${OBJECTDIR}/ftpCommandElaborate.o \ - ${OBJECTDIR}/ftpData.o \ - ${OBJECTDIR}/ftpServer.o \ - ${OBJECTDIR}/library/configRead.o \ - ${OBJECTDIR}/library/connection.o \ - ${OBJECTDIR}/library/daemon.o \ - ${OBJECTDIR}/library/dynamicVectors.o \ - ${OBJECTDIR}/library/fileManagement.o \ - ${OBJECTDIR}/library/logFunctions.o \ - ${OBJECTDIR}/library/openSsl.o \ - ${OBJECTDIR}/library/signals.o \ - ${OBJECTDIR}/uFTP.o - - -# C Compiler Flags -CFLAGS=-pthread -ssl -crypto - -# CC Compiler Flags -CCFLAGS= -CXXFLAGS= - -# Fortran Compiler Flags -FFLAGS= - -# Assembler Flags -ASFLAGS= - -# Link Libraries and Options -LDLIBSOPTIONS= - -# Build Targets -.build-conf: ${BUILD_SUBPROJECTS} - "${MAKE}" -f nbproject/Makefile-${CND_CONF}.mk ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/uftp - -${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/uftp: ${OBJECTFILES} - ${MKDIR} -p ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM} - ${LINK.c} -o ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/uftp ${OBJECTFILES} ${LDLIBSOPTIONS} - -${OBJECTDIR}/ftpCommandElaborate.o: ftpCommandElaborate.c - ${MKDIR} -p ${OBJECTDIR} - ${RM} "$@.d" - $(COMPILE.c) -O2 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/ftpCommandElaborate.o ftpCommandElaborate.c - -${OBJECTDIR}/ftpData.o: ftpData.c - ${MKDIR} -p ${OBJECTDIR} - ${RM} "$@.d" - $(COMPILE.c) -O2 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/ftpData.o ftpData.c - -${OBJECTDIR}/ftpServer.o: ftpServer.c - ${MKDIR} -p ${OBJECTDIR} - ${RM} "$@.d" - $(COMPILE.c) -O2 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/ftpServer.o ftpServer.c - -${OBJECTDIR}/library/configRead.o: library/configRead.c - ${MKDIR} -p ${OBJECTDIR}/library - ${RM} "$@.d" - $(COMPILE.c) -O2 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/library/configRead.o library/configRead.c - -${OBJECTDIR}/library/connection.o: library/connection.c - ${MKDIR} -p ${OBJECTDIR}/library - ${RM} "$@.d" - $(COMPILE.c) -O2 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/library/connection.o library/connection.c - -${OBJECTDIR}/library/daemon.o: library/daemon.c - ${MKDIR} -p ${OBJECTDIR}/library - ${RM} "$@.d" - $(COMPILE.c) -O2 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/library/daemon.o library/daemon.c - -${OBJECTDIR}/library/dynamicVectors.o: library/dynamicVectors.c - ${MKDIR} -p ${OBJECTDIR}/library - ${RM} "$@.d" - $(COMPILE.c) -O2 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/library/dynamicVectors.o library/dynamicVectors.c - -${OBJECTDIR}/library/fileManagement.o: library/fileManagement.c - ${MKDIR} -p ${OBJECTDIR}/library - ${RM} "$@.d" - $(COMPILE.c) -O2 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/library/fileManagement.o library/fileManagement.c - -${OBJECTDIR}/library/logFunctions.o: library/logFunctions.c - ${MKDIR} -p ${OBJECTDIR}/library - ${RM} "$@.d" - $(COMPILE.c) -O2 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/library/logFunctions.o library/logFunctions.c - -${OBJECTDIR}/library/openSsl.o: library/openSsl.c - ${MKDIR} -p ${OBJECTDIR}/library - ${RM} "$@.d" - $(COMPILE.c) -O2 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/library/openSsl.o library/openSsl.c - -${OBJECTDIR}/library/signals.o: library/signals.c - ${MKDIR} -p ${OBJECTDIR}/library - ${RM} "$@.d" - $(COMPILE.c) -O2 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/library/signals.o library/signals.c - -${OBJECTDIR}/uFTP.o: uFTP.c - ${MKDIR} -p ${OBJECTDIR} - ${RM} "$@.d" - $(COMPILE.c) -O2 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/uFTP.o uFTP.c - -# Subprojects -.build-subprojects: - -# Clean Targets -.clean-conf: ${CLEAN_SUBPROJECTS} - ${RM} -r ${CND_BUILDDIR}/${CND_CONF} - -# Subprojects -.clean-subprojects: - -# Enable dependency checking -.dep.inc: .depcheck-impl - -include .dep.inc diff --git a/nbproject/Makefile-impl.mk b/nbproject/Makefile-impl.mk deleted file mode 100644 index a655098..0000000 --- a/nbproject/Makefile-impl.mk +++ /dev/null @@ -1,133 +0,0 @@ -# -# Generated Makefile - do not edit! -# -# Edit the Makefile in the project folder instead (../Makefile). Each target -# has a pre- and a post- target defined where you can add customization code. -# -# This makefile implements macros and targets common to all configurations. -# -# NOCDDL - - -# Building and Cleaning subprojects are done by default, but can be controlled with the SUB -# macro. If SUB=no, subprojects will not be built or cleaned. The following macro -# statements set BUILD_SUB-CONF and CLEAN_SUB-CONF to .build-reqprojects-conf -# and .clean-reqprojects-conf unless SUB has the value 'no' -SUB_no=NO -SUBPROJECTS=${SUB_${SUB}} -BUILD_SUBPROJECTS_=.build-subprojects -BUILD_SUBPROJECTS_NO= -BUILD_SUBPROJECTS=${BUILD_SUBPROJECTS_${SUBPROJECTS}} -CLEAN_SUBPROJECTS_=.clean-subprojects -CLEAN_SUBPROJECTS_NO= -CLEAN_SUBPROJECTS=${CLEAN_SUBPROJECTS_${SUBPROJECTS}} - - -# Project Name -PROJECTNAME=uFTP - -# Active Configuration -DEFAULTCONF=Debug -CONF=${DEFAULTCONF} - -# All Configurations -ALLCONFS=Debug Release - - -# build -.build-impl: .build-pre .validate-impl .depcheck-impl - @#echo "=> Running $@... Configuration=$(CONF)" - "${MAKE}" -f nbproject/Makefile-${CONF}.mk QMAKE=${QMAKE} SUBPROJECTS=${SUBPROJECTS} .build-conf - - -# clean -.clean-impl: .clean-pre .validate-impl .depcheck-impl - @#echo "=> Running $@... Configuration=$(CONF)" - "${MAKE}" -f nbproject/Makefile-${CONF}.mk QMAKE=${QMAKE} SUBPROJECTS=${SUBPROJECTS} .clean-conf - - -# clobber -.clobber-impl: .clobber-pre .depcheck-impl - @#echo "=> Running $@..." - for CONF in ${ALLCONFS}; \ - do \ - "${MAKE}" -f nbproject/Makefile-$${CONF}.mk QMAKE=${QMAKE} SUBPROJECTS=${SUBPROJECTS} .clean-conf; \ - done - -# all -.all-impl: .all-pre .depcheck-impl - @#echo "=> Running $@..." - for CONF in ${ALLCONFS}; \ - do \ - "${MAKE}" -f nbproject/Makefile-$${CONF}.mk QMAKE=${QMAKE} SUBPROJECTS=${SUBPROJECTS} .build-conf; \ - done - -# build tests -.build-tests-impl: .build-impl .build-tests-pre - @#echo "=> Running $@... Configuration=$(CONF)" - "${MAKE}" -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .build-tests-conf - -# run tests -.test-impl: .build-tests-impl .test-pre - @#echo "=> Running $@... Configuration=$(CONF)" - "${MAKE}" -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .test-conf - -# dependency checking support -.depcheck-impl: - @echo "# This code depends on make tool being used" >.dep.inc - @if [ -n "${MAKE_VERSION}" ]; then \ - echo "DEPFILES=\$$(wildcard \$$(addsuffix .d, \$${OBJECTFILES} \$${TESTOBJECTFILES}))" >>.dep.inc; \ - echo "ifneq (\$${DEPFILES},)" >>.dep.inc; \ - echo "include \$${DEPFILES}" >>.dep.inc; \ - echo "endif" >>.dep.inc; \ - else \ - echo ".KEEP_STATE:" >>.dep.inc; \ - echo ".KEEP_STATE_FILE:.make.state.\$${CONF}" >>.dep.inc; \ - fi - -# configuration validation -.validate-impl: - @if [ ! -f nbproject/Makefile-${CONF}.mk ]; \ - then \ - echo ""; \ - echo "Error: can not find the makefile for configuration '${CONF}' in project ${PROJECTNAME}"; \ - echo "See 'make help' for details."; \ - echo "Current directory: " `pwd`; \ - echo ""; \ - fi - @if [ ! -f nbproject/Makefile-${CONF}.mk ]; \ - then \ - exit 1; \ - fi - - -# help -.help-impl: .help-pre - @echo "This makefile supports the following configurations:" - @echo " ${ALLCONFS}" - @echo "" - @echo "and the following targets:" - @echo " build (default target)" - @echo " clean" - @echo " clobber" - @echo " all" - @echo " help" - @echo "" - @echo "Makefile Usage:" - @echo " make [CONF=] [SUB=no] build" - @echo " make [CONF=] [SUB=no] clean" - @echo " make [SUB=no] clobber" - @echo " make [SUB=no] all" - @echo " make help" - @echo "" - @echo "Target 'build' will build a specific configuration and, unless 'SUB=no'," - @echo " also build subprojects." - @echo "Target 'clean' will clean a specific configuration and, unless 'SUB=no'," - @echo " also clean subprojects." - @echo "Target 'clobber' will remove all built files from all configurations and," - @echo " unless 'SUB=no', also from subprojects." - @echo "Target 'all' will will build all configurations and, unless 'SUB=no'," - @echo " also build subprojects." - @echo "Target 'help' prints this message." - @echo "" - diff --git a/nbproject/Makefile-variables.mk b/nbproject/Makefile-variables.mk deleted file mode 100644 index 558a2b7..0000000 --- a/nbproject/Makefile-variables.mk +++ /dev/null @@ -1,35 +0,0 @@ -# -# Generated - do not edit! -# -# NOCDDL -# -CND_BASEDIR=`pwd` -CND_BUILDDIR=build -CND_DISTDIR=dist -# Debug configuration -CND_PLATFORM_Debug=GNU-Linux -CND_ARTIFACT_DIR_Debug=dist/Debug/GNU-Linux -CND_ARTIFACT_NAME_Debug=uftp -CND_ARTIFACT_PATH_Debug=dist/Debug/GNU-Linux/uftp -CND_PACKAGE_DIR_Debug=dist/Debug/GNU-Linux/package -CND_PACKAGE_NAME_Debug=uftp.tar -CND_PACKAGE_PATH_Debug=dist/Debug/GNU-Linux/package/uftp.tar -# Release configuration -CND_PLATFORM_Release=GNU-Linux -CND_ARTIFACT_DIR_Release=dist/Release/GNU-Linux -CND_ARTIFACT_NAME_Release=uftp -CND_ARTIFACT_PATH_Release=dist/Release/GNU-Linux/uftp -CND_PACKAGE_DIR_Release=dist/Release/GNU-Linux/package -CND_PACKAGE_NAME_Release=uftp.tar -CND_PACKAGE_PATH_Release=dist/Release/GNU-Linux/package/uftp.tar -# -# include compiler specific variables -# -# dmake command -ROOT:sh = test -f nbproject/private/Makefile-variables.mk || \ - (mkdir -p nbproject/private && touch nbproject/private/Makefile-variables.mk) -# -# gmake command -.PHONY: $(shell test -f nbproject/private/Makefile-variables.mk || (mkdir -p nbproject/private && touch nbproject/private/Makefile-variables.mk)) -# -include nbproject/private/Makefile-variables.mk diff --git a/nbproject/Package-Debug.bash b/nbproject/Package-Debug.bash deleted file mode 100644 index cf4c7d2..0000000 --- a/nbproject/Package-Debug.bash +++ /dev/null @@ -1,76 +0,0 @@ -#!/bin/bash -x - -# -# Generated - do not edit! -# - -# Macros -TOP=`pwd` -CND_PLATFORM=GNU-Linux -CND_CONF=Debug -CND_DISTDIR=dist -CND_BUILDDIR=build -CND_DLIB_EXT=so -NBTMPDIR=${CND_BUILDDIR}/${CND_CONF}/${CND_PLATFORM}/tmp-packaging -TMPDIRNAME=tmp-packaging -OUTPUT_PATH=${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/uftp -OUTPUT_BASENAME=uftp -PACKAGE_TOP_DIR=uftp/ - -# Functions -function checkReturnCode -{ - rc=$? - if [ $rc != 0 ] - then - exit $rc - fi -} -function makeDirectory -# $1 directory path -# $2 permission (optional) -{ - mkdir -p "$1" - checkReturnCode - if [ "$2" != "" ] - then - chmod $2 "$1" - checkReturnCode - fi -} -function copyFileToTmpDir -# $1 from-file path -# $2 to-file path -# $3 permission -{ - cp "$1" "$2" - checkReturnCode - if [ "$3" != "" ] - then - chmod $3 "$2" - checkReturnCode - fi -} - -# Setup -cd "${TOP}" -mkdir -p ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/package -rm -rf ${NBTMPDIR} -mkdir -p ${NBTMPDIR} - -# Copy files and create directories and links -cd "${TOP}" -makeDirectory "${NBTMPDIR}/uftp/bin" -copyFileToTmpDir "${OUTPUT_PATH}" "${NBTMPDIR}/${PACKAGE_TOP_DIR}bin/${OUTPUT_BASENAME}" 0755 - - -# Generate tar file -cd "${TOP}" -rm -f ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/package/uftp.tar -cd ${NBTMPDIR} -tar -vcf ../../../../${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/package/uftp.tar * -checkReturnCode - -# Cleanup -cd "${TOP}" -rm -rf ${NBTMPDIR} diff --git a/nbproject/Package-Release.bash b/nbproject/Package-Release.bash deleted file mode 100644 index 8642e54..0000000 --- a/nbproject/Package-Release.bash +++ /dev/null @@ -1,76 +0,0 @@ -#!/bin/bash -x - -# -# Generated - do not edit! -# - -# Macros -TOP=`pwd` -CND_PLATFORM=GNU-Linux -CND_CONF=Release -CND_DISTDIR=dist -CND_BUILDDIR=build -CND_DLIB_EXT=so -NBTMPDIR=${CND_BUILDDIR}/${CND_CONF}/${CND_PLATFORM}/tmp-packaging -TMPDIRNAME=tmp-packaging -OUTPUT_PATH=${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/uftp -OUTPUT_BASENAME=uftp -PACKAGE_TOP_DIR=uftp/ - -# Functions -function checkReturnCode -{ - rc=$? - if [ $rc != 0 ] - then - exit $rc - fi -} -function makeDirectory -# $1 directory path -# $2 permission (optional) -{ - mkdir -p "$1" - checkReturnCode - if [ "$2" != "" ] - then - chmod $2 "$1" - checkReturnCode - fi -} -function copyFileToTmpDir -# $1 from-file path -# $2 to-file path -# $3 permission -{ - cp "$1" "$2" - checkReturnCode - if [ "$3" != "" ] - then - chmod $3 "$2" - checkReturnCode - fi -} - -# Setup -cd "${TOP}" -mkdir -p ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/package -rm -rf ${NBTMPDIR} -mkdir -p ${NBTMPDIR} - -# Copy files and create directories and links -cd "${TOP}" -makeDirectory "${NBTMPDIR}/uftp/bin" -copyFileToTmpDir "${OUTPUT_PATH}" "${NBTMPDIR}/${PACKAGE_TOP_DIR}bin/${OUTPUT_BASENAME}" 0755 - - -# Generate tar file -cd "${TOP}" -rm -f ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/package/uftp.tar -cd ${NBTMPDIR} -tar -vcf ../../../../${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/package/uftp.tar * -checkReturnCode - -# Cleanup -cd "${TOP}" -rm -rf ${NBTMPDIR} diff --git a/nbproject/configurations.xml b/nbproject/configurations.xml deleted file mode 100644 index 948d338..0000000 --- a/nbproject/configurations.xml +++ /dev/null @@ -1,233 +0,0 @@ - - - - - - library/configRead.h - library/connection.h - library/dynamicVectors.h - library/fileManagement.h - library/logFunctions.h - library/openSsl.h - library/signals.h - - library/daemon.h - ftpCommandsElaborate.h - ftpData.h - ftpServer.h - ftpSpecs.h - - - README.md - - - - library/configRead.c - library/connection.c - library/daemon.c - library/dynamicVectors.c - library/fileManagement.c - library/logFunctions.c - library/openSsl.c - library/signals.c - - MakeFileGeneric - ftpCommandElaborate.c - ftpData.c - ftpServer.c - todo.txt - uFTP.c - uftpd.cfg - - - - - MakeFileGeneric - Makefile - - - - library - - Makefile - - - - GNU|GNU - true - false - - - - gcc - - library - - - library/dynamicVectors.h - library/fileManagement.h - - - _LARGE_FILE_SUPPORT_ENABLED - - 2 - - - gcc - - PosixThreads - `pkg-config --libs libcrypto` - `pkg-config --libs libssl` - `pkg-config --libs openssl` - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - default - true - false - - - - 5 - -pthread -ssl -crypto - - - 5 - - - 5 - - - 5 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/nbproject/private/Makefile-variables.mk b/nbproject/private/Makefile-variables.mk deleted file mode 100644 index a64183e..0000000 --- a/nbproject/private/Makefile-variables.mk +++ /dev/null @@ -1,7 +0,0 @@ -# -# Generated - do not edit! -# -# NOCDDL -# -# Debug configuration -# Release configuration diff --git a/nbproject/private/c_standard_headers_indexer.c b/nbproject/private/c_standard_headers_indexer.c deleted file mode 100644 index c2548d2..0000000 --- a/nbproject/private/c_standard_headers_indexer.c +++ /dev/null @@ -1,75 +0,0 @@ -/* - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. - * - * Copyright (c) 2016 Oracle and/or its affiliates. All rights reserved. - * - * Oracle and Java are registered trademarks of Oracle and/or its affiliates. - * Other names may be trademarks of their respective owners. - * - * The contents of this file are subject to the terms of either the GNU - * General Public License Version 2 only ("GPL") or the Common - * Development and Distribution License("CDDL") (collectively, the - * "License"). You may not use this file except in compliance with the - * License. You can obtain a copy of the License at - * http://www.netbeans.org/cddl-gplv2.html - * or nbbuild/licenses/CDDL-GPL-2-CP. See the License for the - * specific language governing permissions and limitations under the - * License. When distributing the software, include this License Header - * Notice in each file and include the License file at - * nbbuild/licenses/CDDL-GPL-2-CP. Oracle designates this - * particular file as subject to the "Classpath" exception as provided - * by Oracle in the GPL Version 2 section of the License file that - * accompanied this code. If applicable, add the following below the - * License Header, with the fields enclosed by brackets [] replaced by - * your own identifying information: - * "Portions Copyrighted [year] [name of copyright owner]" - * - * If you wish your version of this file to be governed by only the CDDL - * or only the GPL Version 2, indicate your decision by adding - * "[Contributor] elects to include this software in this distribution - * under the [CDDL or GPL Version 2] license." If you do not indicate a - * single choice of license, a recipient has the option to distribute - * your version of this file under either the CDDL, the GPL Version 2 or - * to extend the choice of license to its licensees as provided above. - * However, if you add GPL Version 2 code and therefore, elected the GPL - * Version 2 license, then the option applies only if the new code is - * made subject to such option by the copyright holder. - * - * Contributor(s): - */ - -// List of standard headers was taken in http://en.cppreference.com/w/c/header - -#include // Conditionally compiled macro that compares its argument to zero -#include // Functions to determine the type contained in character data -#include // Macros reporting error conditions -#include // Limits of float types -#include // Sizes of basic types -#include // Localization utilities -#include // Common mathematics functions -#include // Nonlocal jumps -#include // Signal handling -#include // Variable arguments -#include // Common macro definitions -#include // Input/output -#include // String handling -#include // General utilities: memory management, program utilities, string conversions, random numbers -#include // Time/date utilities -#include // (since C95) Alternative operator spellings -#include // (since C95) Extended multibyte and wide character utilities -#include // (since C95) Wide character classification and mapping utilities -#ifdef _STDC_C99 -#include // (since C99) Complex number arithmetic -#include // (since C99) Floating-point environment -#include // (since C99) Format conversion of integer types -#include // (since C99) Boolean type -#include // (since C99) Fixed-width integer types -#include // (since C99) Type-generic math (macros wrapping math.h and complex.h) -#endif -#ifdef _STDC_C11 -#include // (since C11) alignas and alignof convenience macros -#include // (since C11) Atomic types -#include // (since C11) noreturn convenience macros -#include // (since C11) Thread library -#include // (since C11) UTF-16 and UTF-32 character utilities -#endif diff --git a/nbproject/private/configurations.xml b/nbproject/private/configurations.xml deleted file mode 100644 index 641e381..0000000 --- a/nbproject/private/configurations.xml +++ /dev/null @@ -1,75 +0,0 @@ - - - Makefile - - - - localhost - 2 - - - - - - - - - - - - - - - gdb - - - - sudo "${OUTPUT_PATH}" - "${OUTPUT_PATH}" - sudo "${OUTPUT_PATH}" - - sudo "${OUTPUT_PATH}" - - true - 1 - 0 - 0 - - - - - - - localhost - 2 - - - - - - - - - - - - - - - gdb - - - - "${OUTPUT_PATH}" - - "${OUTPUT_PATH}" - - true - 0 - 0 - - - - - - diff --git a/nbproject/private/cpp_standard_headers_indexer.cpp b/nbproject/private/cpp_standard_headers_indexer.cpp deleted file mode 100644 index 04f6fa6..0000000 --- a/nbproject/private/cpp_standard_headers_indexer.cpp +++ /dev/null @@ -1,135 +0,0 @@ -/* - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. - * - * Copyright (c) 2016 Oracle and/or its affiliates. All rights reserved. - * - * Oracle and Java are registered trademarks of Oracle and/or its affiliates. - * Other names may be trademarks of their respective owners. - * - * The contents of this file are subject to the terms of either the GNU - * General Public License Version 2 only ("GPL") or the Common - * Development and Distribution License("CDDL") (collectively, the - * "License"). You may not use this file except in compliance with the - * License. You can obtain a copy of the License at - * http://www.netbeans.org/cddl-gplv2.html - * or nbbuild/licenses/CDDL-GPL-2-CP. See the License for the - * specific language governing permissions and limitations under the - * License. When distributing the software, include this License Header - * Notice in each file and include the License file at - * nbbuild/licenses/CDDL-GPL-2-CP. Oracle designates this - * particular file as subject to the "Classpath" exception as provided - * by Oracle in the GPL Version 2 section of the License file that - * accompanied this code. If applicable, add the following below the - * License Header, with the fields enclosed by brackets [] replaced by - * your own identifying information: - * "Portions Copyrighted [year] [name of copyright owner]" - * - * If you wish your version of this file to be governed by only the CDDL - * or only the GPL Version 2, indicate your decision by adding - * "[Contributor] elects to include this software in this distribution - * under the [CDDL or GPL Version 2] license." If you do not indicate a - * single choice of license, a recipient has the option to distribute - * your version of this file under either the CDDL, the GPL Version 2 or - * to extend the choice of license to its licensees as provided above. - * However, if you add GPL Version 2 code and therefore, elected the GPL - * Version 2 license, then the option applies only if the new code is - * made subject to such option by the copyright holder. - * - * Contributor(s): - */ - -// List of standard headers was taken in http://en.cppreference.com/w/cpp/header - -#include // General purpose utilities: program control, dynamic memory allocation, random numbers, sort and search -#include // Functions and macro constants for signal management -#include // Macro (and function) that saves (and jumps) to an execution context -#include // Handling of variable length argument lists -#include // Runtime type information utilities -#include // std::bitset class template -#include // Function objects, designed for use with the standard algorithms -#include // Various utility components -#include // C-style time/date utilites -#include // typedefs for types such as size_t, NULL and others -#include // Low-level memory management utilities -#include // Higher level memory management utilities -#include // limits of integral types -#include // limits of float types -#include // standardized way to query properties of arithmetic types -#include // Exception handling utilities -#include // Standard exception objects -#include // Conditionally compiled macro that compares its argument to zero -#include // Macro containing the last error number -#include // functions to determine the type contained in character data -#include // functions for determining the type of wide character data -#include // various narrow character string handling functions -#include // various wide and multibyte string handling functions -#include // std::basic_string class template -#include // std::vector container -#include // std::deque container -#include // std::list container -#include // std::set and std::multiset associative containers -#include // std::map and std::multimap associative containers -#include // std::stack container adaptor -#include // std::queue and std::priority_queue container adaptors -#include // Algorithms that operate on containers -#include // Container iterators -#include // Common mathematics functions -#include // Complex number type -#include // Class for representing and manipulating arrays of values -#include // Numeric operations on values in containers -#include // forward declarations of all classes in the input/output library -#include // std::ios_base class, std::basic_ios class template and several typedefs -#include // std::basic_istream class template and several typedefs -#include // std::basic_ostream, std::basic_iostream class templates and several typedefs -#include // several standard stream objects -#include // std::basic_fstream, std::basic_ifstream, std::basic_ofstream class templates and several typedefs -#include // std::basic_stringstream, std::basic_istringstream, std::basic_ostringstream class templates and several typedefs -#include // std::strstream, std::istrstream, std::ostrstream(deprecated) -#include // Helper functions to control the format or input and output -#include // std::basic_streambuf class template -#include // C-style input-output functions -#include // Localization utilities -#include // C localization utilities -#include // empty header. The macros that appear in iso646.h in C are keywords in C++ -#if __cplusplus >= 201103L -#include // (since C++11) std::type_index -#include // (since C++11) Compile-time type information -#include // (since C++11) C++ time utilites -#include // (since C++11) std::initializer_list class template -#include // (since C++11) std::tuple class template -#include // (since C++11) Nested allocator class -#include // (since C++11) fixed-size types and limits of other types -#include // (since C++11) formatting macros , intmax_t and uintmax_t math and conversions -#include // (since C++11) defines std::error_code, a platform-dependent error code -#include // (since C++11) C-style Unicode character conversion functions -#include // (since C++11) std::array container -#include // (since C++11) std::forward_list container -#include // (since C++11) std::unordered_set and std::unordered_multiset unordered associative containers -#include // (since C++11) std::unordered_map and std::unordered_multimap unordered associative containers -#include // (since C++11) Random number generators and distributions -#include // (since C++11) Compile-time rational arithmetic -#include // (since C++11) Floating-point environment access functions -#include // (since C++11) Unicode conversion facilities -#include // (since C++11) Classes, algorithms and iterators to support regular expression processing -#include // (since C++11) Atomic operations library -#include // (since C++11)(deprecated in C++17) simply includes the header -#include // (since C++11)(deprecated in C++17) simply includes the headers (until C++17) (since C++17) and : the overloads equivalent to the contents of the C header tgmath.h are already provided by those headers -#include // (since C++11)(deprecated in C++17) defines one compatibility macro constant -#include // (since C++11)(deprecated in C++17) defines one compatibility macro constant -#include // (since C++11) std::thread class and supporting functions -#include // (since C++11) mutual exclusion primitives -#include // (since C++11) primitives for asynchronous computations -#include // (since C++11) thread waiting conditions -#endif -#if __cplusplus >= 201300L -#include // (since C++14) shared mutual exclusion primitives -#endif -#if __cplusplus >= 201500L -#include // (since C++17) std::any class template -#include // (since C++17) std::optional class template -#include // (since C++17) std::variant class template -#include // (since C++17) Polymorphic allocators and memory resources -#include // (since C++17) std::basic_string_view class template -#include // (since C++17) Predefined execution policies for parallel versions of the algorithms -#include // (since C++17) std::path class and supporting functions -#endif diff --git a/nbproject/private/launcher.properties b/nbproject/private/launcher.properties deleted file mode 100644 index 3edc2d8..0000000 --- a/nbproject/private/launcher.properties +++ /dev/null @@ -1,42 +0,0 @@ -# Launchers File syntax: -# -# [Must-have property line] -# launcher1.runCommand= -# [Optional extra properties] -# launcher1.displayName= -# launcher1.hide= -# launcher1.buildCommand= -# launcher1.runDir= -# launcher1.runInOwnTab= -# launcher1.symbolFiles= -# launcher1.env.= -# (If this value is quoted with ` it is handled as a native command which execution result will become the value) -# [Common launcher properties] -# common.runDir= -# (This value is overwritten by a launcher specific runDir value if the latter exists) -# common.env.= -# (Environment variables from common launcher are merged with launcher specific variables) -# common.symbolFiles= -# (This value is overwritten by a launcher specific symbolFiles value if the latter exists) -# -# In runDir, symbolFiles and env fields you can use these macroses: -# ${PROJECT_DIR} - project directory absolute path -# ${OUTPUT_PATH} - linker output path (relative to project directory path) -# ${OUTPUT_BASENAME}- linker output filename -# ${TESTDIR} - test files directory (relative to project directory path) -# ${OBJECTDIR} - object files directory (relative to project directory path) -# ${CND_DISTDIR} - distribution directory (relative to project directory path) -# ${CND_BUILDDIR} - build directory (relative to project directory path) -# ${CND_PLATFORM} - platform name -# ${CND_CONF} - configuration name -# ${CND_DLIB_EXT} - dynamic library extension -# -# All the project launchers must be listed in the file! -# -# launcher1.runCommand=... -# launcher2.runCommand=... -# ... -# common.runDir=... -# common.env.KEY=VALUE - -# launcher1.runCommand= \ No newline at end of file diff --git a/nbproject/private/private.xml b/nbproject/private/private.xml deleted file mode 100644 index aef7ea3..0000000 --- a/nbproject/private/private.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - 1 - 0 - - - - - - diff --git a/nbproject/project.properties b/nbproject/project.properties deleted file mode 100644 index de9ff56..0000000 --- a/nbproject/project.properties +++ /dev/null @@ -1,2 +0,0 @@ -#Sat Oct 21 15:56:01 CEST 2017 -project.license=mit diff --git a/nbproject/project.xml b/nbproject/project.xml deleted file mode 100644 index b9773ad..0000000 --- a/nbproject/project.xml +++ /dev/null @@ -1,30 +0,0 @@ - - - org.netbeans.modules.cnd.makeproject - - - uFTP - c - - h - UTF-8 - - - library - - - - Debug - 1 - - - Release - 1 - - - - false - - - - diff --git a/testNotes.txt b/testNotes.txt index 95e9809..26c89c6 100644 --- a/testNotes.txt +++ b/testNotes.txt @@ -8,6 +8,7 @@ sudo apt-get install libssl-dev #Remove password from a certificate openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365 openssl rsa -in key.pem -out newkey.pem +handle SIGPIPE nostop noprint pass #Testing ssl