The Racket repository
Go to file
Matthew Flatt 20f31fb742 set a bit to prevent corruption of flags via hashing
Certain datatypes in the runtime system are not supposed
to be hashed, where bits normally reserved for hash codes
are used for other purposes. A bad bytecode file can cause
some of those to be hashed, anyway. Normally, the damage is
isolated to that content of the damaged bytecode, but
certain variable-reference bytecode forms are both shared
and non-hashable. Set a bit that ensures hashing will not
change flags in the shared object.

This problem was exposed by fuzz testing.
2015-10-12 19:27:13 -06:00
pkgs Add missing history annotations. 2015-10-12 14:43:19 -05:00
racket set a bit to prevent corruption of flags via hashing 2015-10-12 19:27:13 -06:00
.gitattributes Don't include git files in archives. 2010-05-12 01:46:05 -04:00
.gitignore Ignore extra-pkgs/ 2014-12-04 10:44:14 -05:00
.mailmap mailmap updates & fixes. 2013-04-03 18:10:22 -04:00
.travis.yml Run the pkg tests on Travis. 2015-10-08 17:38:59 -04:00
appveyor.yml Fix missing space. 2015-07-17 13:23:10 -04:00
INSTALL.txt note on catalogs and building from a tag 2015-09-19 09:40:43 -06:00
Makefile makefile target for creating a native executable for cross compiling 2015-08-30 08:14:04 -06:00
README.txt adjust copyright dates: 2014 -> 2015 2015-10-05 13:39:11 -06:00

This is the source code for the main Racket distribution.  See
"INSTALL.txt" for information on building Racket.

License
-------

Racket
Copyright (c) 2010-2015 PLT Design Inc.

Racket is distributed under the GNU Lesser General Public License
(LGPL).  This implies that you may link Racket into proprietary
applications, provided you follow the rules stated in the LGPL.  You can
also modify Racket; if you distribute a modified version, you must
distribute it under the terms of the LGPL, which in particular states
that you must release the source code for the modified software.  

See racket/src/COPYING_LESSER.txt for more information.