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
lukem
c9578df033
sprinkle some _DIAGASSERT()s in
2001-01-09 07:18:49 +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
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
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
simonb
6bf3aa19f9
More trailing white space.
1999-07-02 15:46:05 +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
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
lukem
22630e700a
install <termcap.h> (was from libedit), and use here...
1997-10-13 16:11:41 +00:00
lukem
ae6b9c674a
WARNSify
1997-10-09 11:58:15 +00:00
mrg
2d2ae90504
note possible security concerns.
1997-04-22 12:33:17 +00:00
mrg
9cd5492c02
- convert unsafe strcpy(), strcat() and sprintf() to the `n' versions.
...
- some KNF.
1997-01-23 14:01:45 +00:00
mikel
a41241b92a
/etc/termcap -> /usr/share/misc/termcap. Fixes misc/1401.
1996-11-12 07:50:11 +00:00
jtc
be21c16fa0
hack to limit termcap strings to 1024 characters
1996-03-22 23:25:30 +00:00
pk
41621edd10
Prototypes (PR#1103).
1995-06-05 19:45:48 +00:00
cgd
41f1c39f00
clean up import, roll forward local fixes, clean up Ids
1995-02-27 10:18:34 +00:00
deraadt
5d98f1c7e0
was freeing random data. fix from vdlinden@fwi.uva.nl (Frank van der Linden)
1994-04-18 12:35:39 +00:00
cgd
fe80c33c9c
clean up; use standard headers and functions, rather than local def'ns.
1994-01-24 23:40:10 +00:00
glass
8cdd7bfe4f
warnings about incompatible declarations fixed.
...
fix from <thomas@mathematik.uni-Bremen.de>
1994-01-13 22:24:06 +00:00
mycroft
e9d867ef50
Add RCS identifiers.
1993-08-01 17:54:45 +00:00
cgd
61f282557f
initial import of 386bsd-0.1 sources
1993-03-21 09:45:37 +00:00