Bump! I implemented limit accumulation on users now... so instead of someone ever getting a duplicate file, the download/address/time limits will just accumulate on the same file.
NOTE: You should manually remove any duplicate files within a user's privilege list. Having multiple files attached is at this point undefined. There is no reasonable way to automate this so please make sure that you back up your site before you apply this, and remove the duplicates.
New interface at the User account page for adjustig and adding/removing files to a specific user. New stuff at the features tab of a product, allowing you to override the global limits.
Moved the hook_order stuff out into its own function so interfacing with CA for recurring file renewals should be a breeze now. I still have to learn a bit about interfacing with CA though...
Oh, and I threw in some unit tests
It isn't total complete lockdown coverage, but it's good. You'll need this file: http://cha0s.selfip.org/dev/ubercart/ubercart_web_test_case.inc and you put it in sites/all/modules/ubercart/test (or wherever your Ubercart folder is at...)
Have fun! I'd appreciate suggestions about how to streamline the UI at the user account page...
