Hi All,

I have a small problem here. I am unable to display uptime online.


THE PROBLEM:

A: Section 6 below: Why is the system uptime string not displayed when the
cgi script is run under chroot?

B: Section 4 below: Why does running uptime program under chroot yield time
that is not accurate? 6:54PM while the actual time was 9:54PM produced by
running uptime as root immediately after.



1: OpenBSD 5.9 (GENERIC.MP) #1888: Fri Feb 26 01:20:19 MST 2016
****************************************************************************************



2: DIRECTORY PERMISSIONS THE DEFAULT

*****************************************************************************************
# cd /var/www
# ls -l
total 40
drwxr-xr-x  2 root  daemon  512 Feb 26  2016 bin
drwx-----T  2 www   daemon  512 Feb 26  2016 cache
drwxr-xr-x  3 root  daemon  512 Sep 25 21:08 cgi-bin
drwxr-xr-x  2 root  daemon  512 Aug 16 13:45 conf
drwxr-xr-x  4 root  daemon  512 Aug 31 10:48 htdocs
-rw-------  1 www   daemon   69 Aug 27 08:15 htpasswd
drwxr-xr-x  2 root  daemon  512 Sep 25 00:00 logs
drwxr-xr-x  2 root  daemon  512 Sep 24 09:44 run
drwxr-xr-x  5 root  daemon  512 Sep 21 16:38 usr
drwxr-xr-x  3 root  daemon  512 Sep 24 00:28 var
#
******************************************************************************************



3: A CGI PROGRAM NAMED MYUPTIMER THAT SHOULD DISPLAY SYSTEM UPTIME.

******************************************************************************************
# vi /var/www/cgi-bin/myuptimer.c
#include <stdio.h>

int main(void)
{
        printf("Content-Type: text/plain;charset=us-ascii\n\n");
        fflush(stdout);
        system("/usr/bin/uptime");
        fflush(stdout);

  return 0;
}

******************************************************************************************



4: INSTALLING AND TESTING UPTIME PROGRAM UNDER CHROOT

********************************************************************************************
# cp /usr/bin/uptime  /var/www/usr/bin
# cp /usr/lib/libkvm.so.16.1  /var/www/usr/lib
# cp /usr/lib/libc.so.84.2  /var/www/usr/lib
# cp /usr/libexec/ld.so  /var/www/usr/libexec
# cp /var/run/utmp  /var/www/var/run
#
# chroot -u www /var/www uptime
 6:54PM   up  1  day,  12:09, 2 users, load averages: 0.11, 0.13, 0.18
#
# uptime
 9:54PM   up  1  day,  12:09, 1 user, load average: 0.11, 0.12, 0.13
*********************************************************************************************



5: RUNNING MYUPTIMER CGI PROGRAM  AS ROOT YIELDS GOOD RESULT

******************************************************************************************
# /var/www/cgi-bin/myuptimer.cgi
Content-Type: text/plain;charset=us-ascii

 9:54PM   up  1  day, 12:10, 1 user, load averages: 0.10, 0.12, 0.17
*******************************************************************************************



6: HOWEVER RUNNING MYUPTIMER CGI PROGRAM UNDER CHROOT NOT SO:
    DISPLAYS OTHER TEXT BUT THE UPTIME STRING IS NOT OUTPUT.

******************************************************************************************
# chroot -u www /var/www /cgi-bin/myuptimer.cgi
Content-Type: text/plain;charset=us-ascii


*******************************************************************************************





Regards,

Kihaguru.
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
/var/www/cgi-bin/uptimer.c: unmodified: line 1

Reply via email to