TTRSS – Call to undefined function mcrypt_decrypt()
I upgraded my TTRSS installation to PHP 7.2, and suddenly I started seeing this pop up when it would attempt to update certain feeds:
When I’d click on those feeds to try and edit them, I’d get this:
Basically something akin to this:
Fatal error: Uncaught Error: Call to undefined function mcrypt_decrypt() in …/include/crypt.php:12 Stack trace: #0 …/classes/pref/feeds.php(633): decrypt_string(‘+rn7weUKbTMS3Ks…’) #1 …/backend.php(130): Pref_Feeds->editfeed() #2 {main} thrown in …/include/crypt.php on line 12
I did a little digging and discovered that mcrypt is defunct in PHP 7.2. Threads on the TTRSS forum spoke of hitting update.php with an argument via command line, but I don’t have command line access to my installation. I dared not ask on the forum as while I love TTRSS, those on the forum are notoriously self-important and assholey, happier to lambast you for being an idiot than actually help. Instead, I started doing some poking and discovered that all the feeds causing this problem had one thing in common – a populated auth_pass field in the ttrss_feeds table in the database. I ran a simple:
update ttrss_feeds set auth_pass=”
(After doing some testing, of course) and the problems disappeared. The communications warning went away, feeds started updating, and I could successfully open the edit dialogs on all my feeds.