diff --git a/20210574.tar.gz b/20210574.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..cdb7b3cf0df69dd920ac3998da1f705ce0999497 Binary files /dev/null and b/20210574.tar.gz differ diff --git a/received/naruto.jpg b/bfgbgnujhm.jpg similarity index 100% rename from received/naruto.jpg rename to bfgbgnujhm.jpg diff --git a/received/caco.png b/caco.png similarity index 100% rename from received/caco.png rename to caco.png diff --git a/gorillaz.mp4 b/gorillaz.mp4 new file mode 100644 index 0000000000000000000000000000000000000000..f46e81c71e3a5fa3317746f086226d42a0dc0b3a Binary files /dev/null and b/gorillaz.mp4 differ diff --git a/headers/server.h b/headers/server.h index f6e6e0fe1f62bac9c8849ab93433e272867a9539..4511db5b85d99c3688e577b471de2d871ff96e12 100644 --- a/headers/server.h +++ b/headers/server.h @@ -101,11 +101,11 @@ int server::send_error(frame *fReceive, string msg) { int errorSent = socket->send_frame(error); if (errorSent == -1) { - // cout << "Falha ao enviar o erro\n"; -> log + cout << "Falha ao enviar o erro\n"; //-> log return -1; } - // cout << "Erro enviado\n"; -> log + cout << "Erro enviado\n"; //-> log return errorSent; } @@ -203,8 +203,8 @@ int server::next_tipo_midia(frame *f) { UL server::chk_available_size() { struct statvfs st; if (statvfs(FILE_DESTINATION, &st) == -1) { - // cout << "Erro no statvfs, abortado\n";->log - // send_error(); + cout << "Erro no statvfs, abortado\n";//->log + //send_error(); return -1; } @@ -224,11 +224,11 @@ int server::receive_file_size(frame *f) { if (fileSize > availSize * 0.9) { cout << BOLDMAGENTA << "\t--Tamanho do arquivo muito grande, abortado--\n" << RESET; - // send_error(); + //send_error(); return 0; } - // cout << "Espaco suficiente em disco\n"; ->log + cout << "Espaco suficiente em disco\n"; //->log return 1; } @@ -238,7 +238,7 @@ bool server::create_received_dir() { // Check if the directory exists struct stat info; if (stat(FILE_DESTINATION, &info) == 0 && (info.st_mode & S_IFDIR)) { - // cout << "Diretorio ja existe\n"; ->log + cout << "Diretorio ja existe\n"; //->log return true; } @@ -248,7 +248,7 @@ bool server::create_received_dir() { return false; } - // cout << "Diretorio criado com sucesso\n"; ->log + cout << "Diretorio criado com sucesso\n"; //->log return true; } @@ -340,7 +340,7 @@ frame *server::receive_frame_socket() { } while (fReceive == NULL && retries < NUM_RETRIES); if (fReceive == NULL && retries == NUM_RETRIES) { - // cout << "Desisti de receber o frame\n"; //->log + cout << "Desisti de receber o frame\n"; //->log return NULL; } @@ -352,16 +352,16 @@ queue<frame *> server::receive_frames_window(int lastSeq) { frame *f; do { - // cout << "Recebendo frame\n"; + cout << "Recebendo frame\n"; if (!(f = receive_frame_socket())) { break; } - // cout << "Frame recebido:\n"; + cout << "Frame recebido:\n"; int tipo = f->get_tipo(); - // f->imprime(DEC); + f->imprime(DEC); // Adiciona o frame de fim de transmissao if (tipo == FIMT) { - // cout << "Frame FIMT recebido\n"; + cout << "Frame FIMT recebido\n"; frames_queue.push(f); break; } @@ -420,11 +420,11 @@ void server::start_receveing_message() { // Fica ouvindo o cliente ate receber um FIMT do { - // cout << "Recebendo frames\n"; + cout << "Recebendo frames\n"; queue<frame *> frames = receive_frames_window(lastSeq); - if (frames.empty()) { break; } + if (frames.empty()) { cout << "Timeout"; break; } - // cout << "Quantidade de frames na janela: " << frames.size() << "\n"; + cout << "Quantidade de frames na janela: " << frames.size() << "\n"; // Ve o que faz com cada frame de acordo com o tipo while (!frames.empty()) { @@ -441,9 +441,9 @@ void server::start_receveing_message() { client_answer.push(create_ack_nack(ACK, f->get_seq())); } - // cout << "Frame recebido: \n"; ->log - // f->imprime(DEC); - // cout << "\n"; + cout << "Frame recebido: \n"; //->log + f->imprime(DEC); + cout << "\n"; int tipo = f->get_tipo(); int tam = f->get_tam(); @@ -451,7 +451,8 @@ void server::start_receveing_message() { switch (tipo) { case FIMT: - // cout << "Encerrou a transmissao\n"; + cout << "Encerrou a transmissao\n"; + file.close(); continueTransmission = 0; break; @@ -477,30 +478,32 @@ void server::start_receveing_message() { lastSeq = f->get_seq(); } - // cout << "Recebeu todos os frames de uma janela\n"; + cout << "Recebeu todos os frames de uma janela\n"; // Envia a reposta ao cliente - // cout << "Enviando acks e nacks para o cliente\n"; + cout << "Enviando acks e nacks para o cliente\n"; while (!client_answer.empty()) { frame *f_answer = client_answer.front(); client_answer.pop(); if (socket->send_frame(f_answer) == -1) { - // cout << "Falha ao enviar a resposta\n"; ->log + cout << "Falha ao enviar a resposta\n"; //->log return; } - // if (f_answer->get_tipo() == NACK) - // cout << "NACK " << (int)f_answer->get_dado()[0] << " enviado\n"; + if (f_answer->get_tipo() == NACK) + cout << "NACK " << (int)f_answer->get_dado()[0] << " enviado\n"; - // else - // cout << "ACK " << (int)f_answer->get_dado()[0] << " enviado\n"; ->log + else + cout << "ACK " << (int)f_answer->get_dado()[0] << " enviado\n"; //->log } - // cout << "Todos os ACKs e NACKs foram enviados\n"; + cout << "Todos os ACKs e NACKs foram enviados\n"; } while (continueTransmission); + if ( continueTransmission ) { cout << "Falha\n"; return; } + if (tipo_data == TEXTO) cout << BOLDYELLOW << "\t--Mensagem recebida--\n " << BOLDWHITE << string(data.begin(), data.end()) << "\n" @@ -520,17 +523,17 @@ void server::run() { frame *fReceive; if (!(fReceive = socket->receive_frame())) { continue; } - // cout << "Frame recebido:" << endl; ->log - // fReceive->imprime(HEX); + cout << "Frame recebido:" << endl; //->log + fReceive->imprime(HEX); // Verifica se o frame eh de inicio de transmissao e se nao veio com erro int frameType = fReceive->get_tipo(); if (frameType != INIT) { - // cout << "Frame ignorado, n eh INIT\n"; ->log + cout << "Frame ignorado, n eh INIT\n"; //->log continue; } - // cout << "Frame de INIT\n"; ->log + cout << "Frame de INIT\n"; //->log if (!fReceive->chk_crc8()) { send_nack(fReceive); continue; diff --git a/received/gorillaz.mp4 b/received/gorillaz.mp4 new file mode 100644 index 0000000000000000000000000000000000000000..90c29273c9bbc131a80a0b3e410639b5f972f010 Binary files /dev/null and b/received/gorillaz.mp4 differ diff --git a/received/puparia.3gp b/received/puparia.3gp new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/received/puparia.mp4 b/received/puparia.mp4 new file mode 100644 index 0000000000000000000000000000000000000000..476affca680071ddfecd6d600ca265fb3afe3279 Binary files /dev/null and b/received/puparia.mp4 differ