QString Funcoes::LeLog(QString caminhoArquivo, QString sessao, QString chave, QString valorDefault) { QString valorChave; //Se conseguir criar o arquivo if( CriarArquivo(caminhoArquivo) ) { QSettings arquivoINI(caminhoArquivo, QSettings::IniFormat); arquivoINI.beginGroup(sessao); valorChave = arquivoINI.value( chave, valorDefault ).toString(); arquivoINI.endGroup(); } QString retorno = valorChave; return retorno; }
bool Funcoes::GravaLog(QString caminhoArquivo, QString sessao, QString chave, QString valor) { //Se conseguir criar o arquivo if( CriarArquivo(caminhoArquivo) ) { QSettings arquivoINI(caminhoArquivo, QSettings::IniFormat); if( chave.isEmpty() ) chave = "chave" + QTime::currentTime().toString("hh_mm_ss_zzz"); arquivoINI.beginGroup(sessao); arquivoINI.setValue(chave, valor); arquivoINI.endGroup(); return true; } //Caso não consiga criar o arquivo return false; }
void *Options(void *opt) { int sock = *(int *) opt; usuario_t *user = NULL; char *path; char comando[50]; printf("SERVER: CHEGOU NA THREAD VERIFICACAO \n"); /* Cria a thread de autenticacao */ /* pthread_t autenticacao_tid; pthread_create(&autenticacao_tid, NULL, Autenticacao, array); pthread_join(autenticacao_tid, NULL); */ Autenticacao(sock, &user); if (user == NULL) { printf("Nous avons un problème"); pthread_exit(NULL); } sem_t *ptr_mem; printf("Cliente conectou!\n"); /* Acesso a sessao critica */ bzero(&sock, 0); char buf[MAX_SIZE_BUFFER]; bzero(buf, MAX_SIZE_BUFFER); strcpy(buf, "Conexao realizada com sucesso\n\n"); strcat(buf, printCaminho(user)); write(sock, buf, MAX_SIZE_BUFFER); do { printf("A espera de comandos...\n"); read(sock, comando, sizeof(comando)); printf("Comando recebido:|%s|\n", comando); char *comando_original = malloc(sizeof(char) * MAX_SIZE_BUFFER); strcpy(comando_original, comando); //comando; token = strtok(comando, " "); operation = token; if (strcmp(operation, "ls") == 0) { ListarConteudo(comando_original, sock, user); } else if (strcmp(operation, "mkdir") == 0) { CriarDiretorio(comando_original, sock, user); } else if (strcmp(operation, "touch") == 0) { CriarArquivo(comando_original, sock, user); } else if (strcmp(operation, "cat") == 0) { mostraConteudoArquivo(comando_original, sock, user); } else if (strcmp(operation, "rm") == 0) { Remover(comando_original, sock, user); } else if (strcmp(operation, "mv") == 0) { Mover(comando_original, user, sock); } else if (strcmp(operation, "cp") == 0) { Copiar(comando_original, user, sock); } else if (strcmp(operation, "cd") == 0) { Entrar(comando_original, user, sock); } else if (strcmp(operation, "clear") == 0) { system("clear"); char *ret = printCaminho(user); write(sock, ret, strlen(ret) + 1); } else if (strcmp(operation, "exit") == 0) { } else { ComandoErrado(sock, user); } free(comando_original); bzero(&sock, 0); } while (strcmp(comando, "exit") != 0); printf("fim da execucao do cliente\n"); }