From: Jeff Squyres (jsquyres_at_[hidden])
Date: 2007-10-11 08:43:18


On Oct 10, 2007, at 9:58 AM, Ethan Mallove wrote:

>> - what's your "pass" criteria? Is it looking at wifexited and
>> wexitstatus?
>
> I have this:
>
> pass = &eq(&test_wexitstatus(), 0)
>
> I'm guessing it should it be changed to this?
>
> pass = &and(&test_wifexited(), &eq(&test_wexitstatus(), 0))

Yes -- try this.

>> - what does solaris return as an exit code in this case?
>
> Looks like 137.
>
> $ cc -G -o libbar.so bar.c
> $ file libbar.so
> libbar.so: ELF 32-bit MSB dynamic lib SPARC32PLUS Version 1,
> V8+ Required, dynamically linked, not stripped
> $ cc foo.c -L`pwd` -R`pwd` -lbar -o foo
> $ ldd foo
> libbar.so => /home/emallove/tmp/libbar.so
> ...
> $ ./foo
> $ echo $?
> 0
> $ rm libbar.so
> $ ldd foo
> libbar.so => (file not found)
> ...
> $ ./foo
> ld.so.1: foo: fatal: libbar.so: open failed: No such file or
> directory
> Killed
> $ echo $?
> 137

I honestly don't remember if $? is the exit code or the aggregate
return (i.e., it includes the bit indicating died-due-to-signal-or-not).

-- 
Jeff Squyres
Cisco Systems