Home | History | Annotate | Download | only in gen
History log of /src/lib/libc/gen/devname.c
RevisionDateAuthorComments
 1.23  18-Feb-2019  christos appease string + int warning.
 1.22  03-Jun-2012  joerg branches: 1.22.32;
Switch device database to cdb(5). Rework ttyname(3) and ttyname_r(3) to
depend on new devname_r(3) as heart. Add /dev/pts magic directly to
devname(3). While it can lead to returning non-existing paths, the
behavior is more consistent that way. Drop caching layer in devname(3),
it doesn't buy anything for the common case of having access to the
database. Teach devname(3) proper fallback behavior of scanning /dev.
Create both old-style and new-style database for now in /etc/rc.d/sysdb.
 1.21  23-Mar-2010  drochner branches: 1.21.6; 1.21.8;
remove some stray __weak_aliases, where the target functions were
__RENAMEd due to the time_t/dev_t type changes, which caused bogus
references to compat functions
now a libc built with BUILDCOLD is usable
 1.20  19-Apr-2009  mrg add some code to cope with dev.db's that have 32 bit time_t's in them.

shouldn't be relevant very much as dev.db should be re-created at boot,
but it helped me at least twice so far...
 1.19  20-Jan-2009  drochner branches: 1.19.2;
Change major()/minor() to return 32-bit types again, called
devmajor_t/devminor_t, as proposed on tech-kern.
This avoids 64-bit arithmetics and 64-bit printf formats in parts
of the kernel where it is not really useful, and helps clarity.
 1.18  11-Jan-2009  christos merge christos-time_t
 1.17  28-Apr-2008  martin branches: 1.17.8;
Remove clause 3 and 4 from TNF licenses
 1.16  16-Dec-2004  atatat branches: 1.16.24;
Put caching back on the pts major number. It's worth the code
overhead not to go look it up a zillion times when running fstat or ps
on a machine with a billion people logged in. fstat mostly.
 1.15  16-Dec-2004  atatat Get rid of the private getptsname() function and use getdevmajor()
instead. It's really much better that way, you'll see.
 1.14  14-Dec-2004  atatat Properly return the constructed name for ptyfs nodes. Otherwise we
accidentally return NULL on the first call and find it in the cache on
all subsequent calls.
 1.13  11-Nov-2004  christos More error checking.
 1.12  11-Nov-2004  christos Recognize ptyfs ptys.
 1.11  13-Oct-2003  agc Move Keith Muller's code from a 4-clause to a 3-clause licence by removing
the advertising clause. Diffs provided in PR 22397 by Joel Baker, confirmed
to the board by Keith Muller.
 1.10  07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.9  05-Jun-2000  simonb Add a cache ala pwcache(3). Gives a small but measurable performance
improvement for callers to devname(3) (eg ps(1)) under most circumstances.
 1.8  22-Jan-2000  mycroft branches: 1.8.2;
Delint.
Remove trailing ; from uses of __weak_alias(). The macro inserts this if
needed.
 1.7  02-Feb-1998  perry merge/update to lite-2
 1.6  21-Jul-1997  jtc 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>.
 1.5  13-Jul-1997  christos Use "namespace.h"
Add missing stdlib.h
 1.4  25-Feb-1995  cgd branches: 1.4.4;
clean up Id's on files previously imported...
 1.3  12-Dec-1994  jtc branches: 1.3.2;
Rework indirect reference support as outlined by my recent message to
the tech-userlevel mailing list.
 1.2  11-Dec-1994  christos - Changed all internal libc references of {v,}err{x,} and {v,}warn{x,} to
__{v,}err{x,} and __{v,}warn{x,}
- moved err.c to __err.c and added err.c which contains weak references for
the above functions.
- Reordered the functions in __err.c to avoid redeclarations and changed
the varargs declarations to conform with the K&R style.
 1.1  06-May-1994  cgd branches: 1.1.1;
Initial revision
 1.1.1.2  02-Feb-1998  perry import lite-2
 1.1.1.1  06-May-1994  cgd devname() routine
 1.3.2.1  26-Apr-1995  jtc #include "namespace.h" where appropriate.
 1.4.4.2  19-Sep-1996  jtc snapshot namespace cleanup: gen
 1.4.4.1  16-Sep-1996  jtc snapshot namespace cleanup
 1.8.2.1  23-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.16.24.1  18-May-2008  yamt sync with head.
 1.17.8.2  08-Nov-2008  christos time_t changes
 1.17.8.1  28-Apr-2008  christos file devname.c was added on branch christos-time_t on 2008-11-08 21:45:38 +0000
 1.19.2.1  13-May-2009  jym Sync with HEAD.

