… | |
… | |
1443 | } |
1443 | } |
1444 | |
1444 | |
1445 | _exit (EXIT_FAILURE); |
1445 | _exit (EXIT_FAILURE); |
1446 | |
1446 | |
1447 | default: |
1447 | default: |
1448 | { |
|
|
1449 | #if defined(HAVE_STRUCT_UTMP) && defined(HAVE_TTYSLOT) |
|
|
1450 | int fdstdin; |
|
|
1451 | |
|
|
1452 | fdstdin = dup (STDIN_FILENO); |
|
|
1453 | dup2 (pty->tty, STDIN_FILENO); |
|
|
1454 | #endif |
|
|
1455 | |
|
|
1456 | #ifdef UTMP_SUPPORT |
1448 | #if UTMP_SUPPORT |
1457 | privileged_utmp (SAVE); |
1449 | if (!OPTION (Opt_utmpInhibit)) |
|
|
1450 | pty->login (cmd_pid, OPTION (Opt_loginShell), rs[Rs_display_name]); |
1458 | #endif |
1451 | #endif |
1459 | |
|
|
1460 | #if defined(HAVE_STRUCT_UTMP) && defined(HAVE_TTYSLOT) |
|
|
1461 | |
|
|
1462 | dup2 (fdstdin, STDIN_FILENO); |
|
|
1463 | close (fdstdin); |
|
|
1464 | #endif |
|
|
1465 | } |
|
|
1466 | |
1452 | |
1467 | pty->close_tty (); |
1453 | pty->close_tty (); |
1468 | break; |
1454 | break; |
1469 | } |
1455 | } |
1470 | } |
1456 | } |