From 8383d2ccc1e5b1dce3e6f5268fdc99d56642ff66 Mon Sep 17 00:00:00 2001 From: Daniel Hokka Zakrisson Date: Fri, 11 Jul 2008 15:24:03 +0000 Subject: [PATCH] prctl does not work as well as this. Revert changeset 2731. git-svn-id: http://svn.linux-vserver.org/svn/util-vserver/trunk@2733 94cd875c-1c1d-0410-91d2-eb244daf1a30 --- src/vlogin.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/vlogin.c b/src/vlogin.c index dc47f93..9466ad8 100644 --- a/src/vlogin.c +++ b/src/vlogin.c @@ -38,7 +38,6 @@ #include #include #include -#include #define ENSC_WRAPPERS_PREFIX "vlogin: " #define ENSC_WRAPPERS_IOCTL 1 @@ -197,11 +196,11 @@ signal_handler(int sig) } -void do_vlogin(int UNUSED argc, char *argv[], int ind) +void do_vlogin(int argc, char *argv[], int ind) { int slave; pid_t pid; - int n; + int n, i; fd_set rfds; if (!isatty(0) || !isatty(1)) { @@ -253,7 +252,12 @@ void do_vlogin(int UNUSED argc, char *argv[], int ind) t.pid = pid; /* set process title for ps */ - prctl(PR_SET_NAME, (unsigned long) "login"); + n = strlen(argv[0]); + + for (i = 0; i < argc; i++) + memset(argv[i], '\0', strlen(argv[i])); + + strncpy(argv[0], "login", n); /* we want a redraw */ terminal_redraw(); -- 1.8.1.5