On Tue, May 6, 2008 at 2:09 PM, Glenn Fowler <gsf at research.att.com> wrote:
>  On Tue, 6 May 2008 13:45:24 -0700 Roland Mainz wrote:
>  > Just asking to be sure: |fts_open()|/|fts_read()|/etc. do not write to
>  > any global variables within libast and is supposed to be threadsafe
>  > assuming each thread manages it's own |FTS *| handle, right ?
>
>  each fts state is entirely in the fts_open() handle
>  to be thread-safe all or all but one caller must use FTS_NOCHDIR

Ok... that was the main issue I was worried about - I'd like to make
sure all ARC-contracted (or somehow else ARC'ed) interfaces be
threadsafe and maybe take a |flags| field (if appropriate) to make
sure we can adjust the API later on demand. Both items apply to the
|libast::ftp_*()| stuff which means it's IMHO Ok to open the
interfaces for ARC contracts (or something higher in the ARC stabilty
stuff).

>  if the system imposes a PATH_MAX limit then FTS_NOCHDIR will
>  limit search pathname depth to PATH_MAX
>
>  FTS_NOCHDIR limitations could be handled by opendirat()
>  but the ast fts implementation does not iffe for opendirat() yet

AFAIK that's not needed right now (e.g. it can be done much later in
the ksh93t or ksh93t+ development cycle).

-----

Bye,
Roland

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

Reply via email to