freebsd-nq/lib/libc
Xin LI da4ab3aa26 In DCE 1.1, the time_low value is defined as an unsigned 32-bit
integer.  Presently, our implementation employs an approach that
converts the value to int64_t, then back to int, unfortunately,
this approach can be problematic when the the difference between
the two time_low is larger than 0x7fffffff, as the value is then
truncated to int.

To quote the test case from the original PR, the following is
true with the current implementation:

865e1a56-b9d9-11d9-ba27-0003476f2e88 < 062ac45c-b9d9-11d9-ba27-0003476f2e88

However, according to the DCE specification, the expected result
should be:

865e1a56-b9d9-11d9-ba27-0003476f2e88 > 062ac45c-b9d9-11d9-ba27-0003476f2e88

This commit adds a new intermediate variable which uses int64_t
to store the result of subtraction between the two time_low values,
which would not introduce different semantic of the MSB found in
time_low value.

PR:		83107
Submitted by:	Steve Sears <sjs at acm dot org>
MFC After:	1 month
2006-08-03 03:34:36 +00:00
..
alpha Desupport the undocumented NO_QUAD option, just don't compile 2006-03-16 14:22:19 +00:00
amd64 Desupport the undocumented NO_QUAD option, just don't compile 2006-03-16 14:22:19 +00:00
arm GC old a.out and K&R support. 2006-05-23 02:52:14 +00:00
compat-43 Add each directory's symbol map file to SYM_MAPS. 2006-03-13 01:15:01 +00:00
db o dbm_close(3) returns void not zero or anything else. Touch .Dd. 2006-04-16 16:33:26 +00:00
gdtoa Don't export __gdtoa. The only known ports that rely on 2006-04-15 15:35:20 +00:00
gen Remove stale comment about arm 2006-07-26 16:56:56 +00:00
gmon Add each directory's symbol map file to SYM_MAPS. 2006-03-13 01:15:01 +00:00
i386 Replace absolute addressing in the call instructions with position-independend 2006-06-05 14:59:33 +00:00
ia64 Fix comment. 2006-03-16 14:27:17 +00:00
include Upgrade res_update(3) and the friends to BIND9's one excluding TSIG 2006-05-21 11:19:36 +00:00
inet It's not enough to provide symbol map files; you also have to add them 2006-03-23 16:55:13 +00:00
isc - Merge our local changes. 2006-03-21 15:37:16 +00:00
locale Fix a bug where, for 6-byte sequences, the top 6 bits get compared to 2006-03-30 09:04:12 +00:00
nameser Upgrade res_update(3) and the friends to BIND9's one excluding TSIG 2006-05-21 11:19:36 +00:00
net Respect MK_INET6_SUPPORT. 2006-07-26 08:36:46 +00:00
nls Add each directory's symbol map file to SYM_MAPS. 2006-03-13 01:15:01 +00:00
posix1e Following repo-copy of mac_is_present_np.3 to mac_is_present.3, remove 2006-07-07 14:02:17 +00:00
powerpc Add each directory's symbol map file to SYM_MAPS. 2006-03-13 01:15:01 +00:00
quad Add each directory's symbol map file to SYM_MAPS. 2006-03-13 01:15:01 +00:00
regex Add each directory's symbol map file to SYM_MAPS. 2006-03-13 01:15:01 +00:00
resolv Nuke some compatibility crufts of resolver for 6.X and earlier. 2006-05-21 11:29:26 +00:00
rpc - Extend the nsswitch to support Services, Protocols and Rpc 2006-04-28 12:03:38 +00:00
softfloat Add each directory's symbol map file to SYM_MAPS. 2006-03-13 01:15:01 +00:00
sparc64 For _Qp_{fge,fgt,fle,flt}() the SCD states that "Exceptions mimic fcmpeq", 2006-04-16 14:32:53 +00:00
stdio Oops, correct the weak reference (s/fclose/fcloseall). 2006-04-22 16:47:59 +00:00
stdlib Conditionally expand the size_invs lookup table in arena_run_reg_dalloc() 2006-07-27 19:09:32 +00:00
stdtime Add each directory's symbol map file to SYM_MAPS. 2006-03-13 01:15:01 +00:00
string o Make grep ^strlcpy work: put a return value type on separate line. 2006-06-15 15:56:55 +00:00
sys Add missing ;. 2006-07-23 15:53:12 +00:00
uuid In DCE 1.1, the time_low value is defined as an unsigned 32-bit 2006-08-03 03:34:36 +00:00
xdr Add each directory's symbol map file to SYM_MAPS. 2006-03-13 01:15:01 +00:00
yp Add each directory's symbol map file to SYM_MAPS. 2006-03-13 01:15:01 +00:00
Makefile Remove pending actions asked in comments for SHLIB_MAJOR bump, done. 2006-05-22 05:12:44 +00:00
Versions.def Add symbol maps and initial symbol version definitions to libc. 2006-03-13 00:53:21 +00:00