This would require putting it into SQLite. This would allow a lot of different goodies, simplficiation of the upcoming handlers and more. The problem is that this database needs to be writeable by Apache. If there is an upload bug and someone can tamper the SQLite database then said attacker should not to be able to include files outside of the modules/includes directory. I will write another patch which adds a warnign to the status report if the modules dir is writeable. I have attached a patch which adds the check but it does nothing meaningful really because the SQLite part is not yet there.

killes and jmorahan have reviewed the regex and the only known issue is that we allow files inside say sites/all/modules2 -- however the above mentioned report needs to check sites/all for writeability anyways so this is not a problem really.

CommentFileSizeAuthor
registry_everywhere.patch4.24 KBchx

Comments

mfer’s picture

subscribe. I'll review later.

dries’s picture

The function is missing phpDoc.

chx’s picture

Putting the registry in a local SQLite file requires that in case that file is not found then Drupal can boot itself up to a state where it can copy those tables back to SQLite and then continue on. I think redirecting to request_uri after such a rebuild is the cleanest.

morbus iff’s picture

Subscribe.

Crell’s picture

Subscribe.

Status: Needs review » Needs work

The last submitted patch failed testing.

CorniI’s picture

wouldn't be an approach as i outlined in #430972: Add a file cache to the cache API be faster than invoking sqlite? One would need to sanity-check the php-file though, in case you're paranoid.

chx’s picture

Assigned: chx » Unassigned
Issue summary: View changes
Crell’s picture

Status: Needs work » Closed (won't fix)

Requiring SQLite for D7 is not on the table, and we're not making big changes to D7 anyway. The registry is also gone in D8. Closing this out.