Skip to content
Snippets Groups Projects
Commit 0db79da1 authored by Eduardo Machado's avatar Eduardo Machado
Browse files

debugando rcd

parent 610f58ac
No related branches found
No related tags found
No related merge requests found
File moved
File moved
...@@ -14,7 +14,7 @@ int main(int argc, char *argv[]) { ...@@ -14,7 +14,7 @@ int main(int argc, char *argv[]) {
SubMessage serverReceive, resposta; SubMessage serverReceive, resposta;
string service, message, command, parameter; string service, message, command, parameter;
char *buff, *currentPath, *receiptMessage = (char*)malloc(sizeof(char*)*68); char *buff, *currentPath, *receiptMessage = (char*)malloc(sizeof(char*)*68);
int socket, sendSize, receiptSize; int sendSize, receiptSize;
long size; long size;
if(argc != 2){ // Testa o número de parâmetros de estrada do programa. if(argc != 2){ // Testa o número de parâmetros de estrada do programa.
...@@ -25,9 +25,9 @@ int main(int argc, char *argv[]) { ...@@ -25,9 +25,9 @@ int main(int argc, char *argv[]) {
service = argv[1]; service = argv[1];
// Estabelece a conexão // Estabelece a conexão
socket = openRawSocket("eth0"); soquete = openRawSocket("eth0");
// Verifica se a conexão socket deu certo // Verifica se a conexão socket deu certo
if(socket == -1){ if(soquete == -1){
cout << "Problemas com o Socket." << endl; cout << "Problemas com o Socket." << endl;
return 0; return 0;
} }
...@@ -48,13 +48,15 @@ int main(int argc, char *argv[]) { ...@@ -48,13 +48,15 @@ int main(int argc, char *argv[]) {
parameter = ""; parameter = "";
cin >> parameter; cin >> parameter;
lsMini(parameter, currentPath); lsMini(parameter, currentPath);
} }else if(command == "cd"){
else if(command == "cd"){
cin >> parameter; cin >> parameter;
cdMini(parameter); cdMini(parameter);
}else if(command == "rcd"){ }else if(command == "rcd"){
cin >> parameter; cin >> parameter;
mainMessage.sendCD((unsigned char*)(parameter.c_str())); mainMessage.sendCD((unsigned char*)(parameter.c_str()));
}else if(command == "send"){
cin >> parameter;
send(soquete,parameter.c_str(),64, 0);
} }
} }
}else if(service == "server"){ }else if(service == "server"){
......
...@@ -15,9 +15,9 @@ int Message::sendCD(unsigned char* dirName){ ...@@ -15,9 +15,9 @@ int Message::sendCD(unsigned char* dirName){
ufds[0].events = POLLIN; ufds[0].events = POLLIN;
changeDir.setData(dirName,3,0); changeDir.setData(dirName,3,0);
cout << changeDir.getType() << " - " << changeDir.getSize() << endl;
while(!success){ while(!success){
error = send(soquete, changeDir.objToString(), changeDir.getSize()+4, 0); error = send(soquete, changeDir.objToString(), 68, 0);
if (error == -1){ if (error == -1){
cout << "Erro ao tentar mudar de diretório (messages.cpp::sendCD)" << endl; cout << "Erro ao tentar mudar de diretório (messages.cpp::sendCD)" << endl;
} }
......
...@@ -60,8 +60,8 @@ void SubMessage::setData(unsigned char* dataBody, int type, int seq){ ...@@ -60,8 +60,8 @@ void SubMessage::setData(unsigned char* dataBody, int type, int seq){
data[i] = dataBody[i]; data[i] = dataBody[i];
} }
cout << tamanho << endl; setSizSeqTyp(tamanho, seq, type);
setSizSeqTyp(tamanho, type, seq);
setParity(); setParity();
} }
...@@ -78,11 +78,11 @@ int SubMessage::getSize(){ ...@@ -78,11 +78,11 @@ int SubMessage::getSize(){
} }
int SubMessage::getSeq(){ int SubMessage::getSeq(){
return((sizSeqTyp >> 4) & 0x3F); //XXXXXX111111XXXX return((sizSeqTyp >> 4) & 0x003F); //XXXXXX111111XXXX
} }
int SubMessage::getType(){ int SubMessage::getType(){
return(sizSeqTyp & 0xF); //XXXXXXXXXXXX1111 return(sizSeqTyp & 0x000F); //XXXXXXXXXXXX1111
} }
unsigned char SubMessage::getParity(){ unsigned char SubMessage::getParity(){
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment