🌰🐿️ SquirrelMail GitHub Repository (PHP 7-OK!)
Find a file
2025-04-01 23:14:53 -07:00
class Merge branch 'trunk' 2025-04-01 23:14:53 -07:00
config Merge branch 'trunk' 2025-04-01 23:14:53 -07:00
contrib Happy New Year 2025-01-03 11:47:03 -08:00
css Implement printer friendly through CSS also for non-javascript. This 2008-05-09 16:38:01 +00:00
doc Merge branch 'trunk' 2025-04-01 23:14:53 -07:00
functions Merge branch 'trunk' 2025-04-01 23:14:53 -07:00
help Happy New Year 2025-01-03 11:47:03 -08:00
images Happy New Year 2025-01-03 11:47:03 -08:00
include Merge branch 'trunk' 2025-04-01 23:14:53 -07:00
locale Happy New Year 2025-01-03 11:47:03 -08:00
plugins Merge branch 'trunk' 2025-04-01 23:14:53 -07:00
po Merge branch 'trunk' 2025-04-01 23:14:53 -07:00
src Merge branch 'trunk' 2025-04-01 23:14:53 -07:00
templates Happy New Year 2025-01-03 11:47:03 -08:00
themes Happy New Year 2025-01-03 11:47:03 -08:00
configure Allow configure to be ran from any directory, thanks Ceri Davies. 2005-08-02 20:16:48 +00:00
favicon.ico Forgot the icon file 2018-10-13 09:33:39 -07:00
index.php Happy New Year 2025-01-03 11:47:03 -08:00
LICENSE GPL License File (for GitHub) 2019-04-30 18:27:00 -07:00
README Add pointer to doc/ directory 2009-03-26 21:50:12 +00:00
README.md Update README.md 2020-11-01 16:14:08 -08:00

SqirrelMail 1.5.2

A version of SquirrelMail for PHP 7.0 and above with additional changes for compatibility or security reasons.

This version contains the following changes:

  • Legacy constructors replaced with __construct.
  • While/List/Each are now ForEach.
  • Instances of mt_rand are now cryptographically secure, using random_int.
  • Message IDs are generated differently.
    • The ID is now a Version 5 UUID based off 64 cryptographically secure random bytes.
    • The domain now matches the value of the username variable, if it contains an "@". Otherwise, it falls back to the SERVER_NAME variable like normal.
  • Instances of SizeOf are now StrLen because PHP is not C.
  • Instances of create_function are now inline functions.
  • The X-Frame-Options: SAMEORIGIN header has been replaced with CSP's frame-ancestors header. This is set based on the provider_uri preference, and accepts any http or https domains or subdomains that match.
    • A new variable in the config will be added at a later point.
  • SCRAM support for SMTP and IMAP logins, supporting any hash algorithm PHP supports (with checks against HMAC list on 7.2+).
  • Optional parameters corrected for PHP 8.0.

Additionally, some minor fixes that would cause warnings or strange failures have also been resolved. Changes to the official source code are tracked in the trunk branch and merged with master as soon as possible. I'm looking into a way to automate this process.