Annotation of embedaddon/php/ext/sockets/tests/unixloop.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: Unix domain socket Loopback test
3: --SKIPIF--
4: <?php
5: if (!extension_loaded('sockets')) {
6: die('skip sockets extension not available.');
7: }
8: ?>
9: --FILE--
10: <?php
11: $sock_path = sprintf("/tmp/%s.sock", uniqid());
12:
13: if (file_exists($sock_path))
14: die('Temporary socket already exists.');
15:
16: /* Setup socket server */
17: $server = socket_create(AF_UNIX, SOCK_STREAM, 0);
18: if (!$server) {
19: die('Unable to create AF_UNIX socket [server]');
20: }
21: if (!socket_bind($server, $sock_path)) {
22: die("Unable to bind to $sock_path");
23: }
24: if (!socket_listen($server, 2)) {
25: die('Unable to listen on socket');
26: }
27:
28: /* Connect to it */
29: $client = socket_create(AF_UNIX, SOCK_STREAM, 0);
30: if (!$client) {
31: die('Unable to create AF_UNIX socket [client]');
32: }
33: if (!socket_connect($client, $sock_path)) {
34: die('Unable to connect to server socket');
35: }
36:
37: /* Accept that connection */
38: $socket = socket_accept($server);
39: if (!$socket) {
40: die('Unable to accept connection');
41: }
42:
43: socket_write($client, "ABCdef123\n");
44:
45: $data = socket_read($socket, 10, PHP_BINARY_READ);
46: var_dump($data);
47:
48: socket_close($client);
49: socket_close($socket);
50: socket_close($server);
51: @unlink($sock_path);
52: ?>
53: --EXPECT--
54: string(10) "ABCdef123
55: "
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>