From 9fd98a6354105dd67b648b48dba238f4c3e3d564 Mon Sep 17 00:00:00 2001 From: Rich Felker Date: Thu, 16 May 2019 17:12:56 -0400 Subject: [PATCH] fix format strings for uid/gid values in putpwent/putgrent commit 648c3b4e18b2ce2b6af7d44783e42ca267ea49f5 omitted this change, which is needed to be able to use uid/gid values greater than INT_MAX with these interfaces. it fixes alpine linux bug #10460. --- src/passwd/putgrent.c | 2 +- src/passwd/putpwent.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/passwd/putgrent.c b/src/passwd/putgrent.c index a0b320fc..2a8257dc 100644 --- a/src/passwd/putgrent.c +++ b/src/passwd/putgrent.c @@ -7,7 +7,7 @@ int putgrent(const struct group *gr, FILE *f) int r; size_t i; flockfile(f); - if ((r = fprintf(f, "%s:%s:%d:", gr->gr_name, gr->gr_passwd, gr->gr_gid))<0) goto done; + if ((r = fprintf(f, "%s:%s:%u:", gr->gr_name, gr->gr_passwd, gr->gr_gid))<0) goto done; if (gr->gr_mem) for (i=0; gr->gr_mem[i]; i++) if ((r = fprintf(f, "%s%s", i?",":"", gr->gr_mem[i]))<0) goto done; r = fputc('\n', f); diff --git a/src/passwd/putpwent.c b/src/passwd/putpwent.c index 3a02e573..312b7653 100644 --- a/src/passwd/putpwent.c +++ b/src/passwd/putpwent.c @@ -4,7 +4,7 @@ int putpwent(const struct passwd *pw, FILE *f) { - return fprintf(f, "%s:%s:%d:%d:%s:%s:%s\n", + return fprintf(f, "%s:%s:%u:%u:%s:%s:%s\n", pw->pw_name, pw->pw_passwd, pw->pw_uid, pw->pw_gid, pw->pw_gecos, pw->pw_dir, pw->pw_shell)<0 ? -1 : 0; } -- 2.25.1