diff --git a/miniShell/miniShell.cpp b/miniShellSRC/miniShell.cpp similarity index 100% rename from miniShell/miniShell.cpp rename to miniShellSRC/miniShell.cpp diff --git a/miniShell/runMiniShell.cpp b/miniShellSRC/runMiniShell.cpp similarity index 100% rename from miniShell/runMiniShell.cpp rename to miniShellSRC/runMiniShell.cpp diff --git a/src/main.cpp b/src/main.cpp index d94713d2d1226176e67dabcefa56977d6f3c24e3..9463b574a7420a36983039c2ac29a66170c55271 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -14,7 +14,7 @@ int main(int argc, char *argv[]) { SubMessage serverReceive, resposta; string service, message, command, parameter; char *buff, *currentPath, *receiptMessage = (char*)malloc(sizeof(char*)*68); - int socket, sendSize, receiptSize; + int sendSize, receiptSize; long size; if(argc != 2){ // Testa o número de parâmetros de estrada do programa. @@ -25,9 +25,9 @@ int main(int argc, char *argv[]) { service = argv[1]; // Estabelece a conexão - socket = openRawSocket("eth0"); + soquete = openRawSocket("eth0"); // Verifica se a conexão socket deu certo - if(socket == -1){ + if(soquete == -1){ cout << "Problemas com o Socket." << endl; return 0; } @@ -48,13 +48,15 @@ int main(int argc, char *argv[]) { parameter = ""; cin >> parameter; lsMini(parameter, currentPath); - } - else if(command == "cd"){ + }else if(command == "cd"){ cin >> parameter; cdMini(parameter); - } else if(command == "rcd"){ + }else if(command == "rcd"){ cin >> parameter; mainMessage.sendCD((unsigned char*)(parameter.c_str())); + }else if(command == "send"){ + cin >> parameter; + send(soquete,parameter.c_str(),64, 0); } } }else if(service == "server"){ diff --git a/src/messages.cpp b/src/messages.cpp index 76fe10fa97cb843ed5950bedd03febcd73a0aa08..a634445ec693842c4cc8a2b59656eb18240d63de 100644 --- a/src/messages.cpp +++ b/src/messages.cpp @@ -15,9 +15,9 @@ int Message::sendCD(unsigned char* dirName){ ufds[0].events = POLLIN; changeDir.setData(dirName,3,0); - +cout << changeDir.getType() << " - " << changeDir.getSize() << endl; while(!success){ - error = send(soquete, changeDir.objToString(), changeDir.getSize()+4, 0); + error = send(soquete, changeDir.objToString(), 68, 0); if (error == -1){ cout << "Erro ao tentar mudar de diretório (messages.cpp::sendCD)" << endl; } diff --git a/src/submessages.cpp b/src/submessages.cpp index 9c32a245d908187ec72d98039a466c617762624d..ec91cc8b2f2c16a8cb1a4b35d1f77cf369ebcc1d 100644 --- a/src/submessages.cpp +++ b/src/submessages.cpp @@ -60,8 +60,8 @@ void SubMessage::setData(unsigned char* dataBody, int type, int seq){ data[i] = dataBody[i]; } - cout << tamanho << endl; - setSizSeqTyp(tamanho, type, seq); + setSizSeqTyp(tamanho, seq, type); + setParity(); } @@ -78,11 +78,11 @@ int SubMessage::getSize(){ } int SubMessage::getSeq(){ - return((sizSeqTyp >> 4) & 0x3F); //XXXXXX111111XXXX + return((sizSeqTyp >> 4) & 0x003F); //XXXXXX111111XXXX } int SubMessage::getType(){ - return(sizSeqTyp & 0xF); //XXXXXXXXXXXX1111 + return(sizSeqTyp & 0x000F); //XXXXXXXXXXXX1111 } unsigned char SubMessage::getParity(){