Viewing File: /home/ubuntu/code_review/phabricator/resources/sql/autopatches/20141107.phriction.popkeys.php
<?php
$table = new PhrictionDocument();
$conn_w = $table->establishConnection('w');
echo pht('Populating Phriction mailkeys.')."\n";
foreach (new LiskMigrationIterator($table) as $doc) {
$id = $doc->getID();
$key = $doc->getMailKey();
if ((strlen($key) == 20) && (strpos($key, "\0") === false)) {
// To be valid, keys must have length 20 and not contain any null bytes.
// See T6487.
echo pht('Document has valid mailkey.')."\n";
continue;
} else {
echo pht('Populating mailkey for document %d...', $id)."\n";
$mail_key = Filesystem::readRandomCharacters(20);
queryfx(
$conn_w,
'UPDATE %T SET mailKey = %s WHERE id = %d',
$table->getTableName(),
$mail_key,
$id);
}
}
echo pht('Done.')."\n";
Back to Directory
File Manager