Working on mutex

This commit is contained in:
Ugo Cirmignani
2019-03-02 14:44:39 +01:00
parent e991d46482
commit af998e9925
9 changed files with 8 additions and 8 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -632,11 +632,11 @@ int parseCommandList(ftpDataType * data, int socketId)
setDynamicStringDataType(&data->clients[socketId].listPath, data->clients[socketId].login.absolutePath.text, data->clients[socketId].login.absolutePath.textLen, &data->clients[socketId].memoryTable);
}
pthread_mutex_trylock(&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;
pthread_mutex_unlock(&data->clients[socketId].workerData.conditionMutex);
//pthread_mutex_unlock(&data->clients[socketId].workerData.conditionMutex);
pthread_cond_signal(&data->clients[socketId].workerData.conditionVariable);
return FTP_COMMAND_PROCESSED;
}
@ -663,11 +663,11 @@ int parseCommandNlst(ftpDataType * data, int socketId)
setDynamicStringDataType(&data->clients[socketId].nlistPath, data->clients[socketId].login.absolutePath.text, data->clients[socketId].login.absolutePath.textLen, &data->clients[socketId].memoryTable);
}
pthread_mutex_trylock(&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;
pthread_mutex_unlock(&data->clients[socketId].workerData.conditionMutex);
//pthread_mutex_unlock(&data->clients[socketId].workerData.conditionMutex);
pthread_cond_signal(&data->clients[socketId].workerData.conditionVariable);
return FTP_COMMAND_PROCESSED;
}
@ -688,11 +688,11 @@ int parseCommandRetr(ftpDataType * data, int socketId)
if (isSafePath == 1 &&
FILE_IsFile(data->clients[socketId].fileToRetr.text) == 1)
{
pthread_mutex_trylock(&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;
pthread_mutex_unlock(&data->clients[socketId].workerData.conditionMutex);
//pthread_mutex_unlock(&data->clients[socketId].workerData.conditionMutex);
pthread_cond_signal(&data->clients[socketId].workerData.conditionVariable);
return FTP_COMMAND_PROCESSED;
}
@ -718,11 +718,11 @@ int parseCommandStor(ftpDataType * data, int socketId)
if (isSafePath == 1)
{
pthread_mutex_trylock(&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;
pthread_mutex_unlock(&data->clients[socketId].workerData.conditionMutex);
//pthread_mutex_unlock(&data->clients[socketId].workerData.conditionMutex);
pthread_cond_signal(&data->clients[socketId].workerData.conditionVariable);
}
else