Mail::...cessDB(3pm)

πŸ“¦
version 0.07 Β· 2 versions
, in debian bookworm, ubuntu noble, ubuntu resolute, ubuntu stonking

✨ NAME ✨

Okay bestie, welcome to Mail::Milter::Module::AccessDB (that's the perl doc Mail::...cessDB(3pm) if you're squinting at the header) β€” it's literally an emulator for Sendmail's access_db, but living inside a milter. πŸ’…


🌸 SYNOPSIS 🌸

use Mail::Milter::Module::AccessDB;

my $milter = new Mail::Milter::Module::AccessDB(\%hashref);

my $milter2 = &AccessDB(\%hashref); # convenience

πŸ’– DESCRIPTION πŸ’–

So Sendmail's access_db? Iconic. Powerful access restriction database tool, no cap. BUT β€” and this is the tea β€” it can only ever see the data that's explicitly available through the SMTP session. That's the limit. 😭

This milter module lets you do rewriting before the access rules get applied, like through Mail::Milter::Wrapper::DecodeSRS. Main character energy fr.

Not every single access_db feature got duplicated here, okay? Some stuff is just unimplemented, and some of it is Sendmail-internal-only, so it's giving "not for us." πŸ‘‘ Scroll down to DATABASE FORMAT to see the actual list of supported tags and result codes in this module.

NOTE: As of this version, this module might not be thread-safe. A future version of this module will share the hashref between threads and lock it properly. 🧡
ESPECIALLY NOTE: This module is highly experimental, does not support all accessdb data types yet, and is not guaranteed to work at all. Feel free to try it out and to send comments to the author, but it is not yet recommended to use this module in a production setup. πŸ’€ Bestie. Please. Don't put this in prod.

πŸŽ€ DATABASE FORMAT πŸŽ€

[XXX: TBD]

(yeah that's it, that's the whole section, she's still cooking πŸ“)


πŸ’… METHODS πŸ’…

new(HASHREF)

Create this milter using a provided hash reference. This may be a tied hash, such as to an already opened Sendmail-style database. Slay.

Currently there is no support for automatically reopening databases, hence this one-shot constructor. (Sendmail does not support automatic reopening either, for that matter.) So it's giving one and done, periodt.

ignore_tempfail(FLAG)
  • If FLAG is 0 (the default), a DNS lookup which fails the underlying DNS query will cause the milter to return a temporary failure result (SMFIS_TEMPFAIL). 😬
  • If FLAG is 1, a temporary DNS failure will be treated as if the lookup resulted in an empty record set (SMFIS_CONTINUE). 🫢

This method returns a reference to the object itself, allowing this method call to be chained. ✨

set_message(MESSAGE)

Sets the message used when rejecting messages. This string may contain the substring %0, which will be replaced by the matching lookup key (not including type tag).

This method returns a reference to the object itself, allowing this method call to be chained. πŸ¦‹


🌈 AUTHOR 🌈

Todd Vierling, <tv@duh.org> <tv@pobox.com> β€” ty king πŸ’œ


⭐ SEE ALSO ⭐

  • Mail::Milter::Object

πŸ’€ POD ERRORS πŸ’€

Hey! The above document had some coding errors, which are explained below:

Around line 90:

You can't have =items (as at line 102) unless the first thing after
the =over is an =item

perl v5.36.0 Β· 2023-01-22 Β· and that's the whole Mail::...cessDB(3pm) page bestie, we ate and left no crumbs πŸŽ€βœ¨ bye mwah πŸ’–

πŸ“¦ where this page comes from