Garrett D'Amore wrote: > Robert Thurlow wrote: >> Garrett D'Amore wrote: >> >>> I'm confused. Brian says that archivers Just Work with the current >>> form, because the attributes are retained. Yet, you're saying that >>> the attributes are not necessarily retained. Which is it? Right >>> now, either way, you have an attribute... which I *think* means that >>> the you need support (which may or may not be present) in the archivers. >> >> I know that some archivers in use today will not create a different >> bitstream for a reparse point than for a regular symlink, but I >> believe our intent to set the bit on restore or create means that >> we don't have to teach all archivers about the new bit. If any >> Sun-maintained archivers are aware, that's fine, but this should >> work with GNU tar, too. > > Okay, that's an important detail that I missed somewhere. (Was it in > the original spec?) >
Yes, it is: fop_symlink() needs to be modified to recognize the reparse @{REPARSE} tag and pass the appropriate attribute (i.e. reparse system attribute) to VOP_SYMLINK to be set on the symlink. Afshin >> >> Logically, that bit is only a way for the NFS/CIFS server >> code to avoid having to read the symlink data to understand >> that it's touched a reparse point. We want this because the >> referral is a two-part deal - we return an "it's not here" >> error to the client first, and then respond to a followup >> query later. The sysattr makes an NFSv4 READDIR op able to >> avoid N accesses to symlink data. > > OK. > > -- Garrett >> >> Rob T >