commit - 53b354a9b87cfe0696ef8411dec25f45b7ca6f41
commit + 2029083fdc575762f4fc67364b8aa67034070023
blob - 265ff18659139017ffbe529bc5a264b0a249a2cd
blob + a73487daca0c4c739ebea7f7c7267d404b7fcdd1
--- Symbols.list
+++ Symbols.list
+osmtpd_register_conf
osmtpd_register_filter_connect
osmtpd_register_filter_helo
osmtpd_register_filter_ehlo
blob - 539bac7cc375424390dff3068a761144925e0099
blob + dd68a3c71f89cb879d1ce0683a65d07f7fd8f474
--- opensmtpd.c
+++ opensmtpd.c
static void (*ondeletecb_session)(struct osmtpd_ctx *, void *) = NULL;
static void *(*oncreatecb_message)(struct osmtpd_ctx *) = NULL;
static void (*ondeletecb_message)(struct osmtpd_ctx *, void *) = NULL;
+static void (*conf_cb)(const char *, const char *);
static struct osmtpd_callback osmtpd_callbacks[] = {
{
RB_HEAD(osmtpd_sessions, osmtpd_session) osmtpd_sessions = RB_INITIALIZER(NULL);
RB_PROTOTYPE_STATIC(osmtpd_sessions, osmtpd_session, entry, osmtpd_session_cmp);
+
+void
+osmtpd_register_conf(void (*cb)(const char *, const char *))
+{
+ conf_cb = cb;
+}
void
osmtpd_register_filter_connect(void (*cb)(struct osmtpd_ctx *, const char *,
type = OSMTPD_TYPE_REPORT;
else if (strcmp(line, "config") == 0) {
line = end;
- if (strcmp(line, "ready") == 0)
+ if (strcmp(line, "ready") == 0) {
+ conf_cb(NULL, NULL);
continue;
+ }
if ((end = strchr(line, '|')) == NULL)
osmtpd_errx(1, "Invalid line received: missing "
"key: %s", linedup);
end++[0] = '\0';
+ conf_cb(line, end);
if (strcmp(line, "smtp-session-timeout") == 0) {
session_timeout = strtonum(end, 0, INT_MAX,
&errstr);
blob - 26546428978f8cb26810f3fb5620e67180f3ba0f
blob + eef32374977851e19c0518f7be2c250d9ff3fa10
--- opensmtpd.h
+++ opensmtpd.h
void *local_message;
};
+void osmtpd_register_conf(void (*)(const char *, const char *));
void osmtpd_register_filter_connect(void (*)(struct osmtpd_ctx *, const char *,
struct sockaddr_storage *));
void osmtpd_register_filter_helo(void (*)(struct osmtpd_ctx *, const char *));
blob - 3d7c908e43d641cb0dcddbee5df35d0ac5910b46
blob + 97c9f92d6b8fd947359f10a616abc86fb7de7a87
--- shlib_version
+++ shlib_version
major=0
-minor=1
+minor=0