diff options
author | Gilles Chehade <gilles@poolp.org> | 2020-04-30 02:01:35 +0200 |
---|---|---|
committer | Gilles Chehade <gilles@poolp.org> | 2020-04-30 02:01:35 +0200 |
commit | 6fb3965e81d9e4278ee5d96c2d68c014df1f3802 (patch) | |
tree | c3c895a4a39d4888e0ff978c97587120712a6b9d /smtpd/smtp.h | |
parent | plug ubuntu-gcc10 to CI (diff) | |
download | OpenSMTPD-6fb3965e81d9e4278ee5d96c2d68c014df1f3802.tar.xz OpenSMTPD-6fb3965e81d9e4278ee5d96c2d68c014df1f3802.zip |
move
Diffstat (limited to 'smtpd/smtp.h')
-rw-r--r-- | smtpd/smtp.h | 95 |
1 files changed, 0 insertions, 95 deletions
diff --git a/smtpd/smtp.h b/smtpd/smtp.h deleted file mode 100644 index dc91d878..00000000 --- a/smtpd/smtp.h +++ /dev/null @@ -1,95 +0,0 @@ -/* $OpenBSD: smtp.h,v 1.3 2019/09/02 20:05:21 eric Exp $ */ - -/* - * Copyright (c) 2018 Eric Faurot <eric@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. - */ - -#define TLS_NO 0 -#define TLS_YES 1 -#define TLS_FORCE 2 -#define TLS_SMTPS 3 - -#define CERT_OK 0 -#define CERT_UNKNOWN 1 -#define CERT_INVALID 2 - -#define FAIL_INTERNAL 1 /* malloc, etc. (check errno) */ -#define FAIL_CONN 2 /* disconnect, timeout... (check errno) */ -#define FAIL_PROTO 3 /* protocol violation */ -#define FAIL_IMPL 4 /* server lacks a required feature */ -#define FAIL_RESP 5 /* rejected command */ - -struct smtp_params { - - /* Client options */ - size_t linemax; /* max input line size */ - size_t ibufmax; /* max input buffer size */ - size_t obufmax; /* max output buffer size */ - - /* Connection settings */ - const struct sockaddr *dst; /* address to connect to */ - const struct sockaddr *src; /* address to bind to */ - int timeout; /* timeout in seconds */ - - /* TLS options */ - int tls_req; /* requested TLS mode */ - int tls_verify; /* need valid server certificate */ - - /* SMTP options */ - int lmtp; /* use LMTP protocol */ - const char *helo; /* string to use with HELO */ - const char *auth_user; /* for AUTH */ - const char *auth_pass; /* for AUTH */ -}; - -struct smtp_rcpt { - const char *to; - const char *dsn_notify; - const char *dsn_orcpt; - int done; -}; - -struct smtp_mail { - const char *from; - const char *dsn_ret; - const char *dsn_envid; - struct smtp_rcpt *rcpt; - int rcptcount; - FILE *fp; -}; - -struct smtp_status { - struct smtp_rcpt *rcpt; - const char *cmd; - const char *status; -}; - -struct smtp_client; - -/* smtp_client.c */ -struct smtp_client *smtp_connect(const struct smtp_params *, void *); -void smtp_cert_verified(struct smtp_client *, int); -void smtp_set_tls(struct smtp_client *, void *); -void smtp_quit(struct smtp_client *); -void smtp_sendmail(struct smtp_client *, struct smtp_mail *); - -/* callbacks */ -void smtp_verify_server_cert(void *, struct smtp_client *, void *); -void smtp_require_tls(void *, struct smtp_client *); -void smtp_ready(void *, struct smtp_client *); -void smtp_failed(void *, struct smtp_client *, int, const char *); -void smtp_closed(void *, struct smtp_client *); -void smtp_status(void *, struct smtp_client *, struct smtp_status *); -void smtp_done(void *, struct smtp_client *, struct smtp_mail *); |