rdiff-backup-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [rdiff-backup-users] ListError on Solaris "door" files


From: Ben Escoto
Subject: Re: [rdiff-backup-users] ListError on Solaris "door" files
Date: Mon, 12 Dec 2005 07:51:12 -0600

>>>>> Tony and Robyn Lewis <address@hidden>
>>>>> wrote the following on Mon, 12 Dec 2005 17:04:36 +1100
> 
> Does it require a new type in rpath.py, and the ability to identify
> it?  Or is there more that I'm missing? (this from a 30 second look
> at the source, pardon my naievity)

Yes, I see two possibilities offhand.  You could add some Sun specific
code so it can fully back up door files.  This would require editing
the c_make_file_dict function in cmodule, and then making sure the
relevant functions in rpath.py could all handle door type objects.
Then you could edit selection.py and add the door file type to the
files matched by --[include|exclude]-special-files.

The other option would be to add a new "unknown type".  I think
currently it's impossible to create RPaths that are not of a
recognized type.  (For instance try running

python -c 'from rdiff_backup.C import *; print 
make_file_dict("path/to/door/file")'

and see what it says.)  So you could edit rpath.py to catch the
exception make_file_dict turns up, and instead of aborting, make a new
"unknown" type.  Then this unknown rpath could be included/excluded by
the selection rules.  The catch though would be figuring out what to
do if an unknown file type _weren't_ excluded.  For all the other file
types, rdiff-backup knows how to make a file of that type.  But it
wouldn't know how to make a file of the "unknown" type, so at that
point it should probably raise a ListError.  Still, the unknown type
would remain a special kind of file type that can only be read, not
written, so you'd have to be careful since the code may currently
assume that everything file type can be copied.


-- 
Ben Escoto

Attachment: pgpybvrAR7SvL.pgp
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]