execution commande serveur


SUBMITTED BY: Guest

DATE: June 14, 2013, 12:08 p.m.

FORMAT: C++

SIZE: 1.8 kB

HITS: 5262

  1. while (strcmp(cmd, "exit")!=0)
  2. {
  3. if (recv(csock, cmd, TAILLECMD, 0)!=-1)
  4. {
  5. if (strcmp(cmd, "exit")==0)
  6. {
  7. cout << "\n\n Le Maître vient d'affranchir l'esclave\n\n" << endl;
  8. }
  9. else
  10. {
  11. cout << "\nLe Maître souhaite éxécuter la commande : " << cmd << endl;
  12. FILE *ptr;
  13. if ((ptr = popen(cmd, "r")) != NULL)
  14. {
  15. if (fgets(buf1, TAILLECMD, ptr) == NULL)
  16. {
  17. strcat(buf,no_stdout);
  18. }
  19. else
  20. {
  21. while (fgets(buf1, TAILLECMD, ptr) != NULL)
  22. {
  23. strcat(buf,buf1);
  24. }
  25. pclose(ptr);
  26. }
  27. }
  28. else
  29. {
  30. fprintf(stderr, "Erreur avec popen\n");
  31. exit(1);
  32. }
  33. cout << "\nL'esclave retourne le résultat de la commande : " << cmd << endl;
  34. send(csock, buf, TAILLECMD, 0);
  35. memset (buf, 0, sizeof (buf));
  36. cout << "\nL'esclave est en attente d'un ordre du Maître . . ." << endl;
  37. }
  38. }
  39. }

comments powered by Disqus