Bonjour,
Je suis en train de programmer un démon qui lance un serveur socket (io::socket) et attends les commandes d'un client.
Sur ce serveur, je voudrai créer un système d'acl (access list par adresse IP),
mais je ne sais pas comment déconnecter le client depuis le serveur.
Voilà mon code côté serveur :
Une idée ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 while (my $client = $server->accept()) { $client->autoflush(1); print $client "Bienvenue sur le serveur $serv_name\n"; my $hostinfo = gethostbyaddr($client->peeraddr); &set_log($log,"[Connexion de ".$client->peerhost."]","info"); print "[Connexion de ".$client->peerhost."]"; while (<$client>) { #print $client "\n--> $_\n"; &set_log($log,$client->peerhost." -> $_","info"); next unless /\S/; if (/quit|exit/i) { last; } elsif (/date|time/i) { printf $client "%s\n", scalar localtime; } elsif (/who/i ) { print $client `who 2>&1`; } else { print $client "Commandes:\n----------\n?\nhelp\ndate\nwho\n"; } } close $client; }
[edit] J'ai finalement trouver comment faire.
Partager