[Box Backup] Feature requests
Joe Krahn
boxbackup@fluffy.co.uk
Thu, 09 Dec 2004 19:29:31 -0500
Ben Summers wrote:
...
>> 2) Add 'One File System' support. This is easy: just check st.st_dev
>> for rLocalPath, and don't save anything whose st_dev is different.
>> (I'm testing this now.)
>
> Is st.st_dev going to work cross platform? I don't quite trust this, but
> can't find any references with a quick google which suggests it won't work.
My guess is that any OS not supporting it will not be using directories
as mount points. In Windows, there are no directory mount points. But,
Cygwin does have pseudo mount points, so it should emulate this if it is
not part of Windows fstat. I'll check it out tonight, from Cygwin and MS
VC. In any case, it should make no difference unless the one-file-system
option is enabled.
>> 3) It seems that extended attributes, like user/group, are saved.
>> If they are, how can I list them?
> You can't at the moment. Attributes are embedded into the files (or the
> directory record if and only if the attributes change by the data
> doesn't) so to get the attributes the file would have to be downloaded.
> It would be possible for the server to extract that bit of information
> and send it, I suppose. (as attributes are encrypted separately.)
>
> Is this really necessary?
If you have a shared/public disk, it is nice to see who owns a file. It
could also be useful for allowing a user to browse backed-up directories
based on their user/group/permission properties.
Normally, it is sufficient just to download a file and look at the
user/group/mode/size you get back. So, if it's not easy, then I would
skip it for now, but keep it in mind when expanding the attribute
support, i.e. for MacOS. Maybe add the option of a file-download sending
a list of components to return, one of them being the really big "data
attribute".
...
>> 5) Maybe make attributes somewhat extensible, via a 'get_attributes'
>> function that makes it easy for users to modify without delving
>> into the main source code.
>
>
> See BackupClientFileAttributes::ReadAttributes(). There's the basis of a
> scheme for extensible attributes, written with Win32 ACLs in mind.
Is there a matching WriteAttributes? (I didn't look yet -- I'm actually
not all that interested in better attribute support; there are other
more valuable things to work on.)
>
> How do you think a user might want to modify the attributes? Surely such
> things should be fairly generic (for each type of available attributes)
> and in the base distribution once written.
>
Well, I would guess that most useful attributes are part of the UDF
standard, along with ACL's, which may not be there. Most things would be
pretty simple name/type things. ACL's are probably the most complicated
due to the variable number of items.
Joe