[comp.bugs.4bsd] Rdist

trinkle@arthur.cs.purdue.edu.UUCP (03/24/87)

Index:	ucb/rdist/server.c 4.3BSD

Description:
	Rdist prints a bogus group id when complaining about a non-existent
	group name for a file.  It is something like:
	
	/tmp/foo: no name for group 2147476189

	The problem is that the fourth argument to the log() call is missing.

Repeat-By:
	As root (only necessary for chgrp), change the group of a file to
	a numeric group that has no name (does not appear in /etc/group).
	Then rdist this file to localhost with at different installation
	localion.

	# touch /tmp/foo
	# chgrp 990 /tmp/foo
	# rdist -c /tmp/foo localhost:/tmp/bar
	updating host localhost
	/tmp/foo: no name for group 2147476189
	installing: /tmp/foo
	#

Fix:
	Add the fourth argument to the log() call complaining about the group.

*** /tmp/,RCSt1028282	Mon Mar 23 16:46:29 1987
--- /usr/src/ucb/rdist/server.c	Mon Mar 23 16:38:32 1987
***************
*** 289,295 ****
  		}
  	if (gr == NULL || gr->gr_gid != stb.st_gid)
  		if ((gr = getgrgid(stb.st_gid)) == NULL) {
! 			log(lfp, "%s: no name for group %d\n", target);
  			gr = NULL;
  			sprintf(group, ":%d", stb.st_gid);
  		}
--- 289,295 ----
  		}
  	if (gr == NULL || gr->gr_gid != stb.st_gid)
  		if ((gr = getgrgid(stb.st_gid)) == NULL) {
! 			log(lfp, "%s: no name for group %d\n", target, stb.st_gid);
  			gr = NULL;
  			sprintf(group, ":%d", stb.st_gid);
  		}
-- 
Daniel Trinkle			trinkle@cs.purdue.edu			ARPA
Computer Science Department	trinkle%purdue.edu@relay.cs.net		CSNET
Purdue University		{ucbvax,decvax,ihnp4}!purdue!trinkle	UUCP
West Lafayette, IN 47907	(317) 494-7832				PHONE