Commit Graph

83 Commits

Author SHA1 Message Date
christos
566893d359 - use MAXPATHLEN to get the array size for the path we store.
- use strlcpy() instead of strncpy() to avoid the off-by-one error
  and the three missing '\0' terminations.
- perform bounds checks to make sure we don't turn this into a random
  memory writing tool using setenv HOME `perl -e 'print "a"x5000'`
2001-01-29 01:22:31 +00:00
jdolecek
f1f01145ee make tmspc10[] const 2001-01-23 15:56:46 +00:00
lukem
c9578df033 sprinkle some _DIAGASSERT()s in 2001-01-09 07:18:49 +00:00
christos
69a55bf430 fix spelling mistake and mention when the t_* functions appeared. 2001-01-05 23:05:08 +00:00
christos
ca976de449 const castaways. 2001-01-05 23:02:00 +00:00
scw
71ce3fbb0f No need to initialise globals BC and UP to NULL; this happens anyway
for BSS variables.
(Quells a linker warning on m68k because BC and UP are also declared
but not initialised in libcurses/curses.c)
2000-12-13 22:14:40 +00:00
itohy
9bdf22f648 Correct ctype(3) usage, just in case.... 2000-07-14 05:26:04 +00:00
christos
ae6f838f9e use ${SHLIB_FULLVERSION} instead of ${SHLIB_MAJOR}.${SHLIB_MINOR} 2000-07-03 21:10:57 +00:00
blymn
63b8f446f6 * Improve the handling of BC and UP in t_goto, t_getent now queries
these capabilities and stashes them in "struct tinfo" for t_goto to
  use.  This makes the t_goto call more efficient and plugs a memory
  leak that was present in the original t_goto implementation.
  Thanks to Itojun for spotting this one too!
2000-06-03 07:14:55 +00:00
thorpej
2d11440f4d Back out previous change. It causes all sorts of problems. The
memory leakage stuff should be addressed, but this change was
obviously wrong.
2000-06-02 22:09:01 +00:00
christos
b619ddeed7 Don't leak memory. 2000-06-02 18:00:42 +00:00
itojun
74d0ceb979 correct memory leak due to t_getstr() and realloc(). the commit will
prevent "top -s 0" from chewing up memory.

TODO: realloc() audit, revisit recent termcap/curses changes
2000-06-02 13:13:07 +00:00
lukem
86d8882273 size arg doesn't exist anymore, so don't DIAGASSERT it 2000-06-01 07:54:00 +00:00
blymn
04a0fa29b3 * Fixed Makefile to proper set includes path
* Added new function t_setinfo to allow setting the termcap info when
  termcap entry found.
2000-05-28 09:58:15 +00:00
blymn
22a94f7041 * Removed variable names from ansi style prototype
* Add -I. to CPPFLAGS
* Added new function t_agetstr which dynamically allocates area buffer.
2000-05-20 13:55:10 +00:00
lukem
84f71cf03e area is allowed to be NULL, so don't _DIAGASSERT it. 2000-05-14 01:14:29 +00:00
christos
0a73d7c493 - use strchr instead of index
- whitespace fixes
- tgetstr only looks at the first two characters; t_getstr looks at the whole
  string.
- fix DIAGASSERT brokenness.
2000-05-12 15:25:25 +00:00
blymn
fac11bb07f Update man page to document new tgetent behaviour. 2000-05-10 11:13:35 +00:00
blymn
0c575d5c64 * Modified t_getent to ignore the TERMCAP env variable if it contains the
ZZ attribute which indicates the TERMCAP was exported from another
  programme and has been truncated.  Iff a real termcap entry cannot be
  found then TERMCAP with a ZZ in it will be used as a last resort.
2000-05-08 13:17:14 +00:00
blymn
adf14e0d21 Fixed t_getstr so that limit is only set to 0 iff area is NULL when an
unknown capability is requested.
2000-04-20 13:22:36 +00:00
blymn
e584b4762e Ensure limit is sane on return from t_getstr if requested entry does
not exist.
2000-04-19 15:32:28 +00:00
blymn
c833debc98 Added new function t_getterm to return the name string of a termcap
entry since the "new" interface hid this information away.
2000-04-19 13:41:28 +00:00
blymn
29912c2724 Split private data structure into separate file. 2000-04-18 14:42:42 +00:00
kleink
4dfa5f1d65 Place inclusion of required headers within multiple-inclusion wrappers. 2000-02-20 13:32:52 +00:00
lukem
26df59590e Change third arg of tputs() from void (*)(int)' to int (*)(int)'.
This is in line with the Single UNIX Spec, Solaris, Linux, FreeBSD, ...
1999-10-04 23:16:50 +00:00
lukem
d896261208 back out the #ifdef _DIAGNOSTIC argument checks; too many people complained.
_DIAGASSERT() is still retained.
1999-09-20 04:38:56 +00:00
lukem
b48252f365 * use _DIAGASSERT() to check pointer arguments against NULL and file
descriptors against -1 (as appropriate).
* add actual checks which to detect stuff that would trigger_DIAGASSERT(),
  and attempt to return a sane error condition.
