diff --git a/src/chgpasswd.c b/src/chgpasswd.c index b750994e..fe4055d8 100644 --- a/src/chgpasswd.c +++ b/src/chgpasswd.c @@ -424,6 +424,12 @@ int main (int argc, char **argv) (void) bindtextdomain (PACKAGE, LOCALEDIR); (void) textdomain (PACKAGE); +#ifdef WITH_SELINUX + if (check_selinux_permit ("passwd") != 0) { + return (E_NOPERM); + } +#endif /* WITH_SELINUX */ + process_root_flag ("-R", argc, argv); process_flags (argc, argv); diff --git a/src/chpasswd.c b/src/chpasswd.c index 4a04c4f4..3cfd611e 100644 --- a/src/chpasswd.c +++ b/src/chpasswd.c @@ -452,6 +452,12 @@ int main (int argc, char **argv) (void) bindtextdomain (PACKAGE, LOCALEDIR); (void) textdomain (PACKAGE); +#ifdef WITH_SELINUX + if (check_selinux_permit ("passwd") != 0) { + return (E_NOPERM); + } +#endif /* WITH_SELINUX */ + process_flags (argc, argv); salt = get_salt();