On Sun, 11 Apr 2010 02:04:29 +0200 Chris Pickett wrote:
> I have a small wish list for libast
> 1. sfopenat(), which does sfopen() with the extra arguments of
> openat() to access files relative to a directory fd and NFS version 4
> XATTR files.
a bunch of planning is needed before we add the first *at() call
I imagine that will be done in conjunction with extended ACLS
> 2. AST sort should have these two options for GNU+OSX sort compatibility:
> -b, --ignore-leading-blanks ignore leading blanks
> -z, --zero-terminated end lines with 0 byte, not newline
> (conflicts with AST sort -z, can the AST sort option be renamed?)
> For Solaris /usr/bin/sort option -S compatibility:
> -S kmem Specifies the maximum amount of swap-based
> memory used for sorting, in kilobytes (the
> default unit). kmem can also be specified
> directly as a number of bytes (b), kilobytes
> (k), megabytes (m), gigabytes (g), or tera-
> bytes (t); or as a percentage (%) of the
> installed physical memory.
> This conflicts with AST sort -S, can the AST sort option be renamed to
> avert conflict?
--ignore-leading-blanks added as an alternative to { -b --ignorespace }
-S,--unstable dropped (its the default)
--nostable supported for aliases to make sure default is set
-SN made equivalent to -yN which is already equivalent to -zpN
'%' in N not supported -- no consistent/portable way to implement that
the ast -z<type><size> is sort of too embedded to change
besides, ast sort has a more general alternative -R,--record,--recfmt
which encodes fixed size, variable size, and variable terminated records
e.g., -Rh4o0z2bi is the 4 byte IBM V format descriptor and
-Rd'\0' is the '\0' terminated record descriptor
(although there is a bug, just fixed, in the libast recfmt(3) that botches -Rd)
> 3. AST cmp should have these two options for GNU+OSX compatibility:
> -b --print-bytes Print differing bytes
> -n LIMIT --bytes=LIMIT Compare at most LIMIT bytes
ast cmp already has -c,--print-chars which does cat -v style display
I added -b,--print-bytes, but it prints the %03o form
-l -b -c can be combined
-l is equivalent to the standard -lb
cmp -lb
2 311 312
4 011 012
cmp -lc
2 M-I M-J
4 ^I ^J
cmp -lbc
2 311 M-I 312 M-J
4 011 ^I 012 ^J
there will be some situations where compatibility with all variants is
impossible
the ast goals are to be posix/xopen compliant, then to be consistent
within all ast commands and libraries, and then to be consistent with popular
extension where possible
a large part of consistency is the library interfaces below the command apis
in ast there is usually only one way, implemented in one place, to do
common operations, e.g., sfio, cdt, vmalloc, paired string parsers/formatters,
runtime plugins ...
_______________________________________________
ast-developers mailing list
[email protected]
https://mailman.research.att.com/mailman/listinfo/ast-developers