php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #74699 Missing range for FILTER_FLAG_NO_RES_RANGE
Submitted: 2017-06-05 20:44 UTC Modified: 2017-07-18 20:21 UTC
From: brianlmoon@php.net Assigned:
Status: Re-Opened Package: Filter related
PHP Version: 7.1.5 OS: Linux
Private report: No CVE-ID: None
Have you experienced this issue?
Rate the importance of this bug to you:

 [2017-06-05 20:44 UTC] brianlmoon@php.net
Description:
------------
The patch applied for https://bugs.php.net/bug.php?id=72972 removed the 240.0.0.0/4 block from the reserved list. 

RFC 6890 [https://tools.ietf.org/html/rfc6890] calls out 240.0.0.0/4 as a "Reserved" block. Bug https://bugs.php.net/bug.php?id=73653 mistakenly claimed that RFC 6890 does not list this as a reserved block. You will find it on page 12 of that RFC.



Test script:
---------------
$return = filter_var("224.0.0.2", FILTER_VALIDATE_IP, FILTER_FLAG_NO_RES_RANGE);
var_dump($return);


Expected result:
----------------
bool(false)


Actual result:
--------------
string(9) "224.0.0.2"

Patches

Add a Patch

Pull Requests

Pull requests:

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2017-06-06 15:36 UTC] cmb@php.net
-Status: Open +Status: Verified
 [2017-06-06 15:36 UTC] cmb@php.net
> Bug https://bugs.php.net/bug.php?id=73653 mistakenly claimed
> that RFC 6890 does not list this as a reserved block. You will
> find it on page 12 of that RFC.

Indeed, you're right.
 [2017-06-06 15:40 UTC] cmb@php.net
-Status: Verified +Status: Not a bug -Assigned To: +Assigned To: cmb
 [2017-06-06 15:40 UTC] cmb@php.net
> Indeed, you're right.

No, nonsense. 240.0.0.0/4 is reserved, but 224.0.0.0/4 is not
reserved. Therefore the behavior of your test script is expected.
 [2017-06-06 16:07 UTC] brianlmoon@php.net
-Status: Not a bug +Status: Re-Opened
 [2017-06-06 16:07 UTC] brianlmoon@php.net
I apologize for mixing up those ranges.

Nevertheless, the 224.0.0.0/4 range is reserved for multicast.

"The range of addresses between 224.0.0.0 and 224.0.0.255, inclusive,
is reserved for the use of routing protocols and other low-level
topology discovery or maintenance protocols, such as gateway discovery
and group membership reporting.  Multicast routers should not forward
any multicast datagram with destination addresses in this range,
regardless of its TTL."

https://www.iana.org/assignments/multicast-addresses/multicast-addresses.xhtml
 [2017-06-06 16:38 UTC] cmb@php.net
-Assigned To: cmb +Assigned To:
 [2017-06-07 11:37 UTC] andrew dot nester dot dev at gmail dot com
I've just added PR fixing this issue.
 [2017-07-18 20:18 UTC] nikic@php.net
Automatic comment on behalf of andrew.nester.dev@gmail.com
Revision: http://git.php.net/?p=php-src.git;a=commit;h=afc22828ea036814e6a044083dade065b4c858c9
Log: Fixed #74699 - Broken ArrayIterator unserializing
 [2017-07-18 20:18 UTC] nikic@php.net
-Status: Re-Opened +Status: Closed
 [2017-07-18 20:21 UTC] nikic@php.net
-Status: Closed +Status: Re-Opened
 [2017-07-18 20:21 UTC] nikic@php.net
Ooops, wrong bug ID in commit...
 
PHP Copyright © 2001-2017 The PHP Group
All rights reserved.
Last updated: Sun Nov 19 01:31:42 2017 UTC