Actions
Feature #4590
closedAdd diagnostic/lft tool
Start date:
2014-02-10
Due date:
% Done:
100%
Estimated time:
Difficulty:
Medium
Tags:
needs-triage
Description
Hi
we have lot of diagnostics tools already, but would be nice to have one more lft:
http://pwhois.org/lft/
It requires libpcap (which is already present and it is easy to compile with gcc:
./configure --prefix=/prefix/path
Regards.
Updated by Aurélien Larcher over 7 years ago
Hi Predrag,
after seeing your ticket I pushed a component to oi-userland:
https://github.com/OpenIndiana/oi-userland/pull/780
Regards,
Aurelien
Updated by Predrag Zečević over 7 years ago
Hi,
Thanks! I just installed it on my /hipster-2014.1 installation.
With best regards.
Predrag Zečević
Updated by Alexander Pyhalov over 7 years ago
- Status changed from New to Feedback
- % Done changed from 0 to 100
Updated by Ken Mays over 7 years ago
- Status changed from Feedback to Closed
- Assignee set to OI Userland
Resolved in Hipster-2014.1.
Updated by Predrag Zečević over 7 years ago
Hi,
not sure if update on closed ticket will cause attention, but whob utility from /hispter lft package just timeouts:
$ pkg publisher openindiana.org Publisher: openindiana.org Alias: Origin URI: http://pkg.openindiana.org/hipster-2015/ SSL Key: None SSL Cert: None Client UUID: 08bfde0c-5000-fd2f-f84e-040800000000 Catalog Updated: February 5, 2015 09:16:48 PM Enabled: Yes $ pkg info lft Name: diagnostic/lft Summary: Layer Four Traceroute (LFT) and WhoB Category: Applications/System Utilities State: Installed Publisher: openindiana.org Version: 3.72 Branch: 2014.1.2.0 Packaging Date: September 11, 2014 02:59:16 PM Size: 187.24 kB FMRI: pkg://openindiana.org/diagnostic/lft@3.72-2014.1.2.0:20140911T145916Z
$ truss -f /usr/bin/whob 8.8.8.8 9499: execve("/usr/bin/whob", 0x08046D04, 0x08046D10) argc = 2 9499: sysinfo(SI_MACHINE, "i86pc", 257) = 6 9499: mmap(0x00000000, 32, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, -1, 0) = 0xFEFB0000 9499: mmap(0x00000000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANON, -1, 0) = 0xFEFA0000 9499: mmap(0x00000000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANON, -1, 0) = 0xFEF90000 9499: memcntl(0xFEFB6000, 47172, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0 9499: mmap(0x00000000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, -1, 0) = 0xFEF80000 9499: memcntl(0x08050000, 6676, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0 9499: resolvepath("/usr/lib/ld.so.1", "/lib/ld.so.1", 1023) = 12 9499: resolvepath("/usr/bin/whob", "/usr/bin/whob", 1023) = 13 9499: sysconfig(_CONFIG_PAGESIZE) = 4096 9499: stat64("/usr/bin/whob", 0x08046998) = 0 9499: open("/var/ld/ld.config", O_RDONLY) = 3 9499: fstat64(3, 0x08046518) = 0 9499: mmap(0x00000000, 128, PROT_READ, MAP_SHARED, 3, 0) = 0xFEF70000 9499: close(3) = 0 9499: stat64("/lib/libc.so.1", 0x080461B8) = 0 9499: resolvepath("/lib/libc.so.1", "/lib/libc.so.1", 1023) = 14 9499: open("/lib/libc.so.1", O_RDONLY) = 3 9499: mmapobj(3, MMOBJ_INTERPRET, 0xFEF80660, 0x08046224, 0x00000000) = 0 9499: close(3) = 0 9499: memcntl(0xFEE10000, 251896, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0 9499: mmap(0x00000000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, -1, 0) = 0xFEE00000 9499: mmap(0x00010000, 24576, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFEDF0000 9499: getcontext(0x080467D8) 9499: getrlimit(RLIMIT_STACK, 0x080467D0) = 0 9499: getpid() = 9499 [9498] 9499: lwp_private(0, 1, 0xFEDF2A40) = 0x000001C3 9499: setustack(0xFEDF2AA0) 9499: sysi86(SI86FPSTART, 0xFEF62E4C, 0x0000133F, 0x00001F80) = 0x00000001 9499: brk(0x0806AAC8) = 0 9499: brk(0x0806CAC8) = 0 9499: fstat64(1, 0x08046AD0) = 0 9499: brk(0x0806CAC8) = 0 9499: brk(0x08108AC8) = 0 9499: brk(0x08108AC8) = 0 9499: brk(0x081A4AC8) = 0 9499: ioctl(0, TCGETA, 0x08046AAE) = 0 9499: fstat64(0, 0x080469F0) = 0 9499: read(0, 0xFEF62E64, 1024) (sleeping...) ^^^^^^ --- stops here forever
So, I have compiled (using gcc (GCC) 4.8.3) lft 3.73 again and it works fine. Also:
$ ldd /usr/bin/whob libresolv.so.2 => /lib/libresolv.so.2 libsocket.so.1 => /lib/libsocket.so.1 libnsl.so.1 => /lib/libnsl.so.1 libc.so.1 => /lib/libc.so.1 libmd.so.1 => /lib/libmd.so.1 libmp.so.2 => /lib/libmp.so.2 libm.so.2 => /lib/libm.so.2 $ ldd /opt/SFW/bin/whob libpcap.so.1 => /usr/lib/libpcap.so.1 libm.so.2 => /lib/libm.so.2 libresolv.so.2 => /lib/libresolv.so.2 libsocket.so.1 => /lib/libsocket.so.1 libnsl.so.1 => /lib/libnsl.so.1 libc.so.1 => /lib/libc.so.1 libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 libmd.so.1 => /lib/libmd.so.1 libmp.so.2 => /lib/libmp.so.2
Looks like whob from IPS package is missing link to libpcap.
Just FYI.
Regards.
Actions