diff options
author | martijn <martijn@openbsd.org> | 2020-09-23 19:11:50 +0000 |
---|---|---|
committer | Gilles Chehade <gilles@poolp.org> | 2020-11-20 11:17:57 +0100 |
commit | 1eab76d45728c1ed5c4bba125f543053da7ace73 (patch) | |
tree | 0b5885a9f916871d71f13f5c0e70db6a4a993a91 | |
parent | Add support for agentx to smtpd. (diff) | |
download | OpenSMTPD-1eab76d45728c1ed5c4bba125f543053da7ace73.tar.xz OpenSMTPD-1eab76d45728c1ed5c4bba125f543053da7ace73.zip |
Revert agentx support for now, we're too close to release.
requested by deraadt@
-rw-r--r-- | usr.sbin/smtpd/control.c | 10 | ||||
-rw-r--r-- | usr.sbin/smtpd/control_agentx.c | 235 | ||||
-rw-r--r-- | usr.sbin/smtpd/parse.y | 91 | ||||
-rw-r--r-- | usr.sbin/smtpd/smtpd.c | 32 | ||||
-rw-r--r-- | usr.sbin/smtpd/smtpd.conf.5 | 29 | ||||
-rw-r--r-- | usr.sbin/smtpd/smtpd.h | 25 | ||||
-rw-r--r-- | usr.sbin/smtpd/smtpd/Makefile | 9 |
7 files changed, 16 insertions, 415 deletions
diff --git a/usr.sbin/smtpd/control.c b/usr.sbin/smtpd/control.c index 7ec7b264..dbb2840d 100644 --- a/usr.sbin/smtpd/control.c +++ b/usr.sbin/smtpd/control.c @@ -1,4 +1,4 @@ -/* $OpenBSD: control.c,v 1.124 2020/09/23 18:01:26 martijn Exp $ */ +/* $OpenBSD: control.c,v 1.125 2020/09/23 19:11:50 martijn Exp $ */ /* * Copyright (c) 2012 Gilles Chehade <gilles@poolp.org> @@ -76,7 +76,7 @@ extern const char *backend_stat; static uint64_t connid = 0; static struct tree ctl_conns; static struct tree ctl_count; -struct stat_digest digest; +static struct stat_digest digest; #define CONTROL_FD_RESERVE 5 #define CONTROL_MAXCONN_PER_CLIENT 32 @@ -160,9 +160,6 @@ control_imsg(struct mproc *p, struct imsg *imsg) if (stat_backend) stat_backend->set(key, &val); return; - case IMSG_AGENTX_GETFD: - control_agentx_connect(imsg->fd); - return; } errx(1, "control_imsg: unexpected %s imsg", @@ -260,9 +257,6 @@ control(void) control_listen(); #if HAVE_PLEDGE - if (env->sc_agentx != NULL) - control_agentx(); - if (pledge("stdio unix recvfd sendfd", NULL) == -1) err(1, "pledge"); #endif diff --git a/usr.sbin/smtpd/control_agentx.c b/usr.sbin/smtpd/control_agentx.c deleted file mode 100644 index 4db3dd74..00000000 --- a/usr.sbin/smtpd/control_agentx.c +++ /dev/null @@ -1,235 +0,0 @@ -/* $OpenBSD: control_agentx.c,v 1.1 2020/09/23 18:01:26 martijn Exp $ */ - -/* - * Copyright (c) 2020 Martijn van Duren <martijn@openbsd.org> - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ - -#include <sys/queue.h> -#include <sys/socket.h> -#include <sys/tree.h> -#include <sys/uio.h> - -#include <errno.h> -#include <event.h> -#include <imsg.h> -#include <limits.h> -#include <stdio.h> -#include <subagentx.h> - -#include "log.h" -#include "smtpd.h" - -static void control_agentx_nofd(struct subagentx *, void *, int); -static void control_agentx_tryconnect(int, short, void *); -static void control_agentx_read(int, short, void *); -static void control_agentx_appltable(struct subagentx_varbind *); -static void control_agentx_mtatable(struct subagentx_varbind *); - -static struct subagentx *sa; -static struct subagentx_session *sas; -static struct subagentx_context *sac; -static struct subagentx_region *application, *mta; -static struct subagentx_index *applIndex; -static struct subagentx_object *applName, *applDirectoryName; -static struct subagentx_object *applVersion, *applUptime, *applOperStatus; -static struct subagentx_object *applDescription, *applURL; -static struct subagentx_object *mtaReceivedMessages, *mtaStoredMessages; -static struct subagentx_object *mtaTransmittedMessages, *mtaLoopsDetected; -static struct event connev, rev; - -extern struct stat_digest digest; - -#define APPLICATION SUBAGENTX_MIB2, 27 -#define APPLTABLE APPLICATION, 1 -#define APPLENTRY APPLTABLE, 1 -#define APPLINDEX APPLENTRY, 1 -#define APPLNAME APPLENTRY, 2 -#define APPLDIRECTORYNAME APPLENTRY, 3 -#define APPLVERSION APPLENTRY, 4 -#define APPLUPTIME APPLENTRY, 5 -#define APPLOPERSTATUS APPLENTRY, 6 -#define APPLLASTCHANGE APPLENTRY, 7 -#define APPLDESCRIPTION APPLENTRY, 16 -#define APPLURL APPLENTRY, 17 -#define MTA SUBAGENTX_MIB2, 28 -#define MTATABLE MTA, 1 -#define MTAENTRY MTATABLE, 1 -#define MTARECEIVEDMESSAGES MTAENTRY, 1 -#define MTASTOREDMESSAGES MTAENTRY, 2 -#define MTATRANSMITTEDMESSAGES MTAENTRY, 3 -#define MTALOOPSDETECTED MTAENTRY, 12 - -#define APPLOPERSTATUS_UP 1 -#define APPLOPERSTATUS_DOWN 2 -#define APPLOPERSTATUS_HALTED 3 -#define APPLOPERSTATUS_CONGESTED 4 -#define APPLOPERSTATUS_RESTARTING 5 -#define APPLOPERSTATUS_QUIESCING 6 - -void -control_agentx(void) -{ - subagentx_log_fatal = fatalx; - subagentx_log_warn = log_warnx; - subagentx_log_info = log_info; - subagentx_log_debug = log_debug; - - if ((sa = subagentx(control_agentx_nofd, NULL)) == NULL) - fatal("subagentx"); - if ((sas = subagentx_session(sa, NULL, 0, "OpenSMTPd", 0)) == NULL) - fatal("subagentx_session"); - if ((sac = subagentx_context(sas, env->sc_agentx->context)) == NULL) - fatal("subagentx_context"); - - if ((application = subagentx_region(sac, - SUBAGENTX_OID(APPLICATION), 0)) == NULL || - (mta = subagentx_region(sac, SUBAGENTX_OID(MTA), 0)) == NULL) - fatal("subagentx_region"); - switch (env->sc_agentx->applIndexType) { - case AGENTX_INDEX_TYPE_ANY: - if ((applIndex = subagentx_index_integer_any(application, - SUBAGENTX_OID(APPLINDEX))) == NULL) - fatal("subagentx_index_integer_any"); - break; - case AGENTX_INDEX_TYPE_NEW: - if ((applIndex = subagentx_index_integer_new(application, - SUBAGENTX_OID(APPLINDEX))) == NULL) - fatal("subagentx_index_integer_new"); - break; - case AGENTX_INDEX_TYPE_VALUE: - if ((applIndex = subagentx_index_integer_value(application, - SUBAGENTX_OID(APPLINDEX), - env->sc_agentx->applIndex)) == NULL) - fatal("subagentx_index_integer_value"); - break; - case AGENTX_INDEX_TYPE_UNDEFINED: - fatalx("%s: How did I get here?", __func__); - } - - if ((applName = subagentx_object(application, SUBAGENTX_OID(APPLNAME), - &applIndex, 1, 0, control_agentx_appltable)) == NULL || - (applDirectoryName = subagentx_object(application, - SUBAGENTX_OID(APPLDIRECTORYNAME), &applIndex, 1, - 0, control_agentx_appltable)) == NULL || - (applVersion = subagentx_object(application, - SUBAGENTX_OID(APPLVERSION), &applIndex, 1, - 0, control_agentx_appltable)) == NULL || - (applUptime = subagentx_object(application, - SUBAGENTX_OID(APPLUPTIME), &applIndex, 1, - 0, control_agentx_appltable)) == NULL || - (applOperStatus = subagentx_object(application, - SUBAGENTX_OID(APPLOPERSTATUS), &applIndex, 1, - 0, control_agentx_appltable)) == NULL || - (applDescription = subagentx_object(application, - SUBAGENTX_OID(APPLDESCRIPTION), &applIndex, 1, - 0, control_agentx_appltable)) == NULL || - (applURL = subagentx_object(application, SUBAGENTX_OID(APPLURL), - &applIndex, 1, 0, control_agentx_appltable)) == NULL || - (mtaReceivedMessages = subagentx_object(mta, - SUBAGENTX_OID(MTARECEIVEDMESSAGES), &applIndex, 1, - 0, control_agentx_mtatable)) == NULL || - (mtaStoredMessages = subagentx_object(mta, - SUBAGENTX_OID(MTASTOREDMESSAGES), &applIndex, 1, - 0, control_agentx_mtatable)) == NULL || - (mtaTransmittedMessages = subagentx_object(mta, - SUBAGENTX_OID(MTATRANSMITTEDMESSAGES), &applIndex, 1, - 0, control_agentx_mtatable)) == NULL || - (mtaLoopsDetected = subagentx_object(mta, - SUBAGENTX_OID(MTALOOPSDETECTED), &applIndex, 1, - 0, control_agentx_mtatable)) == NULL) - fatal("subagentx_object"); - -} - -static void -control_agentx_nofd(struct subagentx *unused, void *cookie, int close) -{ - event_del(&rev); - control_agentx_tryconnect(-1, 0, NULL); -} - -static void -control_agentx_tryconnect(int fd, short event, void *cookie) -{ - m_create(p_parent, IMSG_AGENTX_GETFD, 0, 0, -1); - m_close(p_parent); -} - -static void -control_agentx_read(int fd, short event, void *cookie) -{ - subagentx_read(sa); -} - -void -control_agentx_connect(int fd) -{ - struct timeval timeout = {3, 0}; - - if (fd == -1) { - evtimer_set(&connev, control_agentx_tryconnect, NULL); - evtimer_add(&connev, &timeout); - return; - } - - subagentx_connect(sa, fd); - - event_set(&rev, fd, EV_READ|EV_PERSIST, control_agentx_read, NULL); - event_add(&rev, NULL); -} - -static void -control_agentx_appltable(struct subagentx_varbind *vb) -{ - if (subagentx_varbind_get_object(vb) == applName) - subagentx_varbind_string(vb, "OpenSMTPd"); - else if (subagentx_varbind_get_object(vb) == applDirectoryName) - subagentx_varbind_string(vb, ""); - else if (subagentx_varbind_get_object(vb) == applVersion) - subagentx_varbind_string(vb, SMTPD_VERSION); - else if (subagentx_varbind_get_object(vb) == applUptime) - subagentx_varbind_timeticks(vb, - (uint32_t) ((time(NULL) - digest.startup) * 100)); - else if (subagentx_varbind_get_object(vb) == applOperStatus) - subagentx_varbind_integer(vb, - env->sc_flags & SMTPD_SMTP_PAUSED ? - APPLOPERSTATUS_DOWN : APPLOPERSTATUS_UP); - else if (subagentx_varbind_get_object(vb) == applDescription) - subagentx_varbind_string(vb, "OpenSMTPD is a FREE " - "implementation of the server-side SMTP protocol as " - "defined by RFC 5321, with some additional standard " - "extensions. It allows ordinary machines to exchange " - "emails with other systems speaking the SMTP protocol."); - else if (subagentx_varbind_get_object(vb) == applURL) - subagentx_varbind_string(vb, ""); - else - fatalx("%s: unexpected callback", __func__); -} - -static void -control_agentx_mtatable(struct subagentx_varbind *vb) -{ - if (subagentx_varbind_get_object(vb) == mtaReceivedMessages) - subagentx_varbind_counter32(vb, (uint32_t) digest.evp_enqueued); - else if (subagentx_varbind_get_object(vb) == mtaStoredMessages) - subagentx_varbind_counter32(vb, - (uint32_t) (digest.evp_enqueued - digest.evp_dequeued)); - else if (subagentx_varbind_get_object(vb) == mtaTransmittedMessages) - subagentx_varbind_counter32(vb, digest.evp_dequeued); - else if (subagentx_varbind_get_object(vb) == mtaLoopsDetected) - subagentx_varbind_counter32(vb, digest.dlv_loop); - else - fatalx("%s: unexpected callback", __func__); -} diff --git a/usr.sbin/smtpd/parse.y b/usr.sbin/smtpd/parse.y index 679a53f8..a82f8206 100644 --- a/usr.sbin/smtpd/parse.y +++ b/usr.sbin/smtpd/parse.y @@ -1,4 +1,4 @@ -/* $OpenBSD: parse.y,v 1.280 2020/09/23 18:01:26 martijn Exp $ */ +/* $OpenBSD: parse.y,v 1.281 2020/09/23 19:11:50 martijn Exp $ */ /* * Copyright (c) 2008 Gilles Chehade <gilles@poolp.org> @@ -31,7 +31,6 @@ #include <sys/socket.h> #include <sys/stat.h> #include <sys/ioctl.h> -#include <sys/un.h> #include <net/if.h> #include <netinet/in.h> @@ -52,7 +51,6 @@ #include <stdio.h> #include <stdlib.h> #include <string.h> -#include <subagentx.h> #include <syslog.h> #include <unistd.h> #ifdef HAVE_UTIL_H @@ -181,9 +179,9 @@ typedef struct { %} -%token ACTION ADMD AGENTX ALIAS ANY APPLINDEX ARROW AUTH AUTH_OPTIONAL +%token ACTION ADMD ALIAS ANY ARROW AUTH AUTH_OPTIONAL %token BACKUP BOUNCE BYPASS -%token CA CERT CHAIN CHROOT CIPHERS COMMIT COMPRESSION CONNECT CONTEXT +%token CA CERT CHAIN CHROOT CIPHERS COMMIT COMPRESSION CONNECT %token DATA DATA_LINE DHE DISCONNECT DOMAIN %token EHLO ENABLE ENCRYPTION ERROR EXPAND_ONLY %token FCRDNS FILTER FOR FORWARD_ONLY FROM @@ -196,7 +194,7 @@ typedef struct { %token MAIL_FROM MAILDIR MASK_SRC MASQUERADE MATCH MAX_MESSAGE_SIZE MAX_DEFERRED MBOX MDA MTA MX %token NO_DSN NO_VERIFY NOOP %token ON -%token PATH PHASE PKI PORT PROC PROC_EXEC PROXY_V2 +%token PHASE PKI PORT PROC PROC_EXEC PROXY_V2 %token QUEUE QUIT %token RCPT_TO RDNS RECIPIENT RECEIVEDAUTH REGEX RELAY REJECT REPORT REWRITE RSET %token SCHEDULER SENDER SENDERS SMTP SMTP_IN SMTP_OUT SMTPS SOCKET SRC SRS SUB_ADDR_DELIM @@ -232,7 +230,6 @@ grammar : /* empty */ | grammar dispatcher '\n' | grammar match '\n' | grammar filter '\n' - | grammar agentx '\n' | grammar error '\n' { file->errors++; } ; @@ -1967,82 +1964,6 @@ FILTER STRING CHAIN { } ; -agentxopt : -CONTEXT STRING { - if (conf->sc_agentx->context != NULL) { - yyerror("redefinition of agentx context"); - free($2); - YYERROR; - } - conf->sc_agentx->context = $2; -} -| PATH STRING { - if (strlen($2) >= sizeof(((struct sockaddr_un *)0)->sun_path)) { - yyerror("agentx path too large"); - free($2); - YYERROR; - } - if ($2[0] != '/') { - yyerror("agentx path must be absolute"); - free($2); - YYERROR; - } - if (conf->sc_agentx->path != NULL) { - yyerror("redefinition of agentx path"); - free($2); - YYERROR; - } - conf->sc_agentx->path = $2; -} -| APPLINDEX STRING { - if (conf->sc_agentx->applIndexType != AGENTX_INDEX_TYPE_UNDEFINED) { - yyerror("redefinition of agentx applIndex"); - YYERROR; - } - - if (strcasecmp($2, "any") == 0) - conf->sc_agentx->applIndexType = AGENTX_INDEX_TYPE_ANY; - else if (strcasecmp($2, "new") == 0) - conf->sc_agentx->applIndexType = AGENTX_INDEX_TYPE_NEW; - else { - yyerror("invalid applIndex"); - YYERROR; - } -} -| APPLINDEX NUMBER { - if (conf->sc_agentx->applIndexType != AGENTX_INDEX_TYPE_UNDEFINED) { - yyerror("redefinition of agentx applIndex"); - YYERROR; - } - if ($2 > UINT32_MAX) { - yyerror("agentx applIndex too large"); - YYERROR; - } - if ($2 < 1) { - yyerror("agentx applIndex too small"); - YYERROR; - } - - conf->sc_agentx->applIndexType = AGENTX_INDEX_TYPE_VALUE; - conf->sc_agentx->applIndex = (uint32_t) $2; -} -; - -agentxopts : /* empty */ - | agentxopts agentxopt - ; - -agentx: -AGENTX { - conf->sc_agentx = xcalloc(1, sizeof(*conf->sc_agentx)); -} agentxopts { - if (conf->sc_agentx->path == NULL) - conf->sc_agentx->path = SUBAGENTX_AGENTX_MASTER; - if (conf->sc_agentx->applIndexType == AGENTX_INDEX_TYPE_UNDEFINED) - conf->sc_agentx->applIndexType = AGENTX_INDEX_TYPE_ANY; -} -; - size : NUMBER { if ($1 < 0) { yyerror("invalid size: %" PRId64, $1); @@ -2703,10 +2624,8 @@ lookup(char *s) static const struct keywords keywords[] = { { "action", ACTION }, { "admd", ADMD }, - { "agentx", AGENTX }, { "alias", ALIAS }, { "any", ANY }, - { "applIndex", APPLINDEX }, { "auth", AUTH }, { "auth-optional", AUTH_OPTIONAL }, { "backup", BACKUP }, @@ -2720,7 +2639,6 @@ lookup(char *s) { "commit", COMMIT }, { "compression", COMPRESSION }, { "connect", CONNECT }, - { "context", CONTEXT }, { "data", DATA }, { "data-line", DATA_LINE }, { "dhe", DHE }, @@ -2764,7 +2682,6 @@ lookup(char *s) { "no-verify", NO_VERIFY }, { "noop", NOOP }, { "on", ON }, - { "path", PATH }, { "phase", PHASE }, { "pki", PKI }, { "port", PORT }, diff --git a/usr.sbin/smtpd/smtpd.c b/usr.sbin/smtpd/smtpd.c index 240e688b..3b8c6764 100644 --- a/usr.sbin/smtpd/smtpd.c +++ b/usr.sbin/smtpd/smtpd.c @@ -1,4 +1,4 @@ -/* $OpenBSD: smtpd.c,v 1.334 2020/09/23 18:01:27 martijn Exp $ */ +/* $OpenBSD: smtpd.c,v 1.335 2020/09/23 19:11:50 martijn Exp $ */ /* * Copyright (c) 2008 Gilles Chehade <gilles@poolp.org> @@ -28,7 +28,6 @@ #include <sys/wait.h> #include <sys/stat.h> #include <sys/uio.h> -#include <sys/un.h> #include <sys/mman.h> #ifdef BSD_AUTH @@ -87,7 +86,6 @@ #include "smtpd.h" #include "log.h" #include "ssl.h" -#include "subagentx.h" extern char *__progname; @@ -102,7 +100,6 @@ static void parent_send_config_lka(void); static void parent_send_config_pony(void); static void parent_send_config_ca(void); static void parent_sig_handler(int, short, void *); -static int parent_open_agentx(void); static void forkmda(struct mproc *, uint64_t, struct deliver *); static int parent_forward_open(char *, char *, uid_t, gid_t); static struct child *child_add(pid_t, int, const char *); @@ -305,12 +302,6 @@ parent_imsg(struct mproc *p, struct imsg *imsg) m_add_string(p_lka, procname); m_close(p_lka); return; - case IMSG_AGENTX_GETFD: - fd = parent_open_agentx(); - - m_create(p_control, IMSG_AGENTX_GETFD, 0, 0, fd); - m_close(p_control); - return; } errx(1, "parent_imsg: unexpected %s imsg from %s", @@ -517,25 +508,6 @@ parent_sig_handler(int sig, short event, void *p) } } -static int -parent_open_agentx(void) -{ - int fd; - struct sockaddr_un sun; - - sun.sun_len = sizeof(sun); - sun.sun_family = AF_UNIX; - strlcpy(sun.sun_path, env->sc_agentx->path, sizeof(sun.sun_path)); - - if ((fd = socket(AF_UNIX, SOCK_STREAM, 0)) == -1 || - connect(fd, (struct sockaddr *)&sun, sizeof(sun)) == -1) { - log_warn("agentx connect"); - close(fd); - return -1; - } - return fd; -} - int main(int argc, char *argv[]) { @@ -2213,8 +2185,6 @@ imsg_to_str(int type) CASE(IMSG_CA_RSA_PRIVENC); CASE(IMSG_CA_RSA_PRIVDEC); CASE(IMSG_CA_ECDSA_SIGN); - - CASE(IMSG_AGENTX_GETFD); default: (void)snprintf(buf, sizeof(buf), "IMSG_??? (%d)", type); diff --git a/usr.sbin/smtpd/smtpd.conf.5 b/usr.sbin/smtpd/smtpd.conf.5 index 02d6ece4..36207c39 100644 --- a/usr.sbin/smtpd/smtpd.conf.5 +++ b/usr.sbin/smtpd/smtpd.conf.5 @@ -1,4 +1,4 @@ -.\" $OpenBSD: smtpd.conf.5,v 1.254 2020/09/23 18:01:27 martijn Exp $ +.\" $OpenBSD: smtpd.conf.5,v 1.255 2020/09/23 19:11:50 martijn Exp $ .\" .\" Copyright (c) 2008 Janne Johansson <jj@openbsd.org> .\" Copyright (c) 2009 Jacek Masiulaniec <jacekm@dobremiasto.net> @@ -326,33 +326,6 @@ The Administrative Management Domain this mailserver belongs to. The authservid will be forwarded to filters using it to identify or mark authentication-results headers. If omitted it defaults to the server name. -.It Ic agentx Oo Cm applIndex Ar index Oc Oo Cm context Ar context Oc Op Cm path Ar path -Export NETWORK-SERVICES-MIB and MTA-MIB metrics via an agentx compatible -.Pq snmp -daemon by connecting to -.Ar path . -Metrics can be found under the application subtree -.Pq mib-2.27 -and mta subtree -.Pq mib-2.28 . -The index in the applTable and mtaTable can be controlled via -.Cm applIndex . -For the first available index it can be set to -.Cm any , -for a new unused entry it can be set to -.Cm new , -and if a fixed position is desired it can be set to a number between 1 and -4294967295. -If an index collision occurs because of a fixed position the metrics will not be -exported. -The default is -.Cm any . -If -.Ar path -is omitted it will default to -.Pa /var/agentx/master . -.Ar Context -is the SNMPv3 context and can usually be omitted. .It Ic bounce Cm warn-interval Ar delay Op , Ar delay ... Send warning messages to the envelope sender when temporary delivery failures cause a message to remain on the queue for longer than diff --git a/usr.sbin/smtpd/smtpd.h b/usr.sbin/smtpd/smtpd.h index fc9707b5..beb1d7b4 100644 --- a/usr.sbin/smtpd/smtpd.h +++ b/usr.sbin/smtpd/smtpd.h @@ -1,4 +1,4 @@ -/* $OpenBSD: smtpd.h,v 1.658 2020/09/23 18:01:27 martijn Exp $ */ +/* $OpenBSD: smtpd.h,v 1.659 2020/09/23 19:11:50 martijn Exp $ */ /* * Copyright (c) 2008 Gilles Chehade <gilles@poolp.org> @@ -189,7 +189,7 @@ union lookup { * Bump IMSG_VERSION whenever a change is made to enum imsg_type. * This will ensure that we can never use a wrong version of smtpctl with smtpd. */ -#define IMSG_VERSION 17 +#define IMSG_VERSION 16 enum imsg_type { IMSG_NONE, @@ -363,8 +363,6 @@ enum imsg_type { IMSG_CA_RSA_PRIVENC, IMSG_CA_RSA_PRIVDEC, IMSG_CA_ECDSA_SIGN, - - IMSG_AGENTX_GETFD, }; enum smtp_proc_type { @@ -654,8 +652,6 @@ struct smtpd { int sc_srs_ttl; char *sc_admd; - - struct smtp_agentx *sc_agentx; }; #define TRACE_DEBUG 0x0001 @@ -892,20 +888,6 @@ struct mta_envelope { char status[LINE_MAX]; }; -enum agentx_index_type { - AGENTX_INDEX_TYPE_UNDEFINED, - AGENTX_INDEX_TYPE_ANY, - AGENTX_INDEX_TYPE_NEW, - AGENTX_INDEX_TYPE_VALUE, -}; - -struct smtp_agentx { - const char *path; - const char *context; - enum agentx_index_type applIndexType; - uint32_t applIndex; -}; - struct mta_task { TAILQ_ENTRY(mta_task) entry; struct mta_relay *relay; @@ -1351,9 +1333,6 @@ void config_peer(enum smtp_proc_type); int control(void); int control_create_socket(void); -/* control_agentx.c */ -void control_agentx(void); -void control_agentx_connect(int); /* crypto.c */ int crypto_setup(const char *, size_t); diff --git a/usr.sbin/smtpd/smtpd/Makefile b/usr.sbin/smtpd/smtpd/Makefile index 53853da6..9a8b1e55 100644 --- a/usr.sbin/smtpd/smtpd/Makefile +++ b/usr.sbin/smtpd/smtpd/Makefile @@ -1,8 +1,12 @@ <<<<<<< HEAD +<<<<<<< HEAD # $OpenBSD: Makefile,v 1.91 2018/06/03 14:04:06 gilles Exp $ ======= # $OpenBSD: Makefile,v 1.108 2020/09/23 18:01:27 martijn Exp $ >>>>>>> 770825c6930... Add support for agentx to smtpd. +======= +# $OpenBSD: Makefile,v 1.109 2020/09/23 19:11:50 martijn Exp $ +>>>>>>> 99399201a83... Revert agentx support for now, we're too close to release. .PATH: ${.CURDIR}/.. @@ -15,7 +19,6 @@ SRCS+= cert.c SRCS+= compress_backend.c SRCS+= config.c SRCS+= control.c -SRCS+= control_agentx.c SRCS+= crypto.c SRCS+= dict.c SRCS+= dns.c @@ -89,8 +92,8 @@ SRCS+= stat_ramstat.c MAN= sendmail.8 smtpd.8 smtpd.conf.5 table.5 BINDIR= /usr/sbin -LDADD+= -levent -lutil -lssl -lcrypto -lm -lz -lagentx -DPADD+= ${LIBEVENT} ${LIBUTIL} ${LIBSSL} ${LIBCRYPTO} ${LIBM} ${LIBZ} ${LIBAGENTX} +LDADD+= -levent -lutil -lssl -lcrypto -lm -lz +DPADD+= ${LIBEVENT} ${LIBUTIL} ${LIBSSL} ${LIBCRYPTO} ${LIBM} ${LIBZ} CFLAGS+= -fstack-protector-all CFLAGS+= -I${.CURDIR}/.. |