note 78475 added to function.socket-getsockname
| From: | not at valid dot com | Date: | Sat, 13 Oct 2007 19:35:30 +0000 |
| Subject: | note 78475 added to function.socket-getsockname | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-131371@lists.php.net to get a copy of this message | ||
Just a quick note:
I found socket_getsockname() is not IPv6 compatible or may just return some unexpected results?
<?php
Simple Code Example:
$socket = socket_create(AF_INET,SOCK_STREAM,SOL_TCP);
socket_bind($socket,'0.0.0.0',150);
socket_getsockname($socket, $IP, $PORT);
print $IP.":".$PORT."\n";
?>
This does not print $IP 127.0.0.1 or 192.168.1.1 or even 0.0.0.0 ... etc ... like you would expect
... in my case I receive 10.0.0.0 witch is not a valid port on my system using IPv5 and IPv6! Thus
you should rely on using the initial values of socket_bind() to get the local address.
Hope this helps...
----
Server IP: 69.147.83.197
Probable Submitter: 99.229.144.127
----
Manual Page -- http://www.php.net/manual/en/function.socket-getsockname.php
Edit -- https://master.php.net/note/edit/78475
Del: integrated -- https://master.php.net/note/delete/78475/integrated
Del: useless -- https://master.php.net/note/delete/78475/useless
Del: bad code -- https://master.php.net/note/delete/78475/bad+code
Del: spam -- https://master.php.net/note/delete/78475/spam
Del: non-english -- https://master.php.net/note/delete/78475/non-english
Del: in docs -- https://master.php.net/note/delete/78475/in+docs
Del: other reasons-- https://master.php.net/note/delete/78475
Reject -- https://master.php.net/note/reject/78475
Search -- https://master.php.net/manage/user-notes.php