bitwise and misbehaving with & 0xffffff00
| Bug #7755 | bitwise and misbehaving with & 0xffffff00 | ||||
|---|---|---|---|---|---|
| Submitted: | 2000-11-10 22:29 UTC | Modified: | 2001-05-13 05:33 UTC | ||
| From: | roland at astrofoto dot org | Assigned: | |||
| Status: | Closed | Package: | Math related | ||
| PHP Version: | 4.0.3pl1 | OS: | Linux, RedHat 7.0 | ||
| Private report: | No | CVE-ID: | None | ||
[2000-11-10 22:29 UTC] roland at astrofoto dot org
I have the following snippet of code
$w = ip2long("192.168.2.35");
$x = $w & 0xffffff00;
$y = $w & (0xffffff << 8);
$z = ip2long("192.168.2.0");
printf ("w = %s<br>", dechex($w));
printf ("x = %s<br>", dechex($x));
printf ("y = %s<br>", dechex($y));
printf ("z = %s<br>", dechex($z));
which outputs this:
w = c0a80223
x = 80000000
y = c0a80200
z = c0a80200
I can't come up with any reason why $x should be set as it is....
Patches
Pull Requests
History
AllCommentsChangesGit/SVN commits
[2000-11-14 12:04 UTC] stas@php.net
[2000-11-23 07:41 UTC] stas@php.net
[2000-12-12 05:56 UTC] stas@php.net