]> git.cameronkatri.com Git - bsdgames-darwin.git/log
bsdgames-darwin.git
16 years agoAdd a tip explaining how to run the tests in /usr/tests.
jmmv [Sun, 23 Mar 2008 19:48:57 +0000 (19:48 +0000)]
Add a tip explaining how to run the tests in /usr/tests.

16 years agoIn example, change dd count size and also chmod so others can't read swap.
reed [Sat, 22 Mar 2008 14:39:57 +0000 (14:39 +0000)]
In example, change dd count size and also chmod so others can't read swap.

16 years agoAdd five more tips.
reed [Fri, 21 Mar 2008 21:45:30 +0000 (21:45 +0000)]
Add five more tips.

16 years agoAdd "netbsd-tips" fortune database with 23 initial fortunes --
reed [Fri, 21 Mar 2008 21:09:48 +0000 (21:09 +0000)]
Add "netbsd-tips" fortune database with 23 initial fortunes --
actually hints or suggestions or tips on using NetBSD.
Please share your brief NetBSD usage tips.
If you want to discuss or share suggestions, have a look
at http://wiki.netbsd.se/netbsd-tips wiki page.

16 years agoDon't crash if we're asked to restore from /dev/null. (woops)
dholland [Sun, 24 Feb 2008 06:12:49 +0000 (06:12 +0000)]
Don't crash if we're asked to restore from /dev/null. (woops)

16 years agoFix a bit more lint.
dholland [Sun, 24 Feb 2008 06:07:06 +0000 (06:07 +0000)]
Fix a bit more lint.

