Operating System - HP-UX
1826616 Members
2425 Online
109695 Solutions
New Discussion

script(1) fails on HP-UX 11.23

 
abc_18
Regular Advisor

script(1) fails on HP-UX 11.23

I'm trying to use script(1) to capture some terminal output, on HP-UX 11.23.

When run as a non-root user, it fails thusly:

serenity(fred) 186> script
Script started, file is typescript
could not set pty ownership and access mode
Script done due to signal 15, file is
typescript
could not reset pty ownership and access mode

----
I tried using tusc to troubleshoot it, and
get the following:

serenity(fred) 185> tusc script
execve("/bin/script", 0x9fffffffffffed28, 0x9fffffffffffed38) = 0 [32-bit]
mmap(NULL, 8192, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x777fb000
open("/usr/lib/hpux32/dld.so", O_RDONLY, 0) .............. = 3
read(3, "7fE L F 0102010101\0\0\0\0\0\0\0".., 52) ........ = 52
lseek(3, 52, SEEK_SET) ................................... = 52
read(3, "\0\0\006\0\0\04 \0\0\04 \0\0\0\0".., 288) ....... = 288
mmap(NULL, 456944, PROT_READ|PROT_EXEC, MAP_SHARED|MAP_FILE|MAP_SHLIB, 3, 0) = 0
xc0016000
sysconf(_SC_PAGE_SIZE) ................................... = 4096
mmap(NULL, 4168, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_SHLIB, -1,
0) = 0x777f9000
mmap(0x777f5000, 12312, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FILE|MAP_SHLIB, 3,
458752) = 0x777f5000
close(3) ................................................. = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x777f3000
audctl(0x9, NULL, NULL, F_OK) ............................ = 0
procxsec(4, -1, 0x7fffea30, 40) .......................... ERR#251 ENOSYS
sysconf(_SC_PAGE_SIZE) ................................... = 4096
getuid() ................................................. = 15443 (15443)
getuid() ................................................. = 15443 (15443)
getgid() ................................................. = 20 (20)
getgid() ................................................. = 20 (20)
stat("/usr/lib/hpux32/dpd", 0x7fffe9e0) .................. = 0
open("/usr/lib/hpux32/dpd", O_RDONLY, 0) ................. = 3
fcntl(3, F_SETFD, 0) ..................................... = 0
mmap(NULL, 16384, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x777ec000
getdents(3, 0x777ec028, 8192) ............................ = 80
getdents(3, 0x777ec028, 8192) ............................ = 0
close(3) ................................................. = 0
open("/bin/script", O_RDONLY, 0) ......................... = 3
lseek(3, 404, SEEK_SET) .................................. = 404
read(3, "\0\0\002\0\0\0, \0\0\0\aH P \0\0".., 60) ........ = 60
close(3) ................................................. = 0
open("/usr/lib/hpux32/libc.so.1", O_RDONLY, 0) ........... = 3
fstat(3, 0x7fffe900) ..................................... = 0
read(3, "7fE L F 0102010101\0\0\0\0\0\0\0".., 52) ........ = 52
lseek(3, 0, SEEK_SET) .................................... = 0
read(3, "7fE L F 0102010101\0\0\0\0\0\0\0".., 1024) ...... = 1024
mmap(NULL, 2613376, PROT_READ|PROT_EXEC, MAP_SHARED|MAP_SHLIB, 3, 0) = 0xc011900
0
madvise(0xc0119000, 0x27e080, MADV_NORMAL) ............... = 0
mmap(NULL, 41256, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS|MAP_
SHLIB, -1, 0) = 0x777e0000
madvise(0x777e0000, 0xa128, MADV_NORMAL) ................. = 0
mmap(0x777d9000, 26548, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_SHLIB, 3
, 2617344) = 0x777d9000
madvise(0x777d9000, 0x67b4, MADV_NORMAL) ................. = 0
close(3) ................................................. = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x777f1000
open("/usr/lib/hpux32/libdl.so.1", O_RDONLY, 0) .......... = 3
fstat(3, 0x7fffe900) ..................................... = 0
read(3, "7fE L F 0102010101\0\0\0\0\0\0\0".., 52) ........ = 52
lseek(3, 0, SEEK_SET) .................................... = 0
read(3, "7fE L F 0102010101\0\0\0\0\0\0\0".., 1024) ...... = 1024
mmap(NULL, 15728, PROT_READ|PROT_EXEC, MAP_SHARED|MAP_SHLIB, 3, 0) = 0xc0398000
mmap(NULL, 224, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_SHLIB, 3, 16384)
= 0x777f0000
close(3) ................................................. = 0
open("/opt/graphics/OpenGL/lib/hpux32/libogltls.so", O_RDONLY, 0) ERR#2 ENOENT
sigsetreturn(NULL, 0x6211988, 48640) ..................... = 0
mmap(NULL, 3336, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x777
eb000
open("typescript", O_WRONLY|O_CREAT|O_TRUNC, 0666) ....... = 3
time(NULL) ............................................... = 1169485785
sysconf(_SC_CPU_VERSION) ................................. = 768
brk(0x40000b30) .......................................... = 0
brk(0x40002b20) .......................................... = 0
brk(0x40004000) .......................................... = 0
stat("/usr/lib/tztab", 0x7fffe810) ....................... = 0
open("/usr/lib/tztab", O_RDONLY, 01210) .................. = 4
mmap(NULL, 13197, PROT_READ, MAP_PRIVATE, 4, 0) .......... = 0x777d5000
close(4) ................................................. = 0
write(3, "S c r i p t s t a r t e d o ".., 18) ....... = 18
write(3, "M o n J a n 2 2 0 9 : 0 9 ".., 25) ....... = 25
brk(0x40006000) .......................................... = 0
ioctl(1, TCGETA, 0x7fffe960) ............................. = 0
Script started, file is typescript
write(1, "S c r i p t s t a r t e d , ".., 35) ....... = 35
ioctl(0, TCGETA, 0x40000b00) ............................. = 0
sigprocmask(SIG_BLOCK, 0x7fffea00, 0x40000ac0) ........... = 0
sigsetreturn(NULL, 0x6211988, 48640) ..................... = 0
sigaction(SIGINT, 0x7fffea20, NULL) ...................... = 0
sigaction(SIGQUIT, 0x7fffea20, NULL) ..................... = 0
sigaction(SIGCLD, 0x7fffea20, NULL) ...................... = 0
sigaction(SIGHUP, 0x7fffea20, NULL) ...................... = 0
sigaction(SIGILL, 0x7fffea20, NULL) ...................... = 0
sigaction(SIGTRAP, 0x7fffea20, NULL) ..................... = 0
sigaction(SIGABRT, 0x7fffea20, NULL) ..................... = 0
sigaction(SIGEMT, 0x7fffea20, NULL) ...................... = 0
sigaction(SIGFPE, 0x7fffea20, NULL) ...................... = 0
sigaction(SIGBUS, 0x7fffea20, NULL) ...................... = 0
sigaction(SIGSEGV, 0x7fffea20, NULL) ..................... = 0
sigaction(SIGSYS, 0x7fffea20, NULL) ...................... = 0
sigaction(SIGPIPE, 0x7fffea20, NULL) ..................... = 0
sigaction(SIGALRM, 0x7fffea20, NULL) ..................... = 0
sigaction(SIGTERM, 0x7fffea20, NULL) ..................... = 0
sigaction(SIGUSR1, 0x7fffea20, NULL) ..................... = 0
sigaction(SIGUSR2, 0x7fffea20, NULL) ..................... = 0
sigaction(SIGVTALRM, 0x7fffea20, NULL) ................... = 0
ioctl(0, TCSETA, 0x40000ae0) ............................. = 0
open("/dev/ptym/cl
one", O_RDWR, 0) ....................... = 4
brk(0x40007000) ....................
...................... = 0
brk(0x4000a000) ......................................
.... = 0
fstat(4, 0x7fffe980) ..................................... = 0
ioctl(4, I
SPTM, NULL) .................................... ERR#22 EINVAL
ioctl(4, ISBSDPTM,
0x7fffe970) ........................... = 0
ioctl(4, ISBSDPTS, 0x7fffe970) .....
...................... = 0
stat("/dev/pty/ttyp3", 0x7fffe980) ...................
.... = 0
fork() ................................................... = 19825
sigpro
cmask(SIG_SETMASK, 0x40000ac0, NULL) ............... = 0
sigaction(SIGHUP, 0x7fff
dda0, NULL) ...................... = 0
getnumfds() ..............................
................ = 5
brk(0x4000b000) .......................................... =
0
could not set pty ownership and access mode
Received signal 15, SIGTERM, in s
elect(), [caught], no siginfo
select(5, 0x400098d0, 0x400098f0, 0x40009910, NULL)
...... ERR#4 EINTR
time(NULL) ............................................... =
1169485785
write(3, "\ns c r i p t d o n e d u e ".., 30) ....... = 30
Recei
ved signal 18, SIGCLD, in write(), [SIG_DFL], no siginfo
write(3, "M o n J a n
2 2 0 9 : 0 9 ".., 25) ....... = 25
Script done due to signal 15, file is typ
escript
write(1, "S c r i p t d o n e d u e ".., 50) ....... = 50
ioctl(0, TCSETA,
0x40000b00) ............................. = 0
sigaction(SIGINT, 0x7fff8a90, 0x7fff8ac0) ................ = 0
sigaction(SIGQUIT, 0x7fff8a90, 0x7fff8af0) ............... = 0
Received signal 18, SIGCLD, in sigaction(), [SIG_DFL], no siginfo
sigaction(SIGCLD, 0x7fff8a90, 0x7fff8b20) ................ = 0
sigprocmask(SIG_BLOCK, 0x7fff8a94, 0x7fff8a70) ........... = 0
vfork() .................................................. = 19829
waitpid(19829, WIFEXITED(4), 0) .......................... = 19829
sigaction(SIGINT, 0x7fff8ac0, NULL) ...................... = 0
sigaction(SIGQUIT, 0x7fff8af0, NULL) ..................... = 0
sigaction(SIGCLD, 0x7fff8b20, NULL) ...................... = 0
Received signal 18, SIGCLD, in sigprocmask(), [SIG_DFL], no siginfo
sigprocmask(SIG_SETMASK, 0x7fff8a70, NULL) ............... = 0
could not reset pty ownership and access mode
write(1, "c o u l d n o t r e s e t ".., 46) ....... = 46
close(4) ................................................. = 0
close(3) ................................................. = 0
exit(0) .................................................. WIFEXITED(0)
serenity(fred) 186

----
I checked the perms on the 2 device files mentioned, /dev/ptym/clone and /dev/ptym/ttyp3, and they match the perms
on a (different, HP-UX 11.11) machine where script(1) does work. So that's not the problem.

Also, per /stand/build/system, the "clone" device driver is indeed in the kernel.

Furthermore, whence shows that I'm executing /bin/script, and the perms on /bin/script are the same on this (broken) system as on the working machine.

I've run out of ideas.
Any suggestions?

Thanks in advance.
1 REPLY 1
abc_18
Regular Advisor

Re: script(1) fails on HP-UX 11.23

Turns out some IT security "expert" had removed the setuid perms on /usr/lbin/protect_pty
Fixing that fixed the problem.