1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-20 11:11:24 +00:00
Mirror of the FreeBSD src repository https://git.FreeBSD.org/src.git .
Go to file
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
bin Do not forget to increment the input line counter 2006-07-31 11:32:12 +00:00
contrib Add note concerning FreeBSD-SA-06:01.texindex. 2006-07-08 07:32:41 +00:00
crypto Resolve conflicts after import of OpenSSL 0.9.8b. 2006-07-30 14:17:54 +00:00
etc Alphabetical order is probably better. 2006-08-03 03:30:53 +00:00
games And now without typo. 2006-07-10 16:53:32 +00:00
gnu Add initial platform support. 2006-07-22 15:27:18 +00:00
include Add device to access and modify Open Firmware NVRAM settings in 2006-08-01 22:19:01 +00:00
kerberos5 Kerberos/Heimdal doesn't really depend on the INET6 macro. 2006-07-28 06:33:27 +00:00
lib In DCE 1.1, the time_low value is defined as an unsigned 32-bit 2006-08-03 03:34:36 +00:00
libexec inetd and telnetd are not included in the standard release 2006-07-31 19:15:10 +00:00
release Note hardware supported by powerpc, based on GENERIC. 2006-07-31 17:04:28 +00:00
rescue Respect MK_INET6_SUPPORT. 2006-07-27 12:28:05 +00:00
sbin Block a variety of signals which may afffect reboot(8), before killing 2006-08-02 13:05:38 +00:00
secure Upgrade to OpenSSL 0.9.8b. 2006-07-29 19:41:41 +00:00
share Cleanup and add our standard SYNOPSIS section. 2006-08-02 07:02:19 +00:00
sys Fix re(4) breakge introduced in tree from rev 1.68. 2006-08-03 00:15:19 +00:00
tools Fix build when .CURDIR != .OBJDIR. 2006-08-02 15:24:59 +00:00
usr.bin Add a new command-line option, -P, which allows the user to specify 2006-08-02 13:21:44 +00:00
usr.sbin Remove remnants of Alpha. 2006-08-02 17:16:48 +00:00
COPYRIGHT Happy new year, a little late 2006-01-15 22:06:10 +00:00
LOCKS Document commit constraints for RELENG_6_*. 2006-01-13 06:51:43 +00:00
MAINTAINERS Remove pre-commit review on mpt. 2006-07-11 06:09:54 +00:00
Makefile Per weak consensus on this topic, remove suggestion to set 2006-06-22 16:52:53 +00:00
Makefile.inc1 Fix doxygen target. 2006-08-02 15:26:15 +00:00
ObsoleteFiles.inc Oops, it is sbin/nfsd that was removed, not the man page. 2006-07-08 03:22:44 +00:00
README Simply running ``make world'' will bomb unless you dig up the 2006-06-07 03:33:48 +00:00
UPDATING Add an entry for enigma(1)/crypt(1) change on 64-bit architectures. 2006-07-26 16:31:10 +00:00

This is the top level of the FreeBSD source directory.  This file
was last revised on:
$FreeBSD$

For copyright information, please see the file COPYRIGHT in this
directory (additional copyright information also exists for some
sources in this tree - please see the specific source directories for
more information).

The Makefile in this directory supports a number of targets for
building components (or all) of the FreeBSD source tree, the most
commonly used one being ``world'', which rebuilds and installs
everything in the FreeBSD system from the source tree except the
kernel, the kernel-modules and the contents of /etc.  The ``world''
target should only be used in cases where the source tree has not
changed from the currently running version.  See:
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/makeworld.html
for more information, including setting make(1) variables.

The ``buildkernel'' and ``installkernel'' targets build and install
the kernel and the modules (see below).  Please see the top of
the Makefile in this directory for more information on the
standard build targets and compile-time flags.

Building a kernel is a somewhat more involved process, documentation
for which can be found at:
   http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig.html
And in the config(8) man page.
Note: If you want to build and install the kernel with the
``buildkernel'' and ``installkernel'' targets, you might need to build
world before.  More information is available in the handbook.

The sample kernel configuration files reside in the sys/<arch>/conf
sub-directory (assuming that you've installed the kernel sources), the
file named GENERIC being the one used to build your initial installation
kernel.  The file NOTES contains entries and documentation for all possible
devices, not just those commonly used.  It is the successor of the ancient
LINT file, but in contrast to LINT, it is not buildable as a kernel but a
pure reference and documentation file.


Source Roadmap:
---------------
bin		System/user commands.

contrib		Packages contributed by 3rd parties.

crypto		Cryptography stuff (see crypto/README).

etc		Template files for /etc.

games		Amusements.

gnu		Various commands and libraries under the GNU Public License.
		Please see gnu/COPYING* for more information.

include		System include files.

kerberos5	Kerberos5 (Heimdal) package.

lib		System libraries.

libexec		System daemons.

release		Release building Makefile & associated tools.

rescue		Build system for statically linked /rescue utilities.

sbin		System commands.

secure		Cryptographic libraries and commands.

share		Shared resources.

sys		Kernel sources.

tools		Utilities for regression testing and miscellaneous tasks.

usr.bin		User commands.

usr.sbin	System administration commands.


For information on synchronizing your source tree with one or more of
the FreeBSD Project's development branches, please see:

  http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/synching.html