Hi,
Sorry, now it is really attached.
Thanks,
-Neal
--
Neal H Walfield
University of Massachusetts at Lowell
[EMAIL PROTECTED] or [EMAIL PROTECTED]
diff -ru base-passwd-3.1.7/update-passwd.c base-passwd-3.1.7-works/update-passwd.c
--- base-passwd-3.1.7/update-passwd.c Thu Jan 13 19:20:31 2000
+++ base-passwd-3.1.7-works/update-passwd.c Fri Sep 15 22:01:05 2000
@@ -800,12 +800,12 @@
* new copy, since it's useless anyway.
*/
int put_file_in_place(const char* source, const char* target) {
- char uf[PATH_MAX];
+ char *uf;
if (opt_verbose)
printf("Replacing \"%s\" with \"%s\"\n", target, source);
- snprintf(uf, PATH_MAX, "%s%s", target, UNLINK_EXTENSION);
+ asprintf(&uf, "%s%s", target, UNLINK_EXTENSION);
umask(0077);
@@ -831,7 +831,7 @@
/* Rewrite the account-database if we made any changes
*/
int commit_files() {
- char wf[PATH_MAX];
+ char *wf;
if (!flag_dirty) {
if (opt_verbose)
@@ -846,21 +846,21 @@
printf("%d changes have been made, rewriting files\n", flag_dirty);
- snprintf(wf, PATH_MAX, "%s%s", sys_passwd, WRITE_EXTENSION);
+ asprintf(&wf, "%s%s", sys_passwd, WRITE_EXTENSION);
if (!write_passwd(system_accounts, wf))
return 0;
if (!put_file_in_place(wf, sys_passwd))
return 0;
if (system_shadow!=NULL) {
- snprintf(wf, PATH_MAX, "%s%s", sys_shadow, WRITE_EXTENSION);
+ asprintf(&wf, "%s%s", sys_shadow, WRITE_EXTENSION);
if (!write_shadow(system_shadow, wf))
return 0;
if (!put_file_in_place(wf, sys_shadow))
return 0;
}
- snprintf(wf, PATH_MAX, "%s%s", sys_group, WRITE_EXTENSION);
+ asprintf(&wf, "%s%s", sys_group, WRITE_EXTENSION);
if (!write_group(system_groups, wf))
return 0;
if (!put_file_in_place(wf, sys_group))