Annotation of embedaddon/php/ext/sockets/tests/mcast_ipv6_send.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: Multicast support: IPv6 send options
3: --SKIPIF--
4: <?php
5: if (!extension_loaded('sockets')) {
6: die('skip sockets extension not available.');
7: }
8: if (!defined('IPPROTO_IPV6')) {
9: die('skip IPv6 not available.');
10: }
11: $level = IPPROTO_IPV6;
12: $s = socket_create($domain, SOCK_DGRAM, SOL_UDP) or die("skip Can not create socket");
13: if (socket_set_option($s, $level, IP_MULTICAST_IF, 1) === false) {
14: die("skip interface 1 either doesn't exist or has no ipv6 address");
15: }
16: --FILE--
17: <?php
18: $domain = AF_INET6;
19: $level = IPPROTO_IPV6;
20: $s = socket_create($domain, SOCK_DGRAM, SOL_UDP) or die("err");
21:
22: echo "Setting IPV6_MULTICAST_TTL\n";
23: $r = socket_set_option($s, $level, IPV6_MULTICAST_HOPS, 9);
24: var_dump($r);
25: $r = socket_get_option($s, $level, IPV6_MULTICAST_HOPS);
26: var_dump($r);
27: echo "\n";
28:
29: echo "Setting IPV6_MULTICAST_LOOP\n";
30: $r = socket_set_option($s, $level, IPV6_MULTICAST_LOOP, 0);
31: var_dump($r);
32: $r = socket_get_option($s, $level, IPV6_MULTICAST_LOOP);
33: var_dump($r);
34: $r = socket_set_option($s, $level, IPV6_MULTICAST_LOOP, 1);
35: var_dump($r);
36: $r = socket_get_option($s, $level, IPV6_MULTICAST_LOOP);
37: var_dump($r);
38: echo "\n";
39:
40: echo "Setting IPV6_MULTICAST_IF\n";
41: echo "interface 0:\n";
42: $r = socket_set_option($s, $level, IPV6_MULTICAST_IF, 0);
43: var_dump($r);
44: $r = socket_get_option($s, $level, IPV6_MULTICAST_IF);
45: var_dump($r);
46: echo "interface 1:\n";
47: $r = socket_set_option($s, $level, IPV6_MULTICAST_IF, 1);
48: var_dump($r);
49: $r = socket_get_option($s, $level, IPV6_MULTICAST_IF);
50: var_dump($r);
51: echo "\n";
52:
53: --EXPECT--
54: Setting IPV6_MULTICAST_TTL
55: bool(true)
56: int(9)
57:
58: Setting IPV6_MULTICAST_LOOP
59: bool(true)
60: int(0)
61: bool(true)
62: int(1)
63:
64: Setting IPV6_MULTICAST_IF
65: interface 0:
66: bool(true)
67: int(0)
68: interface 1:
69: bool(true)
70: int(1)
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>