16 years agoFix some more lint. (There's plenty to go around.)
dholland [Sun, 24 Feb 2008 06:03:35 +0000 (06:03 +0000)]
Fix some more lint. (There's plenty to go around.)

If we try to load a game and it bombs, keep prompting for another one,
because if we try to continue with a half-loaded game we'll probably
end up in trouble.

16 years agoDon't cast the return value of calloc.
dholland [Sun, 24 Feb 2008 05:53:33 +0000 (05:53 +0000)]
Don't cast the return value of calloc.

16 years agofix some lint
christos [Sun, 24 Feb 2008 03:56:48 +0000 (03:56 +0000)]
fix some lint

16 years agoneed errno.h
christos [Sun, 24 Feb 2008 03:52:09 +0000 (03:52 +0000)]
need errno.h

16 years agoUpdate for today's changes: 1-player games are not allowed, and cards.pck
dholland [Sun, 24 Feb 2008 03:50:07 +0000 (03:50 +0000)]
Update for today's changes: 1-player games are not allowed, and cards.pck
no longer appears.

16 years agoFix the OpenBSD housing shortage code.
dholland [Sun, 24 Feb 2008 03:26:26 +0000 (03:26 +0000)]
Fix the OpenBSD housing shortage code.

16 years agoret_card(), which I moved earlier, was consequently filed under the wrong
dholland [Sun, 24 Feb 2008 03:01:13 +0000 (03:01 +0000)]
ret_card(), which I moved earlier, was consequently filed under the wrong
source file name. fix.

16 years agoWe do not need special code for pdp11. Also, because random() returns all
dholland [Sun, 24 Feb 2008 02:58:33 +0000 (02:58 +0000)]
We do not need special code for pdp11. Also, because random() returns all
good bits (unlike rand()) we can simplify this.

16 years agoTypo patrol
dholland [Sun, 24 Feb 2008 02:55:20 +0000 (02:55 +0000)]
Typo patrol

16 years agoThis file is also no longer used.
dholland [Sun, 24 Feb 2008 02:53:18 +0000 (02:53 +0000)]
This file is also no longer used.

16 years agoAbolish the initdeck program and the weird little binary file it generates.
dholland [Sun, 24 Feb 2008 02:43:18 +0000 (02:43 +0000)]
Abolish the initdeck program and the weird little binary file it generates.
The card deck data is now compiled in. (And it always should have been,
even back when memory usage counted. It's small.)

This changes the save format slightly. (I am riding the previous
breakage an hour ago and not providing compat. There should be no
further breakage.)

16 years agoSource files should be named *.c or *.h, not random other things.
dholland [Sun, 24 Feb 2008 01:57:34 +0000 (01:57 +0000)]
Source files should be named *.c or *.h, not random other things.

Fold monop.ext (which was extern data decls) into monop.h and deck.h.
Fold monop.def (which had definitions for the extern data) into monop.c.
Fold brd.dat/mon.dat/prop.dat (which were array initializers for some of
the data) into monop.c.

Rearrange includes accordingly. No functional change.

16 years agoRemove last traces of old save/load code. We no longer need a private
dholland [Sun, 24 Feb 2008 01:41:14 +0000 (01:41 +0000)]
Remove last traces of old save/load code. We no longer need a private
copy of malloc.

16 years agoSort out the memory leak fix properly.
dholland [Sun, 24 Feb 2008 01:37:57 +0000 (01:37 +0000)]
Sort out the memory leak fix properly.

16 years agoNew save/load code. Related to (but not the same as) the new save/load
dholland [Sun, 24 Feb 2008 01:30:56 +0000 (01:30 +0000)]
New save/load code. Related to (but not the same as) the new save/load
code in OpenBSD.

Note: this breaks compatibility with old save files. However, the old
save files were missing critical information, had a completely insane
format, and didn't work anyway.

I will be riding this breakage with another breakage within a day or
two when I fix the insanity in the card deck handling.

16 years agoFixes from OpenBSD.
dholland [Sat, 23 Feb 2008 22:28:46 +0000 (22:28 +0000)]
Fixes from OpenBSD.
   - If a player goes bankrupt buying a property (which shouldn't be
allowed, but I guess it is), don't cause them to resign to themselves.
   - Use "NULL", not "0", for pointers.
   - Avoid undefined behavior adjusting the current player after resigning.
   - Don't leak the memory used to store player names.

The last of these is disabled for the moment because we have the pointers
in question tagged const. Will see to this when I'm finished merging.

16 years agoFix from OpenBSD: don't say "1 houses".
dholland [Sat, 23 Feb 2008 22:20:35 +0000 (22:20 +0000)]
Fix from OpenBSD: don't say "1 houses".

16 years agoBug fixes from OpenBSD:
dholland [Sat, 23 Feb 2008 22:17:02 +0000 (22:17 +0000)]
Bug fixes from OpenBSD:
   - don't truncate unreasonably long player names when bidding;
   - don't allow players to bid more cash than they have.

16 years agoBug fix: having $0 does not mean you need to mortgage something. Plus some
dholland [Sat, 23 Feb 2008 22:06:30 +0000 (22:06 +0000)]
Bug fix: having $0 does not mean you need to mortgage something. Plus some
tidyup.
From OpenBSD.

16 years agoMore fixes from OpenBSD:
dholland [Sat, 23 Feb 2008 21:48:46 +0000 (21:48 +0000)]
More fixes from OpenBSD:
  - initialize in the proper order
  - don't allow 1-player games
  - make the check for players named "done" work properly
  - a couple other minor things

16 years agoSanity fixes for input handling. Suggested by OpenBSD, but different code.
dholland [Sat, 23 Feb 2008 21:35:13 +0000 (21:35 +0000)]
Sanity fixes for input handling. Suggested by OpenBSD, but different code.

16 years agoA first stab at supporting the housing shortage rules. From OpenBSD.
dholland [Sat, 23 Feb 2008 21:07:52 +0000 (21:07 +0000)]
A first stab at supporting the housing shortage rules. From OpenBSD.
(note: this is not fully correct - I will fix it when I finish merging)

16 years agoDon't increment booleans. From OpenBSD
dholland [Sat, 23 Feb 2008 20:18:46 +0000 (20:18 +0000)]
Don't increment booleans. From OpenBSD

16 years agoSanity fixes for input buffer handling. From OpenBSD
dholland [Sat, 23 Feb 2008 20:12:15 +0000 (20:12 +0000)]
Sanity fixes for input buffer handling. From OpenBSD

16 years agoImprove the behavior of get-out-of-jail-free cards by returning them to
dholland [Sat, 23 Feb 2008 19:54:06 +0000 (19:54 +0000)]
Improve the behavior of get-out-of-jail-free cards by returning them to
the bottom of the deck when used. There are still a few other problems.
From OpenBSD.

16 years agoRename ->last_card to ->top_card to match OpenBSD (and also to make
dholland [Sat, 23 Feb 2008 19:49:21 +0000 (19:49 +0000)]
Rename ->last_card to ->top_card to match OpenBSD (and also to make
somewhat more sense...)

16 years agoMove ret_card() to cards.c, where it more rationally belongs. From OpenBSD.
dholland [Sat, 23 Feb 2008 19:09:00 +0000 (19:09 +0000)]
Move ret_card() to cards.c, where it more rationally belongs. From OpenBSD.

16 years agoA few more whitespace/KNF. I keep hoping I've found them all...
dholland [Wed, 20 Feb 2008 05:08:46 +0000 (05:08 +0000)]
A few more whitespace/KNF. I keep hoping I've found them all...

16 years agoAdd the sizes to the extern array declarations. This may not be
dholland [Wed, 20 Feb 2008 04:50:12 +0000 (04:50 +0000)]
Add the sizes to the extern array declarations. This may not be
necessary, but it's safe and reduces unnecessary divergence.
From OpenBSD.

16 years agoUse random() rather than rand(). Suggested by diffing against OpenBSD.
dholland [Wed, 20 Feb 2008 04:48:10 +0000 (04:48 +0000)]
Use random() rather than rand(). Suggested by diffing against OpenBSD.

16 years agoRemove unused swap() macro.
dholland [Wed, 20 Feb 2008 04:10:34 +0000 (04:10 +0000)]
Remove unused swap() macro.

16 years agoDon't misuse random strings as printf formats, even where it's harmless.
dholland [Wed, 20 Feb 2008 04:10:01 +0000 (04:10 +0000)]
Don't misuse random strings as printf formats, even where it's harmless.
Found by diffing against OpenBSD.

16 years agoOne more (hopefully the last) whitespace fix.
dholland [Tue, 19 Feb 2008 10:48:47 +0000 (10:48 +0000)]
One more (hopefully the last) whitespace fix.

16 years agogetinp() no longer magically treats the prompt arg as a printf format, so
dholland [Tue, 19 Feb 2008 10:47:40 +0000 (10:47 +0000)]
getinp() no longer magically treats the prompt arg as a printf format, so
don't escape % as %%. From OpenBSD.

16 years agoMove function heading comments to something vaguely like the right place.
dholland [Tue, 19 Feb 2008 10:46:21 +0000 (10:46 +0000)]
Move function heading comments to something vaguely like the right place.

16 years agoKNF/whitespace nits. No functional changes.
dholland [Tue, 19 Feb 2008 09:45:02 +0000 (09:45 +0000)]
KNF/whitespace nits. No functional changes.

16 years agoFix bugs in debug printouts. From OpenBSD.
dholland [Tue, 19 Feb 2008 09:34:40 +0000 (09:34 +0000)]
Fix bugs in debug printouts. From OpenBSD.

16 years agoDon't use sprintf; use snprintf.
dholland [Tue, 19 Feb 2008 09:32:34 +0000 (09:32 +0000)]
Don't use sprintf; use snprintf.

16 years agoDon't use perror(); use err/warn instead.
dholland [Tue, 19 Feb 2008 09:30:26 +0000 (09:30 +0000)]
Don't use perror(); use err/warn instead.
Suggested by diffing against OpenBSD.

16 years agoFix capitalization of street names. from pjanzen@openbsd
dholland [Tue, 19 Feb 2008 09:28:05 +0000 (09:28 +0000)]
Fix capitalization of street names. from pjanzen@openbsd

16 years agoMore typo fixes
dholland [Tue, 19 Feb 2008 09:25:21 +0000 (09:25 +0000)]
More typo fixes

16 years agoFix formatting bug apparently introduced when the page was mdoc'd. (Had
dholland [Tue, 19 Feb 2008 09:24:43 +0000 (09:24 +0000)]
Fix formatting bug apparently introduced when the page was mdoc'd. (Had
.Nm, should have been .Pp.)

Also bump date; for some reason this hadn't been done since the original
import.

16 years agoRemove transient thingy that wasn't supposed to see the light of day, and
dholland [Tue, 19 Feb 2008 09:05:55 +0000 (09:05 +0000)]
Remove transient thingy that wasn't supposed to see the light of day, and
finish dealing with some local variables that shadow a global. (hi dholland)

16 years agoFix (another) typo in comment
dholland [Tue, 19 Feb 2008 08:26:10 +0000 (08:26 +0000)]
Fix (another) typo in comment

16 years agoFix typo in comment
dholland [Tue, 19 Feb 2008 08:07:51 +0000 (08:07 +0000)]
Fix typo in comment

16 years agoSplit some code from moreobj.c into action.c, as per larn 12.2.
dholland [Tue, 19 Feb 2008 06:05:26 +0000 (06:05 +0000)]
Split some code from moreobj.c into action.c, as per larn 12.2.

16 years agoTypo correction: s/than/that/ in one instance.
he [Fri, 15 Feb 2008 09:24:52 +0000 (09:24 +0000)]
Typo correction: s/than/that/ in one instance.

16 years agoMore assorted cleanup merged from larn 12.2.
dholland [Mon, 4 Feb 2008 01:07:01 +0000 (01:07 +0000)]
More assorted cleanup merged from larn 12.2.

16 years agoOnce upon a time, larn 12.0 had functions named getchar() and putchar()
dholland [Sun, 3 Feb 2008 21:24:58 +0000 (21:24 +0000)]
Once upon a time, larn 12.0 had functions named getchar() and putchar()
that conflicted with libc. We changed them to lgetchar() and xputchar()
respectively; larn 12.2 changed them to ttgetch() and ttputch(). After
reflecting on this for a while I've decided to adopt the larn 12.2
names; not so much for compatibility but for consistency going forward.
So, massrename them. Also make ttputch() static.

16 years agoDon't create files mode 666 in /var. (The code in question is not enabled
dholland [Sun, 3 Feb 2008 20:41:53 +0000 (20:41 +0000)]
Don't create files mode 666 in /var. (The code in question is not enabled
by default, though.)

16 years agoLarn does not need its own private versions of functions from <ctype.h>.
dholland [Sun, 3 Feb 2008 20:11:04 +0000 (20:11 +0000)]
Larn does not need its own private versions of functions from <ctype.h>.
Also, remove the function gettokstr(), which is not used. From larn 12.2.

16 years agoA long time ago, larn had code to prohibit playing it during work hours.
dholland [Sun, 3 Feb 2008 20:01:24 +0000 (20:01 +0000)]
A long time ago, larn had code to prohibit playing it during work hours.
Most of this code was removed ages ago, probably when dm(6) was invented;
long before -r1.1 in the NetBSD tree in any event.

Now remove the last fragment of it.

Also nuke the file of US holidays 1987-1993 that we've been carrying
around for no reason.

16 years agoSome assorted minor cleanups, from larn 12.2.
dholland [Sun, 3 Feb 2008 19:29:50 +0000 (19:29 +0000)]
Some assorted minor cleanups, from larn 12.2.

16 years agoMake a bunch of functions static. Merged from larn 12.2.
dholland [Sun, 3 Feb 2008 19:20:40 +0000 (19:20 +0000)]
Make a bunch of functions static. Merged from larn 12.2.

16 years agoUse mkstemp to make the temporary files used when you win.
dholland [Sun, 3 Feb 2008 03:49:15 +0000 (03:49 +0000)]
Use mkstemp to make the temporary files used when you win.

16 years agoSince games are (now) setgid, not setuid, it is no longer necessary to
dholland [Sun, 3 Feb 2008 03:45:55 +0000 (03:45 +0000)]
Since games are (now) setgid, not setuid, it is no longer necessary to
manipulate the effective uid, only the effective gid.

16 years agoDocument -d.
wiz [Sun, 3 Feb 2008 03:29:17 +0000 (03:29 +0000)]
Document -d.

16 years agoAdd a -d flag so that primes will print the difference between the current
matt [Sat, 2 Feb 2008 18:15:14 +0000 (18:15 +0000)]
Add a -d flag so that primes will print the difference between the current
prime and the previous prime.  [I needed that for some reason I don't recall
and these changes lying about.  Since they might be useful/interesting to
someone, I might as well as commit them.]

16 years agoFix typo: sive -> sieve.
matt [Sat, 2 Feb 2008 17:45:05 +0000 (17:45 +0000)]
Fix typo: sive -> sieve.

16 years agoPedanticism about time_t (not really a bug, but now it won't show up when
dholland [Thu, 31 Jan 2008 05:22:45 +0000 (05:22 +0000)]
Pedanticism about time_t (not really a bug, but now it won't show up when
audited.)

16 years agoFix y2038 bug: time_t != int.
dholland [Thu, 31 Jan 2008 05:19:44 +0000 (05:19 +0000)]
Fix y2038 bug: time_t != int.

16 years agoMake the default WARNS for games 4. The only game that needs to set WARNS
dholland [Mon, 28 Jan 2008 07:03:58 +0000 (07:03 +0000)]
Make the default WARNS for games 4. The only game that needs to set WARNS
to anything else now is rogue, so clear WARNS from the other makefiles.

16 years agobuild with WARNS=4
dholland [Mon, 28 Jan 2008 07:01:01 +0000 (07:01 +0000)]
build with WARNS=4

16 years agoMake hack build with WARNS=4.
dholland [Mon, 28 Jan 2008 06:55:41 +0000 (06:55 +0000)]
Make hack build with WARNS=4.

16 years agoMake this build with WARNS=4 by not reusing names from <math.h>.
dholland [Mon, 28 Jan 2008 06:20:15 +0000 (06:20 +0000)]
Make this build with WARNS=4 by not reusing names from <math.h>.

16 years agoMake this build with WARNS=4 by not reusing names from ctype.h.
dholland [Mon, 28 Jan 2008 06:18:23 +0000 (06:18 +0000)]
Make this build with WARNS=4 by not reusing names from ctype.h.

16 years agoMake this build with WARNS=4.
dholland [Mon, 28 Jan 2008 06:16:13 +0000 (06:16 +0000)]
Make this build with WARNS=4.

16 years agomake mille build with WARNS=4
dholland [Mon, 28 Jan 2008 05:55:10 +0000 (05:55 +0000)]
make mille build with WARNS=4

16 years agoCall srandom() as well as initializing the private random generator
dholland [Mon, 28 Jan 2008 05:48:57 +0000 (05:48 +0000)]
Call srandom() as well as initializing the private random generator
(which is crappy and should be removed, but that's for another day...)
This way e.g. fortune cookies no longer appear always in the same order.

16 years agoLarn now builds with WARNS=4.
dholland [Mon, 28 Jan 2008 05:38:53 +0000 (05:38 +0000)]
Larn now builds with WARNS=4.

16 years agoApparently the reason the printf arguments were all wrong is that larn
dholland [Mon, 28 Jan 2008 04:04:17 +0000 (04:04 +0000)]
Apparently the reason the printf arguments were all wrong is that larn
had its own private and not-quite-standard implementation of printf.
Remove it surgically with a chainsaw.

16 years agoAdd gcc printf format checking, and fix the abundant problems this revealed.
dholland [Mon, 28 Jan 2008 03:39:30 +0000 (03:39 +0000)]
Add gcc printf format checking, and fix the abundant problems this revealed.
(It appears that someone sometime thought that you use %d to print a long.)

16 years agoclean for WARNS=4
dholland [Mon, 28 Jan 2008 03:23:29 +0000 (03:23 +0000)]
clean for WARNS=4

16 years agoWork around gcc signedness warning: if you check for uid_t < 0, gcc warns
dholland [Mon, 28 Jan 2008 02:37:50 +0000 (02:37 +0000)]
Work around gcc signedness warning: if you check for uid_t < 0, gcc warns
because it's unsigned, but I don't really want to rely on uid_t being
unsigned on every platform this code might propagate to.

16 years agoBuild with WARNS=4. Sort out the game's shadowing of its own variables,
dholland [Mon, 28 Jan 2008 01:58:01 +0000 (01:58 +0000)]
Build with WARNS=4. Sort out the game's shadowing of its own variables,
which fixes at least one bug.

16 years agoBuild with WARNS=4. (All fixes are cosmetic, except that it's definitely
dholland [Mon, 28 Jan 2008 01:38:59 +0000 (01:38 +0000)]
Build with WARNS=4. (All fixes are cosmetic, except that it's definitely
bad karma to shadow a local variable with another of the same name in a
nested block...)

16 years agoBuild with WARNS=4.
dholland [Mon, 28 Jan 2008 01:15:55 +0000 (01:15 +0000)]
Build with WARNS=4.

16 years agoThis builds with WARNS=4; set it in the Makefile so it stays that way.
dholland [Mon, 28 Jan 2008 01:10:23 +0000 (01:10 +0000)]
This builds with WARNS=4; set it in the Makefile so it stays that way.

16 years agoBuild with WARNS=4.
dholland [Mon, 28 Jan 2008 01:06:19 +0000 (01:06 +0000)]
Build with WARNS=4.

16 years agoI'm guessing that there should be no space between the hyphen and
he [Fri, 25 Jan 2008 13:40:56 +0000 (13:40 +0000)]
I'm guessing that there should be no space between the hyphen and
the second word in "hand-lettered".

17 years agoOnly pull in <sys/cdefs.h> on NetBSD, to fix build on Solaris 10.
lukem [Wed, 16 Jan 2008 23:23:25 +0000 (23:23 +0000)]
Only pull in <sys/cdefs.h> on NetBSD, to fix build on Solaris 10.
Tweak replacement definition of __dead.

17 years agoANSIfy. Remove unnecessary casts. Clean up for -Wsign-compare. Make more
dholland [Mon, 14 Jan 2008 03:50:01 +0000 (03:50 +0000)]
ANSIfy. Remove unnecessary casts. Clean up for -Wsign-compare. Make more
things file-static. Other minor tidyups, and fix a couple minor bugs found
along the way.

17 years agoWhitespace/KNF nits.
dholland [Mon, 14 Jan 2008 00:23:51 +0000 (00:23 +0000)]
Whitespace/KNF nits.

17 years agoFun with parts of speech: `stupid' here is an adjective, not a noun.
dholland [Thu, 3 Jan 2008 02:01:26 +0000 (02:01 +0000)]
Fun with parts of speech: `stupid' here is an adjective, not a noun.

17 years agoComprehensive (or at least extensive) string handling cleanup for rogue.
dholland [Thu, 27 Dec 2007 23:52:59 +0000 (23:52 +0000)]
Comprehensive (or at least extensive) string handling cleanup for rogue.

This patch dates (mostly) back to 2002; the critical parts of it were
handled back then by security-officer. As far as I know, there's
nothing exploitable fixed herein.

A slightly earlier version of this patch was reviewed by Christian Biere
when I filed it as PR 34750.

17 years agomore __dead fallout: these two files are built for the native host, not
dogcow [Tue, 18 Dec 2007 08:45:03 +0000 (08:45 +0000)]
more __dead fallout: these two files are built for the native host, not
for the target host - and thus do not necessarily have __dead defined in
<sys/cdefs.h>.

17 years agoconvert __attribute__s to applicable cdefs.h macros
perry [Sat, 15 Dec 2007 19:44:37 +0000 (19:44 +0000)]
convert __attribute__s to applicable cdefs.h macros

17 years agoinclude sys/cdefs.h so that __attribute__ can be fixed later
perry [Sat, 15 Dec 2007 16:32:05 +0000 (16:32 +0000)]
include sys/cdefs.h so that __attribute__ can be fixed later

17 years agoA terrible kludge: don't compile/link malloc.c if arch=sun2. My apologies
dogcow [Sat, 17 Nov 2007 00:10:55 +0000 (00:10 +0000)]
A terrible kludge: don't compile/link malloc.c if arch=sun2. My apologies
to the legions of sun2 monop fans who will probably be unable to save/restore
games.

17 years ago__attribute -> __attribute__
ragge [Sun, 16 Sep 2007 18:39:54 +0000 (18:39 +0000)]
__attribute -> __attribute__

17 years agoTeach wtf(6) about pkgsrc's help facility:
hubertf [Mon, 6 Aug 2007 21:14:36 +0000 (21:14 +0000)]
Teach wtf(6) about pkgsrc's help facility:

% cd /usr/pkgsrc/audio/qsynth
% wtf subst
subst: ===> mk/subst.mk:
# This Makefile fragment implements a general text replacement facility.
...

17 years agoIncreased WARNS to 4, since it passes both gcc333 and gcc411 on i386.
rillig [Wed, 6 Jun 2007 06:10:50 +0000 (06:10 +0000)]
Increased WARNS to 4, since it passes both gcc333 and gcc411 on i386.

17 years agoAdd new Makefile knob, USE_FORT, which extends USE_SSP by turning on the
tls [Mon, 28 May 2007 12:06:17 +0000 (12:06 +0000)]
Add new Makefile knob, USE_FORT, which extends USE_SSP by turning on the
FORTIFY_SOURCE feature of libssp, thus checking the size of arguments to
various string and memory copy and set functions (as well as a few system
calls and other miscellany) where known at function entry.  RedHat has
evidently built all "core system packages" with this option for some time.

This option should be used at the top of Makefiles (or Makefile.inc where
this is used for subdirectories) but after any setting of LIB.

This is only useful for userland code, and cannot be used in libc or in
any code which includes the libc internals, because it overrides certain
libc functions with macros.  Some effort has been made to make USE_FORT=yes
work correctly for a full-system build by having the bsd.sys.mk logic
disable the feature where it should not be used (libc, libssp iteself,
the kernel) but no attempt has been made to build the entire system with
USE_FORT and doing so will doubtless expose numerous bugs and misfeatures.

Adjust the system build so that all programs and libraries that are setuid,
directly handle network data (including serial comm data), perform
authentication, or appear likely to have (or have a history of having)
data-driven bugs (e.g. file(1)) are built with USE_FORT=yes by default,
with the exception of libc, which cannot use USE_FORT and thus uses
only USE_SSP by default.  Tested on i386 with no ill results; USE_FORT=no
per-directory or in a system build will disable if desired.

17 years agoPer PR 36185, OKed by martin@
mouse [Sun, 22 Apr 2007 02:09:02 +0000 (02:09 +0000)]
Per PR 36185, OKed by martin@