Displaying 7 results from an estimated 7 matches for "old_signal".
Did you mean:
bsd_signal
2002 Oct 13
1
[PATCH] AIX password expiration
...p++) {
+ if (*p == '\n')
+ *p = ' ';
+ }
+ /* Remove trailing newline */
+ *--p = '\0';
+}
+
+int
+is_aix_password_change_required(void)
+{
+ return aix_password_change_required;
+}
+
+void
+do_aix_change_password(struct passwd *pw)
+{
+ pid_t pid;
+ int status;
+ mysig_t old_signal;
+
+ old_signal = mysignal(SIGCHLD, SIG_DFL);
+
+ if ((pid = fork()) == -1)
+ fatal("Couldn't fork: %s", strerror(errno));
+
+ if (pid == 0) {
+ setuid(pw->pw_uid);
+ execl("/usr/bin/passwd","passwd",pw->pw_name,
+ (char *)NULL);
+ }
+
+ if (waitpid(pid,...
2001 Sep 04
0
AIX Warning for expired password
...xloginmsg)
printf("%s\n", aixloginmsg);
+#endif /* WITH_AIXAUTHENTICATE */
+
+#ifdef WITH_AIXAUTHENTICATE
+
+ retval = passwdexpired(pw->pw_name,&msg);
+
+ if (msg && *msg)
+ printf("%s\n",msg);
+
+ if (retval == 1) {
+
+ pid_t pid;
+ int status;
+ mysig_t old_signal;
+
+ old_signal = mysignal(SIGCHLD, SIG_DFL);
+
+ if ((pid = fork()) == -1)
+ fatal("Couldn't fork: %s", strerror(errno));
+
+ if (pid == 0) {
+ setuid(pw->pw_uid);
+ execl("/usr/bin/passwd","passwd",pw->pw_name,
+ (char *)NULL);
+ }
+
+ if (wai...
2002 Dec 21
6
[PATCH] PAM chauthtok + Privsep
...);
monitor_permit(mon_dispatch, MONITOR_REQ_PTYCLEANUP, 1);
+ monitor_permit(mon_dispatch, MONITOR_REQ_PAM_CHAUTHTOK, 1);
}
for (;;)
@@ -746,6 +754,56 @@
xfree(user);
return (0);
+}
+
+int
+mm_answer_pam_chauthtok(int socket, Buffer *m)
+{
+ pid_t pid;
+ int ttyfd, status;
+ mysig_t old_signal;
+
+ old_signal = mysignal(SIGCHLD, SIG_DFL);
+
+ ttyfd = mm_receive_fd(socket);
+ debug3("%s: ttyfd=%d, ttyname=%s", __func__, ttyfd, ttyname(ttyfd));
+
+ if ((pid = fork()) == 0) {
+ /* acquire controlling tty */
+ pty_make_controlling_tty(ttyfd, ttyname(ttyfd));
+
+ /* set up stdin,...
2003 Jul 09
0
[PATCH] Add expired password handling for AIX.
...ed_password, pw_password) == 0);
#endif /* !HAVE_OSF_SIA */
+}
+
+/*
+ * Perform generic password change via tty. Like do_pam_chauthtok(),
+ * it throws a fatal error if the password can't be changed.
+ */
+int
+do_tty_change_password(struct passwd *pw)
+{
+ pid_t pid;
+ int status;
+ mysig_t old_signal;
+
+ old_signal = mysignal(SIGCHLD, SIG_DFL);
+
+ if ((pid = fork()) == -1)
+ fatal("Couldn't fork: %s", strerror(errno));
+
+ if (pid == 0) {
+ permanently_set_uid(pw);
+ if (geteuid() == 0)
+ execl(PASSWD_PROGRAM_PATH, PASSWD_PROGRAM_PATH,
+ pw->pw_name, (char *)NULL)...
2003 Jul 30
1
[PATCH] Password expiry merge (AIX parts)
...@ -168,4 +172,81 @@
}
# endif
#endif /* !HAVE_OSF_SIA */
+}
+
+/*
+ * Perform generic password change via tty. Like do_pam_chauthtok(),
+ * it throws a fatal error if the password can't be changed.
+ */
+int
+do_tty_change_password(struct passwd *pw)
+{
+ pid_t pid;
+ int status;
+ mysig_t old_signal;
+
+ old_signal = mysignal(SIGCHLD, SIG_DFL);
+
+ if ((pid = fork()) == -1)
+ fatal("Couldn't fork: %s", strerror(errno));
+
+ if (pid == 0) {
+ permanently_set_uid(pw);
+ if (geteuid() == 0)
+ execl(PASSWD_PROGRAM_PATH, PASSWD_PROGRAM_PATH,
+ pw->pw_name, (char *)NULL)...
2002 Nov 20
0
[PATCH #9] Password expiration via /bin/passwd.
...sword) == 0);
#endif /* !USE_PAM && !HAVE_OSF_SIA */
+}
+
+/*
+ * Perform generic password change via tty
+ * Like do_pam_chauthtok(), it throws a fatal error if the password can't be changed.
+ */
+void
+do_tty_change_password(struct passwd *pw)
+{
+ pid_t pid;
+ int status;
+ mysig_t old_signal;
+
+ old_signal = mysignal(SIGCHLD, SIG_DFL);
+
+ if ((pid = fork()) == -1)
+ fatal("Couldn't fork: %s", strerror(errno));
+
+ if (pid == 0) {
+ setuid(pw->pw_uid);
+ if (geteuid() == 0)
+ execl(PASSWD_PROGRAM_PATH, "passwd", pw->pw_name,
+ (char *)NULL);
+...
2002 Dec 10
5
[PATCH] Password expiry with Privsep and PAM
...);
monitor_permit(mon_dispatch, MONITOR_REQ_PTYCLEANUP, 1);
+ monitor_permit(mon_dispatch, MONITOR_REQ_PAM_CHAUTHTOK, 1);
}
for (;;)
@@ -746,6 +754,49 @@
xfree(user);
return (0);
+}
+
+int
+mm_answer_pam_chauthtok(int socket, Buffer *m)
+{
+ pid_t pid;
+ int ttyfd, status;
+ mysig_t old_signal;
+
+ old_signal = mysignal(SIGCHLD, SIG_DFL);
+
+ ttyfd = mm_receive_fd(socket);
+ debug("%s: ttyfd=%d, ttyname=%s", __func__, ttyfd, ttyname(ttyfd));
+
+ if ((pid = fork()) == 0) {
+ close(socket);
+ if (dup2(ttyfd, 0) < 0)
+ error("dup2 stdin: %s", strerror(errno));
+...