Third (and last) commit. See http://mail-index.netbsd.org/source-changes/2009/05/13/msg221222.html
 1.21.8.1  23-Jun-2012  riz Pull up following revision(s) (requested by joerg in ticket #328):
lib/libc/gen/devname.c: revision 1.22
distrib/sparc64/instfs/dot.profile: revision 1.7
distrib/i386/cdroms/install.sh: revision 1.3
tests/lib/libcurses/director/director.c: revision 1.10
lib/libc/include/reentrant.h: revision 1.15
distrib/amd64/cdroms/install.sh: revision 1.3
tests/include/t_paths.c: revision 1.12
share/man/man7/hier.7: revision 1.101
etc/rc.d/sysdb: revision 1.24
include/stdlib.h: revision 1.99
tests/lib/libcurses/Makefile: revision 1.3
distrib/sparc64/cdroms/installcd/install.sh: revision 1.3
distrib/i386/cdroms/Makefile.cdrom: revision 1.27
lib/libc/gen/ttyname.c: revision 1.25
usr.bin/tic/Makefile: revision 1.2
tools/compat/Makefile: revision 1.57
lib/libterminfo/compile.c: revision 1.7
lib/libc/gen/ttyname.c: revision 1.26
lib/libterminfo/compile.c: revision 1.8
tools/compat/Makefile: revision 1.59
tools/compat/cdbw.h: revision 1.1
distrib/i386/installimage/install.sh: revision 1.2
lib/libc/include/namespace.h: revision 1.154
usr.bin/tic/tic.c: revision 1.13
usr.bin/tic/tic.c: revision 1.14
usr.bin/tic/tic.c: revision 1.15
distrib/sets/lists/base/mi: revision 1.996
usr.bin/tic/tic.c: revision 1.16
usr.sbin/dev_mkdb/dev_mkdb.8: revision 1.13
usr.bin/tic/tic.c: revision 1.17
usr.bin/tic/tic.c: revision 1.18
tools/compat/cdbr.h: revision 1.1
distrib/sparc64/instfs/list: revision 1.25
usr.bin/tic/tic.c: revision 1.19
lib/libc/cdb/cdbw.c: revision 1.4
lib/libc/cdb/cdbw.3: revision 1.4
lib/libc/cdb/cdbw.3: revision 1.5
share/terminfo/Makefile: revision 1.3
usr.sbin/dev_mkdb/dev_mkdb.c: revision 1.29
usr.sbin/dev_mkdb/Makefile: revision 1.8
lib/libc/gen/ttyname.3: revision 1.23
lib/libc/gen/ttyname.3: revision 1.24
lib/libc/cdb/cdbr.c: revision 1.3
include/cdbw.h: revision 1.2
distrib/sparc64/cdroms/installcd/Makefile: revision 1.15
lib/libc/gen/devname.3: revision 1.12
tools/compat/compat_defs.h: revision 1.85
tools/compat/compat_defs.h: revision 1.86
lib/libterminfo/term_private.h: revision 1.10
lib/libterminfo/term.c: revision 1.14
usr.bin/tic/tic.1: revision 1.10
lib/libterminfo/term.c: revision 1.15
lib/libterminfo/Makefile.hash: revision 1.5
lib/libterminfo/term.c: revision 1.16
distrib/amd64/installimage/install.sh: revision 1.2
share/man/man5/rc.conf.5: revision 1.152
distrib/sets/lists/tests/mi: revision 1.472
distrib/amd64/cdroms/Makefile.cdrom: revision 1.7
include/paths.h: revision 1.41
bin/ps/ps.1: revision 1.101
lib/libterminfo/terminfo.5.in: revision 1.16
usr.bin/tic/tic.c: revision 1.20
lib/libterminfo/terminfo.5.in: revision 1.17
Prefer __printflike.
Use queue(3)
Replace linear lookup with hash table, reducing runtime by 60%.
Use e* from util.h.
One more strdup -> estrdup.
Maintain nalias and nterm on the fly.
Add void for ttyslot prototype.
Use memcmp in place of strncmp, since length is known to no longer than
either of the arguments.
Fix a number of memory leaks. Keep final loop of the cleanup in tic(1)
under #ifdef __VALGRIND__ though.
Add __predict_true / __predict_false definitions.
Add a special seeder for cdbw_output that gives stable results.
Hook up cdbw(3) for the tool build.
Prototype for cdbw_stable_seeder.
Provide a usable thr_once for !_REENTRANT
Switch device database to cdb(5). Rework ttyname(3) and ttyname_r(3) to
depend on new devname_r(3) as heart. Add /dev/pts magic directly to
devname(3). While it can lead to returning non-existing paths, the
behavior is more consistent that way. Drop caching layer in devname(3),
it doesn't buy anything for the common case of having access to the
database. Teach devname(3) proper fallback behavior of scanning /dev.
Create both old-style and new-style database for now in /etc/rc.d/sysdb.
Switch terminfo(3) to cdb(5).
Fix typos.
Make Alan Barrett happy and add ().
Add cdbr(3) support to tools/compat.
Bump date for previous.
Relax consistency to make it possible to match valid entries.
Prefix devname's buffer with /dev/ as ttyname is supposed to return the
full path. Reported by Dave Huang.
 1.21.6.1  30-Oct-2012  yamt sync with head
 1.22.32.1  10-Jun-2019  christos Sync with HEAD

RSS XML Feed