Subject: Re: getpw*() changes to support YP netgroups
To: Jason Downs <downsj@SJ.Xenotropic.COM>
From: Christos Zoulas <christos@deshaw.com>
List: tech-userlevel
Date: 07/17/1995 21:12:09
On Jul 17,  1:20pm, downsj@SJ.Xenotropic.COM (Jason Downs) wrote:
-- Subject: Re: getpw*() changes to support YP netgroups

| >Well, commercial software that is dynamically linked, will continue to
| >work. Statically linked software will break. There is not much that can
| >be done. If we want netgroups to work, we have to update the format.
| 
| This has got to be the stupidest thing I've ever heard.  NetBSD can't
| even scrape enough users together to *get* any decent commercial
| software, and here you go making format changes to a fundamental
| portion of the system which will break any 1.0-style binaries when
| running under post-1.0.

Wow, what hostility! Did I step on your toes and I did not realize it?
I asked for peoples' opinions before I committed anything and you are
already being insulting and unreasonable.

| NetBSD is already a `moving target' for commcerial developers.  This
| just made it worse ten fold, and proved all the points I find myself
| arguing about with various people.  I.e., that NetBSD is not a
| platform that encourages any sort of serious commercial development.

There are better ways to ensure compatibility. Unfortunately in this
case, poor design makes things difficult.

| >| 	2. what has been done so that we won't be faced with this same
| >| 	   issue 6 months or one year from now?
| >
| >The database format is now:
| >
| >    line-number followed by the actual passwd line
| >
| >This is more generic than it used to be. The line number addition is
| >necessary because YP entries have to be processed in the order they are
| >encountered in the file.

One could put a version # in the *.db files and check for it,
falling back to the original text files when that does not match.

| Bull.  You could already seek through the password database in the same
| order as it was built from.  At least base your reasoning in fact.

I should have been more clear here: Yes you can do it using a
sequential scan under the current database format, but for every lookup
you'll pay the penalty of scanning through the whole local password
file. What is the reason of having a database then? I can just ignore
the fact that I have a database if I am using yp, and get the same
performance... [Yes and I have heard the argument that when you use
YP the local passwd file is short...]

How can you tell if the uid and gid are not set on a local '+username'
entry under the current format? Oh, yes I know SunOS does not allow
that.

I understand sacrificing some performance for compatibility, but in
this case:
	a. You are not using the databases at all.
	b. The current format is actually losing information
	   contained in the passwd file. [I.e. you lose track
	   of which numeric fields were actually set].

In the future please keep the discussion at a technical level, avoiding
inflammatory comments.

christos