Darren J Moffat wrote:
[CC:'ing ksh93-integration-discuss at opensolaris.org that
David&&Glenn&&co. can comment about libast issues...]
> The ZFS code base already reuses a few errno value from <sys/errno.h>
> that aren't generated else where on Solaris.

What happens if you have older code (e.g. SystemV or SunOS4.x binaries)
which assignes these values a special meaning ?

> In particularly these ones:
> 
> /* Convergent Error Returns */
> #define EBADE   50      /* invalid exchange                     */
> #define EBADR   51      /* invalid request descriptor           */
> 
> The way it currently does so is by a #define ECKSUM EBADE in the zfs
> header files.
> 
> I'd rather we just made the change in <sys/errno.h> and also change the
> text versions of these in libc as well.  However I've discovered that,
> like many other things recently, libast has a copy of this type of thing
> as well.

I did a quick grep -r '~(E)(EBADE|EBADR)' usr/src/lib/libast/ and got no
matches...
... where did you saw the copy ?

> So should we really be reusing errno's or should we just be appending on
> the end ?

I think traditionally you only append errno values and never re-use them
(e.g. as precedent see the now unused values for XENIX and RFS) ...

> Is the highest errno really fixed ?

Erm... why do you think that there is a limit (except |SHRT_MAX|) ?

----

Bye,
Roland

-- 
  __ .  . __
 (o.\ \/ /.o) roland.mainz at nrubsig.org
  \__\/\/__/  MPEG specialist, C&&JAVA&&Sun&&Unix programmer
  /O /==\ O\  TEL +49 641 3992797
 (;O/ \/ \O;)

Reply via email to