diff options
Diffstat (limited to 'update.php')
-rw-r--r-- | update.php | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/update.php b/update.php index 80ec50bd2..2ce83d5ce 100644 --- a/update.php +++ b/update.php @@ -40,4 +40,26 @@ function update_1005() { q("ALTER TABLE `user` ADD `spubkey` TEXT NOT NULL AFTER `prvkey` , ADD `sprvkey` TEXT NOT NULL AFTER `spubkey`"); -}
\ No newline at end of file +} + +function update_1006() { + + // create 's' keys for everybody that does not have one + + $r = q("SELECT * FROM `user` WHERE `spubkey` = '' "); + if(count($r)) { + foreach($r as $rr) { + $sres=openssl_pkey_new(array('encrypt_key' => false )); + $sprvkey = ''; + openssl_pkey_export($sres, $sprvkey); + $spkey = openssl_pkey_get_details($sres); + $spubkey = $spkey["key"]; + $r = q("UPDATE `user` SET `spubkey` = '%s', `sprvkey` = '%s' + WHERE `uid` = %d LIMIT 1", + dbesc($spubkey), + dbesc($sprvkey), + intval($rr['uid']) + ); + } + } +} |