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