2007-05-11-1625Z


Microsoft always has to go and break things. And they may not even be aware that they're doing it, because it's such a huge company involved in too much shit. For example, those CM_Mappings. From the migration FAQ to Pocket PC 2003, there's source floating around the net showing an attempt to map both 127.0.0.1 and localhost to the same network GUID. Anyone who's ever tried that, and viewed the results in CMMap{P,G}, will have seen that only one worked. You can't have two entries with the same index, the older one will just get overwritten. They probably never tested the fix, or tested it on an emulator which had different software.

I'm not even mentioning here the broken line in the source which didn't give an error with makecab but broke the "localhost" entry. Most competent programmers would have caught and fixed that.

Now, as I remember, they didn't explain the "index" back in 2003. Now they do: it's that number in the line <characteristic type="1500">. Lower numbers get matched first, so if you have a more specific entry, such as "http://localhost/", you want it to get processed before "*://*/*". Now, for Windows Mobile 5, someone decided that the index numbers are unsigned LSB decimal, which makes the (apparently) signed MSB hexadecimal numbers of PPC2003 all far above the current defaults.

Comments by Microsoft's John Spaith indicate he doesn't know how this works. So he claims that 127.0.0.1 won't work on the device; it's a "known bug". Now -- as I'm typing this entry -- I'm wondering if the same fix will work as before, but now it's necessary to place the index between 501 and 999, in order to prioritize it above the defaults! I have to try this and find out. Also find out if making an index entry for localhost different from that of 127.0.0.1 will allow both to peaceably coexist in the CMMap files, though it doesn't seem to be necessary for localhost any more. I wonder what kind of godawful kludge they put into the kernel for that mapping.

Back to blog or home page

last updated 2013-01-10 20:53:11. served from tektonic.jcomeau.com