Re: If not readdir() then what?



On Sun, Apr 08, 2007 at 12:28:32PM -0700, H. Peter Anvin wrote:
Theodore Tso wrote:
It doesn't state explicitly that you can use the telldir cookie()
after closing the directory stream using closedir() and then reopening
it using opendir(), but given that it states that results are
undefined after a rewinddir() --- which is much less violent than a
closedir()/opendir(), I would definitely argue that an application
programmer would be very ill-advised to rely on this working.

(Of course, I'd argue that an application programmer shouldn't use
telldir/seekdir at all.....)

Ulrich, is it too late to insert a clarification that the telldir()
cookie isn't guaranteed to be valid after closedir() *or* rewinddir()?

More fundamentally, the telldir cookie should never be valid when
applied to a different DIR * (even one that refers to the same directory.)

Well, Joern thought that rm -rf might relying on the telldir cookie
being valid in precisely that circumstance. If that is true, I'd
argue that this is a BUG in GNU coreutils that should be fixed...

- Ted

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



Relevant Pages

  • Re: If not readdir() then what?
    ... after closing the directory stream using closedir() and then reopening ... the telldir cookie should never be valid when applied to a different DIR * ...
    (Linux-Kernel)
  • Re: If not readdir() then what?
    ... Joern thought that rm -rf might relying on the telldir cookie ... argue that this is a BUG in GNU coreutils that should be fixed... ... SuSE Linux Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany ...
    (Linux-Kernel)