Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*LOU JEREMY et BASILE MAUVIEUX*/
- <?php
- $host = "172.19.3.32";
- $port = 25003;
- $message=" ";
- $message = strtolower(trim(fgets(STDIN)));
- $tmsg=explode(" ", $message);
- if($tmsg[0]=="stop" || $tmsg[0]=="put" || $tmsg[0]=="get")
- {
- // create socket TCP + données hors bande
- $socket = socket_create(AF_INET, SOCK_STREAM, 0) or die("Could not create socket\n");
- // connect to server
- $result = socket_connect($socket, $host, $port) or die("Could not connect to server\n");
- while(true)
- {
- // send string to server
- socket_write($socket, $message, strlen($message)) or die("Could not send data to server\n");
- if($tmsg[0]==="put")
- {
- $file=fopen($tmsg[1], "r");
- if($file==FALSE)
- echo "erreur fopen";
- do
- {
- socket_read($socket, 1024);
- $fmsg=fread($file, 1024);
- socket_write($socket, $fmsg, strlen($fmsg)) or die ("Could not send data to server");
- }
- while($fmsg==1024);
- fclose($file);
- }
- if($tmsg[0]=="get")
- {
- $file=fopen(basename($tmsg[1]), "w");
- if($file==FALSE)
- echo "erreur fopen";
- do
- {
- $input=socket_read($socket, 1024) or die ("Could not read input");
- $fmsg=fwrite($file, $input, 1024);
- if($fmsg==FALSE)
- echo "erreur fwrite";
- socket_write($socket, $input);
- }
- while($fmsg==1024);
- fclose($file);
- }
- echo "Message To server :".$message."\n";
- // get server response
- $result = socket_read ($socket, 1024) or die("Could not read server response\n");
- echo "Reply From Server :".$result."\n";
- if($tmsg[0]=="stop")
- {
- break;
- }
- $message = strtolower(trim(fgets(STDIN)));
- $tmsg=explode(" ", $message);
- if($tmsg[0]=="stop")
- {
- socket_write($socket, $message, strlen($message));
- socket_read($socket, 1024);
- break;
- }
- if($tmsg[0]!="put" && $tmsg[0]!="get")
- {
- echo "Not a valid command\n";
- break;
- }
- }
- // close socket
- socket_close($socket);
- }
- else
- {
- echo "Not a valid command\n";
- }
- /*LOU JEREMY et BASILE MAUVIEUX*/
- <?php
- $host = "172.19.3.32";
- $port = 25003;
- $nbMaxClient = 10;
- // don't timeout!
- set_time_limit(0);
- // create socket
- $socket = socket_create(AF_INET, SOCK_STREAM, 0) or die("Could not create socket\n");
- // bind socket to port
- $result = socket_bind($socket, $host, $port) or die("Could not bind to socket\n");
- // start listening for connections
- $result = socket_listen($socket, $nbMaxClient) or die("Could not set up socket listener\n");
- while(true)
- {
- // accept incoming connections
- // spawn another socket to handle communication
- $spawn = socket_accept($socket) or die("Could not accept incoming connection\n");
- // read client input and clean up input string
- while(true)
- {
- $input = socket_read($spawn, 1024) or die("Could not read input\n");
- socket_write($spawn, $input);
- $tmsg=explode(" ", $input);
- if($tmsg[0]==="put")
- {
- $file=fopen(basename($tmsg[1]), "w");
- if($file==FALSE)
- echo "erreur fopen";
- do
- {
- $input=socket_read($spawn, 1024) or die ("Could not read input");
- echo "\n j'ouvre ".basename($tmsg[1])."\n je rentre les donnees ".$input."\n";
- $fmsg=fwrite($file, $input, 1024);
- if($fmsg===FALSE)
- echo "erreur fwrite";
- socket_write($spawn, $input);
- }
- while($fmsg==1024);
- fclose($file);
- }
- if($tmsg[0]=="get")
- {
- $file=fopen($tmsg[1], "r");
- if($file==FALSE)
- echo "erreur fopen";
- do
- {
- socket_read($spawn, 1024);
- $fmsg=fread($file, 1024);
- socket_write($spawn, $fmsg, strlen($fmsg)) or die ("Could not send data to server");
- }
- while($fmsg==1024);
- fclose($file);
- }
- if($tmsg[0]=="stop")
- {
- socket_getpeername($spawn, $addr, $pport);
- echo("Client Message : ".$input." de ".$addr.":".$pport."\n");
- $input = trim($input);
- $tmsg=explode(" ", $input);
- //send back
- socket_write($spawn, $input, strlen ($input)) or die("Could not write output\n");
- if($tmsg[0]=="stop")
- {
- break 2;
- }
- }
- }
- }
- // close sockets
- socket_close($spawn);
- socket_close($socket);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement