Bug #53851 [Opn->Asn]: socket_create protocol int (IPv6)

From: Date: Tue, 15 Mar 2011 09:44:48 +0000
Subject: Bug #53851 [Opn->Asn]: socket_create protocol int (IPv6)
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-159486@lists.php.net to get a copy of this message
Edit report at http://bugs.php.net/bug.php?id=53851&edit=1

 ID:                 53851
 Updated by:         cataphract@php.net
 Reported by:        spandit at stealth dot net
 Summary:            socket_create protocol int (IPv6)
-Status:             Open
+Status:             Assigned
 Type:               Bug
 Package:            Sockets related
 Operating System:   FreeBSD 8.x
 PHP Version:        5.3.5
-Assigned To:        
+Assigned To:        cataphract
 Block user comment: N
 Private report:     N



Previous Comments:
------------------------------------------------------------------------
[2011-01-28 00:36:04] aharvey@php.net

I don't think there's any great need to put specific IPv6 protocol
information into the manual page, but someone familiar with ICMP
should have a look at the other potential bug.

------------------------------------------------------------------------
[2011-01-27 18:45:05] spandit at stealth dot net

I'd also like to add that the full IPv6 packet is not passed to
socket_read() in 
this particular test.

socket_read() sees:
800046e200000000486f776479
810045e200000000486f776479

tcpdump sees:

12:44:30.720191 IP6 (hlim 64, next-header ICMPv6 (58) payload length:
13) ::1 > 
::1: [icmp6 sum ok] ICMP6, echo request, length 13, seq 0
     0x0000:  6000 0000 000d 3a40 0000 0000 0000 0000  `.....:@........
     0x0010:  0000 0000 0000 0001 0000 0000 0000 0000  ................
     0x0020:  0000 0000 0000 0001 8000 46e2 0000 0000  ..........F.....
     0x0030:  486f 7764 79                             Howdy
12:44:30.720227 IP6 (hlim 64, next-header ICMPv6 (58) payload length:
13) ::1 > 
::1: [icmp6 sum ok] ICMP6, echo reply, length 13, seq 0
     0x0000:  6000 0000 000d 3a40 0000 0000 0000 0000  `.....:@........
     0x0010:  0000 0000 0000 0001 0000 0000 0000 0000  ................
     0x0020:  0000 0000 0000 0001 8100 45e2 0000 0000  ..........E.....
     0x0030:  486f 7764 79                             Howdy

------------------------------------------------------------------------
[2011-01-26 23:39:29] spandit at stealth dot net

Discard;  Perhaps the doc should just be updated to include some IPv6
protocols 
(e.g. ipv6-icmp)

------------------------------------------------------------------------
[2011-01-26 23:36:22] spandit at stealth dot net

Description:
------------
---
From manual page: http://www.php.net/function.socket-create#Parameters
---

The protocol section needs to be updated to account for the IPv6
protocol numbers.  
For example, calling getprotobyname('icmp') returns 1; or users would
enter '1' 
for ICMP.  For IPv6, this would be '58'. To open a raw socket for a
ICMPv6, the 
command would be: socket_create(AF_INET6, SOCK_RAW, '58');


Test script:
---------------
<?php

$package = "\x08\x00\x7d\x4b\x00\x00\x00\x00Howdy";

// Write fails in this test
$socket = socket_create(AF_INET6, SOCK_RAW, 1);
socket_write($socket, $package, strlen($package));

// Write successful in this test
$socket = socket_create(AF_INET6, SOCK_RAW, 58);
socket_write($socket, $package, strlen($package)); 

Expected result:
----------------
See above

Actual result:
--------------
See above


------------------------------------------------------------------------



-- 
Edit this bug report at http://bugs.php.net/bug.php?id=53851&edit=1


Thread (1 message)

  • cataphract@php.net
  • Unknown Message
    • cataphract@php.net
« previous php.bugs (#159486) next »