From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Tue, 19 Nov 2002 15:21:38 +0300 From: Igor Homyakov To: ALT Linux Sisyphus Cc: ldv@altlinux.ru Message-ID: <20021119122138.GE27615@kadath.pm.ramax.spb.ru> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="/9DWx/yDrRhgMJTb" Content-Disposition: inline Content-Transfer-Encoding: 8bit User-Agent: Mutt/1.4i X-Operating-System: GNU/Linux (ALT Linux http://altlinux.org) Subject: [sisyphus] [procps] wrong process UID Sender: sisyphus-admin@altlinux.ru Errors-To: sisyphus-admin@altlinux.ru X-BeenThere: sisyphus@altlinux.ru X-Mailman-Version: 2.0.9 Precedence: bulk Reply-To: sisyphus@altlinux.ru List-Unsubscribe: , List-Id: List-Post: List-Help: List-Subscribe: , List-Archive: Archived-At: List-Archive: --/9DWx/yDrRhgMJTb Content-Type: text/plain; charset=koi8-r Content-Disposition: inline Content-Transfer-Encoding: 8bit Утилита ps не правильно отображает UID процесса, точнее она показвает его EUID вместо UID. Приложен простенький тест, процесс запускаеться и меняет свой эфеективный ID после чего выводит значения UID и EUID. Как видно ps показывает одинаковые значения. $ sudo ./a.out running: pid 28854, uid 0, euid 113 $ ps -axo pid,uid,euid | grep 28854 28854 113 113 -- Igor Homyakov http://counter.li.org/cgi-bin/runscript/display-person.cgi?user=190141 --/9DWx/yDrRhgMJTb Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="euid_test.c" /* -*- C -*- * * $Id$ * * Author: Igor Homyakov * * Created: Tue Nov 19 15:02:05 2002 * * Comments: stupid test * */ #include #include #include #include int main (int argc, char* argv[]) { uid_t euid = 113; unsigned int timeout = 30; if ( seteuid( euid ) == -1 ) { perror("seteuid err:"); exit(1); } else { (void)printf( "running: pid %d, uid %d, euid %d\n", getpid(), getuid(), geteuid()); (void)sleep( timeout ); } return 0; } --/9DWx/yDrRhgMJTb--