* knf some code
* remove some `register' decls.

the first two items result in the addition of code similar to the
following in various functions:

		_DIAGASSERT(path != NULL)
	#ifdef _DIAGNOSTIC
		if (path == NULL) {
			errno = EFAULT;
			return (-1);
		}
	#endif
1999-09-16 11:44:54 +00:00
blymn
540421553f Added minor tweak to t_getstr, by passing a NULL area pointer the size
of the requested capability will be returned in the limit parameter.
1999-08-17 12:13:24 +00:00
blymn
c04ccf9dbf Updated library minor version and fixed small type glitch (limit is now
size_t not int)
1999-08-16 08:34:33 +00:00
blymn
1bb0398527 Added new interface to termcap that allows the manipulation of multiple
termcap entries simultaneously and lifts the 1024 byte limit on the termcap
entry.  The original termcap api is unchanged but also no longer has
the 1024 byte limit if the termcap functions are used.
1999-08-15 10:59:01 +00:00
tron
4a02fc690c Add missing declarations of external variables "PC", "BC", "UP" and
"ospeed" which are listed in termcap(3). Fixes PR lib/8147 by
Richard Earnshaw.
1999-08-14 13:56:48 +00:00
simonb
6bf3aa19f9 More trailing white space. 1999-07-02 15:46:05 +00:00
garbled
38c96853cf Last of the .Os cleanups. .Os is defined in the tmac.doc-common file,
so we shouldn't override it with versions in the manpages.  Wheee!
1999-03-22 19:44:33 +00:00
abs
2ffb059188 If we have to truncate the entry, try hard to truncate on a whole cap. 1999-03-22 03:26:43 +00:00
abs
edc1a24a56 Add a note to update src/distrib/sets/lists/base/shl.*, and add a missing
RCS Id.
1999-02-25 08:02:19 +00:00
lukem
e3de1328d5 replace NOSTATICLIB with MKLINKLIB!=no - the former wasn't used anywhere else in the tree, and the latter seemed appropriate 1999-02-12 11:34:07 +00:00
lukem
76a2bd31c1 use MKxxx instead of NOxxx 1999-02-12 11:32:32 +00:00
christos
ae535838b4 ELF not alpha and mips. 1999-02-12 11:14:11 +00:00
christos
de40255ddb Don't include <sgtty.h>! Nothing uses it. 1999-02-02 12:34:56 +00:00
agc
3f6ac2aece Clean up lint - one set but unused variable, 3 FALLTHROUGH comments needed,
and two LP64-isms.
1998-10-14 13:51:36 +00:00
mycroft
a5fbe304ec const poisoning. 1998-07-27 01:55:23 +00:00
cgd
d29dd9772c link libtermlib_pic.a to libtermcap_pic.a, if the right vars are (un)set. 1998-05-08 03:11:02 +00:00
fair
1628920950 Fix man to mdoc conversion mistakes, mostly of the form ^\.[A-Z][A-Z] 1998-04-28 07:19:28 +00:00
ross
fdbd788c01 Fix broken LINKS+= line for ELF libtermlib install.
ALPHA/PMAX NOTE: rm "libermlib.so.0"
1998-04-20 01:35:44 +00:00
tv
1882b7131d You cannot check SHLIB_{MAJOR,MINOR} without <bsd.lib.mk>, but LINKS is
needed before <bsd.lib.mk>.  Instead, check for shlib_version file.
1998-04-18 15:46:22 +00:00
tv
6958fe8d9a Get the NO* variables from bsd.own.mk, and then set LINKS accordingly 1998-04-18 15:26:20 +00:00
tv
39f813538e Don't try to make a link to libtermlib.a if NOSTATICLIB is set (there's no
libtermcap.a)
1998-04-15 19:29:58 +00:00
jonathan
a369db44b3 Add more LINKS+= lines to make (hard) links from libtermcap to libterm as
required by ELF toolchain.

Don't use symlinks links as bsd.lib.mk does for ELF, because
bsd.link.mk creates symlinks before it creates the hard link.
1998-02-23 00:31:07 +00:00
perry
312aca536f add LIBRARY section to man page 1998-02-05 18:45:17 +00:00
perry
0b7831a37b remove obsolete register declarations 1998-02-03 19:12:13 +00:00