Changeset 2494 for draftietfhttpbis/latest/p6cache.xml
 Timestamp:
 15/11/13 09:06:45 (6 years ago)
 File:

 1 edited
Legend:
 Unmodified
 Added
 Removed

draftietfhttpbis/latest/p6cache.xml
r2492 r2494 213 213 </artwork></figure> 214 214 <t> 215 If a cache receives a deltaseconds value larger than the largest 216 positive integer it can represent, or if any of its subsequent calculations 217 overflows, the cache &MUST; consider the value to be 2147483648 218 (2<x:sup>31</x:sup>). A recipient parsing a deltaseconds value &MUST; use 219 an arithmetic type of at least 31 bits of range, and a sender &MUSTNOT; 220 generate deltaseconds with a value greater than 2147483648. 221 </t> 222 <t> 223 Note that this value (2147483648) might cause implementation issues on some 224 platforms (in particular, those that represent INT_MAX as 225 2<x:sup>31</x:sup>1), and therefore ought to be handled carefully. 226 </t> 215 A recipient parsing a deltaseconds value and converting it to binary form 216 ought to use an arithmetic type of at least 31 bits of nonnegative integer 217 range. 218 If a cache receives a deltaseconds value greater than the greatest integer 219 it can represent, or if any of its subsequent calculations overflows, 220 the cache &MUST; consider the value to be either 2147483648 221 (2<x:sup>31</x:sup>) or the greatest positive integer it can conveniently 222 represent. 223 </t> 224 <x:note> 225 <t> 226 &Note; The value 2147483648 is here for historical reasons, effectively 227 represents infinity (over 68 years), and does not need to be stored in 228 binary form; an implementation could produce it as a canned string if 229 any overflow occurs, even if the calculations are performed with an 230 arithmetic type incapable of directly representing that number. 231 What matters here is that an overflow be detected and not treated as a 232 negative value in later calculations. 233 </t> 234 </x:note> 227 235 </section> 228 236
Note: See TracChangeset
for help on using the changeset viewer.