PHPackages                             germancoding/tls\_icon - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Logging &amp; Monitoring](/categories/logging)
4. /
5. germancoding/tls\_icon

ActiveRoundcube-plugin[Logging &amp; Monitoring](/categories/logging)

germancoding/tls\_icon
======================

Displays a lock next to the message if it was received using TLS. Requires TLS logging enabled in the MTA.

2.0.0(1mo ago)106.9k↑10.3%6[5 issues](https://github.com/GermanCoding/Roundcube_TLS_Icon/issues)[1 PRs](https://github.com/GermanCoding/Roundcube_TLS_Icon/pulls)MITPHPPHP ^7.1 || ^8.0CI passing

Since Mar 12Pushed 1mo ago1 watchersCompare

[ Source](https://github.com/GermanCoding/Roundcube_TLS_Icon)[ Packagist](https://packagist.org/packages/germancoding/tls_icon)[ Docs](https://github.com/GermanCoding/Roundcube_TLS_Icon)[ RSS](/packages/germancoding-tls-icon/feed)WikiDiscussions master Synced 3d ago

READMEChangelog (10)Dependencies (4)Versions (13)Used By (0)

Roundcube TLS Icon
==================

[](#roundcube-tls-icon)

Displays a small icon after the subject line that displays the (presumed) encryption state of received mails. This plugin parses the "Received" header for the last hop and checks if TLS was used. This requires TLS logging in the receiving MTA.

In Postfix this can be enabled by setting [`smtpd_tls_received_header = yes`](https://www.postfix.org/postconf.5.html#smtpd_tls_received_header). Sendmail and Stalwart should work out of the box. Other MTAs have not been explicitly tested.

Note that while this talks about "encryption", this does not imply security. An encrypted mail may still be insecure, mostly because mailservers generally use "opportunistic TLS", where MITM attacks are possible. This also only validates the last hop of an email - some emails may run through multiple hops and we don't know anything about the security of these.

Inspired by [roundcube-easy-unsubscribe](https://github.com/SS88UK/roundcube-easy-unsubscribe)

[![Example screenshot](tls_icon_example.png)](tls_icon_example.png)

Installation
------------

[](#installation)

The [composer library](https://packagist.org/packages/germancoding/tls_icon) name is: `germancoding/tls_icon`.

The plugin name to add to your config file is: `tls_icon`.

Requirements
------------

[](#requirements)

- Roundcube `1.3.0` or newer (tested up to 1.7).
- PHP `7.1` or newer.

Currently supported languages
-----------------------------

[](#currently-supported-languages)

- Dutch
- English
- French
- German
- Russian

###  Health Score

53

—

FairBetter than 96% of packages

Maintenance79

Regular maintenance activity

Popularity33

Limited adoption so far

Community17

Small or concentrated contributor base

Maturity69

Established project with proven stability

 Bus Factor2

2 contributors hold 50%+ of commits

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~225 days

Recently: every ~307 days

Total

11

Last Release

55d ago

Major Versions

1.4.1 → 2.0.02026-05-10

PHP version history (2 changes)1.3.0PHP ^5.4 || ^7.0 || ^8.0

2.0.0PHP ^7.1 || ^8.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/4de445213b4dcdb0455956583f7767fcf8624f1741c7ac603f47575f6c6d7a7c?d=identicon)[GermanCoding](/maintainers/GermanCoding)

---

Top Contributors

[![GermanCoding](https://avatars.githubusercontent.com/u/4279661?v=4)](https://github.com/GermanCoding "GermanCoding (25 commits)")[![williamdes](https://avatars.githubusercontent.com/u/7784660?v=4)](https://github.com/williamdes "williamdes (22 commits)")[![christiaangoossens](https://avatars.githubusercontent.com/u/9487666?v=4)](https://github.com/christiaangoossens "christiaangoossens (2 commits)")[![Piccar](https://avatars.githubusercontent.com/u/39131992?v=4)](https://github.com/Piccar "Piccar (2 commits)")[![filinovs](https://avatars.githubusercontent.com/u/47097730?v=4)](https://github.com/filinovs "filinovs (2 commits)")[![soyaEnjoyer](https://avatars.githubusercontent.com/u/6125252?v=4)](https://github.com/soyaEnjoyer "soyaEnjoyer (1 commits)")[![whitequark](https://avatars.githubusercontent.com/u/54771?v=4)](https://github.com/whitequark "whitequark (1 commits)")[![idkidk000](https://avatars.githubusercontent.com/u/6125252?v=4)](https://github.com/idkidk000 "idkidk000 (1 commits)")

---

Tags

loggingtlssslicon

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/germancoding-tls-icon/health.svg)

```
[![Health](https://phpackages.com/badges/germancoding-tls-icon/health.svg)](https://phpackages.com/packages/germancoding-tls-icon)
```

###  Alternatives

[monolog/monolog

Sends your logs to files, sockets, inboxes, databases and various web services

21.4k1.0B8.2k](/packages/monolog-monolog)[symfony/monolog-bundle

Symfony MonologBundle

2.9k262.9M1.8k](/packages/symfony-monolog-bundle)[itsgoingd/clockwork

php dev tools in your browser

5.9k29.7M117](/packages/itsgoingd-clockwork)[sentry/sentry

PHP SDK for Sentry (http://sentry.io)

1.9k247.1M335](/packages/sentry-sentry)[sentry/sentry-laravel

Laravel SDK for Sentry (https://sentry.io)

1.3k127.1M203](/packages/sentry-sentry-laravel)[sentry/sentry-symfony

Symfony integration for Sentry (http://getsentry.com)

74666.1M96](/packages/sentry-sentry-symfony)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
