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.

1.4.1(8mo ago)115.2k—3.8%6[2 issues](https://github.com/GermanCoding/Roundcube_TLS_Icon/issues)[1 PRs](https://github.com/GermanCoding/Roundcube_TLS_Icon/pulls)MITPHPPHP ^5.4 || ^7.0 || ^8.0CI passing

Since Mar 12Pushed 7mo 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 1mo ago

READMEChangelog (10)Dependencies (2)Versions (11)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.
- PHP `5.4` or newer.

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

[](#currently-supported-languages)

- Dutch
- English
- French
- German
- Russian

###  Health Score

47

—

FairBetter than 94% of packages

Maintenance59

Moderate activity, may be stable

Popularity33

Limited adoption so far

Community17

Small or concentrated contributor base

Maturity67

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 ~223 days

Recently: every ~291 days

Total

10

Last Release

242d ago

### Community

Maintainers

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

---

Top Contributors

[![williamdes](https://avatars.githubusercontent.com/u/7784660?v=4)](https://github.com/williamdes "williamdes (22 commits)")[![GermanCoding](https://avatars.githubusercontent.com/u/4279661?v=4)](https://github.com/GermanCoding "GermanCoding (22 commits)")[![filinovs](https://avatars.githubusercontent.com/u/47097730?v=4)](https://github.com/filinovs "filinovs (2 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)")[![idkidk000](https://avatars.githubusercontent.com/u/6125252?v=4)](https://github.com/idkidk000 "idkidk000 (1 commits)")[![whitequark](https://avatars.githubusercontent.com/u/54771?v=4)](https://github.com/whitequark "whitequark (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.4k964.9M7.0k](/packages/monolog-monolog)[symfony/monolog-bundle

Symfony MonologBundle

2.9k249.1M1.6k](/packages/symfony-monolog-bundle)[itsgoingd/clockwork

php dev tools in your browser

5.9k27.6M94](/packages/itsgoingd-clockwork)[sentry/sentry

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

1.9k227.1M273](/packages/sentry-sentry)[sentry/sentry-laravel

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

1.3k114.3M154](/packages/sentry-sentry-laravel)[sentry/sentry-symfony

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

73661.4M66](/packages/sentry-sentry-symfony)

PHPackages © 2026

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