Commit Graph

26 Commits

Author SHA1 Message Date
agc eb7c1594f1 Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22280, verified by myself.
2003-08-07 16:42:00 +00:00
dsl 5dbcc1e019 If VIS_CSTYLE is specified, use \ to escape any printable characters
(especially \ itself, and anything else in 'extra').
Fix strvis() and strvisx() to pass 0..255 to isgraph() etc.
2003-07-16 22:34:34 +00:00
pooka ff89c16683 adapt for vis()/svis() check separation 2002-07-03 17:18:09 +00:00
wiz 077b67effa __STDC__ is always defined on NetBSD. 2002-05-26 14:03:19 +00:00
christos e20c30d794 - Add VIS_HTTPSTYLE from FreeBSD.
- svis, strsvis, strsvisx were not reversible, because they did not encode
  \\ unless it was passed in the extras array.
- Fix documentation to match the proper signature of the functions.
2002-03-23 17:38:27 +00:00
tv 9fbd88883c Roll in fixes to permit cross-compiling from non-NetBSD hosts. This
round has been tested on Solaris/x86 and Linux hosts.

* Add host tools cap_mkdb, ctags, m4, uudecode.
* Protect __RCSID() and __COPYRIGHT() better.
* Reduce the number of places that need to include "config.h", to keep
  sources closer to their "vanilla" versions.
* Add more compat #defines and autoconf-checked functions.
2002-01-31 22:43:33 +00:00
tv c08a2cb7c2 Add hooks for reachover builds from src/tools/compat. 2002-01-21 21:33:42 +00:00
mycroft c26054b799 Delint. 2000-01-22 22:40:58 +00:00
mycroft 605490369c Delint.
Remove trailing ; from uses of __weak_alias().  The macro inserts this if
needed.
2000-01-22 22:19:07 +00:00
wennmach 12c643233f In SVIS, encode all characters on the extra list either in C-style
fashion (if possible) or as octal representation (else).
1999-12-07 18:20:28 +00:00
wennmach c70c65e8a1 Suggested by christos:
o unexpand spaces to tabs
o don't initialize non-static array extra[]; \0 terminate extra[]
  using an explicit assignment instead
1999-11-28 22:51:37 +00:00
wennmach 5f9f80b825 Added new functions
char *
     svis(char *dst, int c, int flag, int nextc, const char *extra);

     int
     strsvis(char *dst, const char *src, int flag, const char *extra);

     int
     strsvisx(char *dst, const char *src, size_t len, int flag,
             const char *extra);

These functions correspond to vis(), strvis(), and strvisx() but have an
additional argument extra, pointing to a NUL terminated list of characters.
These characters will be copied encoded or backslash-escaped into dst. These
functions are useful e. g.  to remove the special meaning of certain
characters to shells.

To implement the new functions, vis underwent a major rewrite. Most functions
now use a central macro, SVIS. Performance increase ~ factor 2.

Reviewed by Christos.
1999-11-25 16:50:06 +00:00
wennmach 2d27a472c9 Add some casts to u_char to get vis working again for characters > 0177
in VIS_OCTAL mode. Also, change the mask for the most significant tribble
to 03.

Reviewed by christos.

Fixes PR 8802.
1999-11-17 15:52:13 +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
christos 2c89343c25 delint 1998-11-13 15:46:52 +00:00
christos d6f530541f delint 1998-11-13 12:31:50 +00:00
perry 4146d58604 remove obsolete register declarations 1998-02-03 18:23:37 +00:00
jtc 43fa6fe319 If port provides __weak_alias(), provide an Standard C and POSIX pure
identifier namespace by renaming non standard functions and variables
such that they have a leading underscore.  The library will use those
names internally.  Weak aliases are used to provide the original names
to the API.

This is only the first part of this change.  It is most of the functions
which are implemented in C for all NetBSD ports.  Subsequent changes are
to add the same support to the remaining C files, to assembly files, and
to the automagically generated assembly source used for system calls.
When all of the above is done, ports with weak alias support should add
a definition for __weak_alias to <sys/cdefs.h>.
1997-07-21 14:06:24 +00:00
christos 7df7f83e92 Fix RCSID's
Fix gcc warnings.
1997-07-13 19:43:00 +00:00
cgd 63de9506bf merge with Lite, keep local changes. clean up id usage 1995-02-25 15:39:01 +00:00
jtc 9c20f740a3 Declare rcsid strings so they are stored in text segment. 1993-08-26 00:43:03 +00:00
mycroft 36af9568db I'm really mad now. Not only did this `new' version have exactly the same
bugs as the `old' one, but it was almost identical!
1993-08-03 22:48:35 +00:00
mycroft e7ae1531d5 Latest versions from uunet. 1993-07-30 07:57:48 +00:00
cgd 928342ac2c (1) compare against UCHAR_MAX, don't use isascii().
(2) strvis() didn't work on 0-length input strings
(3) strvisx() didn't work at all
1993-07-15 17:54:43 +00:00
cgd 61f282557f initial import of 386bsd-0.1 sources 1993-03-21 09:45:37 +00:00