Hello community, here is the log from the commit of package permissions for openSUSE:Factory checked in at 2012-06-01 07:22:48 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/permissions (Old) and /work/SRC/openSUSE:Factory/.permissions.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "permissions", Maintainer is "[email protected]" Changes: -------- --- /work/SRC/openSUSE:Factory/permissions/permissions.changes 2012-05-25 16:18:08.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.permissions.new/permissions.changes 2012-06-01 07:22:50.000000000 +0200 @@ -1,0 +2,6 @@ +Thu May 31 11:07:25 UTC 2012 - [email protected] + +- Revert "Use credentials from within the root file system" + breaks use of --root option in brp-05-permissions + +------------------------------------------------------------------- Old: ---- permissions-2012.05.15.1646.tar.bz2 New: ---- permissions-2012.05.31.1307.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ permissions.spec ++++++ --- /var/tmp/diff_new_pack.nyyk7t/_old 2012-06-01 07:22:51.000000000 +0200 +++ /var/tmp/diff_new_pack.nyyk7t/_new 2012-06-01 07:22:51.000000000 +0200 @@ -24,7 +24,7 @@ License: GPL-2.0+ Group: Productivity/Security AutoReqProv: on -Version: 2012.05.15.1646 +Version: 2012.05.31.1307 Release: 1 Provides: aaa_base:/etc/permissions PreReq: %fillup_prereq ++++++ permissions-2012.05.15.1646.tar.bz2 -> permissions-2012.05.31.1307.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/permissions-2012.05.15.1646/chkstat.c new/permissions-2012.05.31.1307/chkstat.c --- old/permissions-2012.05.15.1646/chkstat.c 2012-05-15 16:46:07.000000000 +0200 +++ new/permissions-2012.05.31.1307/chkstat.c 2012-05-31 13:07:15.000000000 +0200 @@ -59,128 +59,6 @@ int npermfiles = 0; char* force_level; -static struct passwd* -_getpwuid(uid_t uid) -{ - char fn[PATH_MAX]; - struct passwd *pwd = 0; - FILE *fp = 0; - - if (!rootl) - return getpwuid(uid); - - // read the passwd from the root instead - strcpy(fn, root); - strcpy(fn+rootl, "/etc/passwd"); - - printf("trying %s\n", fn); - - fp = fopen(fn, "r"); - if (!fp) - goto out; - - while ((pwd = fgetpwent(fp))) - { - if (pwd->pw_uid == uid) - goto out; - } - -out: - if (fp) - fclose(fp); - return pwd; -} - -static struct passwd* -_getpwnam(const char *name) -{ - char fn[PATH_MAX]; - struct passwd *pwd = 0; - FILE *fp = 0; - - if (!rootl) - return getpwnam(name); - - // read the passwd from the root instead - strcpy(fn, root); - strcpy(fn+rootl, "/etc/passwd"); - - fp = fopen(fn, "r"); - if (!fp) - goto out; - - while ((pwd = fgetpwent(fp))) - { - if (strcmp(pwd->pw_name, name) == 0) - goto out; - } - -out: - if (fp) - fclose(fp); - return pwd; -} - -static struct group* -_getgrgid(gid_t gid) -{ - char fn[PATH_MAX]; - struct group *grp = 0; - FILE *fp = 0; - - if (!rootl) - return getgrgid(gid); - - // read the group from the root instead - strcpy(fn, root); - strcpy(fn+rootl, "/etc/passwd"); - - fp = fopen(fn, "r"); - if (!fp) - goto out; - - while ((grp = fgetgrent(fp))) - { - if (grp->gr_gid == gid) - goto out; - } - -out: - if (fp) - fclose(fp); - return grp; -} - -static struct group* -_getgrnam(const char *name) -{ - char fn[PATH_MAX]; - struct group *grp = 0; - FILE *fp = 0; - - if (!rootl) - return getgrnam(name); - - // read the group from the root instead - strcpy(fn, root); - strcpy(fn+rootl, "/etc/passwd"); - - fp = fopen(fn, "r"); - if (!fp) - goto out; - - while ((grp = fgetgrent(fp))) - { - if (strcmp(grp->gr_name, name) == 0) - goto out; - } - -out: - if (fp) - fclose(fp); - return grp; -} - struct perm* add_permlist(char *file, char *owner, char *group, mode_t mode) { @@ -1002,8 +880,8 @@ if (!e->mode && !strcmp(e->owner, "unknown")) { char uids[16], gids[16]; - pwd = _getpwuid(stb.st_uid); - grp = _getgrgid(stb.st_gid); + pwd = getpwuid(stb.st_uid); + grp = getgrgid(stb.st_gid); if (!pwd) sprintf(uids, "%d", stb.st_uid); if (!grp) @@ -1017,12 +895,12 @@ grp = 0; continue; } - if ((!pwd || strcmp(pwd->pw_name, e->owner)) && (pwd = _getpwnam(e->owner)) == 0) + if ((!pwd || strcmp(pwd->pw_name, e->owner)) && (pwd = getpwnam(e->owner)) == 0) { fprintf(stderr, "%s: unknown user %s\n", e->file+rootl, e->owner); continue; } - if ((!grp || strcmp(grp->gr_name, e->group)) && (grp = _getgrnam(e->group)) == 0) + if ((!grp || strcmp(grp->gr_name, e->group)) && (grp = getgrnam(e->group)) == 0) { fprintf(stderr, "%s: unknown group %s\n", e->file+rootl, e->group); continue; @@ -1084,8 +962,8 @@ printf(". (wrong"); if (!owner_ok) { - pwd = _getpwuid(stb.st_uid); - grp = _getgrgid(stb.st_gid); + pwd = getpwuid(stb.st_uid); + grp = getgrgid(stb.st_gid); if (pwd) printf(" owner/group %s", pwd->pw_name); else -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
