Crates.io | indymilter-test |
lib.rs | indymilter-test |
version | 0.2.0 |
source | src |
created_at | 2022-11-04 07:55:39.851314 |
updated_at | 2024-03-13 07:16:41.818706 |
description | Milter testing library |
homepage | |
repository | https://codeberg.org/glts/indymilter-test |
max_upload_size | |
id | 704920 |
size | 84,497 |
The indymilter-test library provides facilities for testing milter programs. It can be used to simulate the MTA side of an MTA–milter conversation during integration testing.
This library was originally created for testing milters written using the
indymilter library. However, it contains a general milter client
implementation, and can be used for testing any milter at all. For example, it
could be used as a replacement for the miltertest
utility from the OpenDKIM
project.
For now, this library is released as a ‘minimum viable product’. It is being used successfully in a number of projects, but the API is still lacking in good ergonomics, and diagnostics leave something to be desired. Consider it a sharp tool: you must be familiar with how SMTP client and server talk to each other and how that maps to an MTA–milter conversation, and use the library API accordingly.
Include indymilter-test in the [dev-dependencies]
section of Cargo.toml
as
usual.
As mentioned above, using the library API requires some expertise in the milter protocol. The following are some helpful resources on indymilter-test usage:
/usr/share/doc/sendmail-doc/libmilter/html/index.html
).The minimum supported Rust version is 1.65.0.
Copyright © 2022–2024 David Bürgin
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.