rev |
line source |
yuuji@0
|
1 /* ========================================================================
|
yuuji@0
|
2 * Copyright 1988-2007 University of Washington
|
yuuji@0
|
3 *
|
yuuji@0
|
4 * Licensed under the Apache License, Version 2.0 (the "License");
|
yuuji@0
|
5 * you may not use this file except in compliance with the License.
|
yuuji@0
|
6 * You may obtain a copy of the License at
|
yuuji@0
|
7 *
|
yuuji@0
|
8 * http://www.apache.org/licenses/LICENSE-2.0
|
yuuji@0
|
9 *
|
yuuji@0
|
10 *
|
yuuji@0
|
11 * ========================================================================
|
yuuji@0
|
12 */
|
yuuji@0
|
13
|
yuuji@0
|
14 /*
|
yuuji@0
|
15 * Program: Simple Mail Transfer Protocol (SMTP) routines
|
yuuji@0
|
16 *
|
yuuji@0
|
17 * Author: Mark Crispin
|
yuuji@0
|
18 * Networks and Distributed Computing
|
yuuji@0
|
19 * Computing & Communications
|
yuuji@0
|
20 * University of Washington
|
yuuji@0
|
21 * Administration Building, AG-44
|
yuuji@0
|
22 * Seattle, WA 98195
|
yuuji@0
|
23 * Internet: MRC@CAC.Washington.EDU
|
yuuji@0
|
24 *
|
yuuji@0
|
25 * Date: 27 July 1988
|
yuuji@0
|
26 * Last Edited: 15 August 2007
|
yuuji@0
|
27 *
|
yuuji@0
|
28 * This original version of this file is
|
yuuji@0
|
29 * Copyright 1988 Stanford University
|
yuuji@0
|
30 * and was developed in the Symbolic Systems Resources Group of the Knowledge
|
yuuji@0
|
31 * Systems Laboratory at Stanford University in 1987-88, and was funded by the
|
yuuji@0
|
32 * Biomedical Research Technology Program of the NationalInstitutes of Health
|
yuuji@0
|
33 * under grant number RR-00785.
|
yuuji@0
|
34 */
|
yuuji@0
|
35
|
yuuji@0
|
36 /* Constants (should be in smtp.c) */
|
yuuji@0
|
37
|
yuuji@0
|
38 #define SMTPTCPPORT (long) 25 /* assigned TCP contact port */
|
yuuji@0
|
39 #define SUBMITTCPPORT (long) 587/* assigned TCP contact port */
|
yuuji@0
|
40
|
yuuji@0
|
41
|
yuuji@0
|
42 /* SMTP open options
|
yuuji@0
|
43 * For compatibility with the past, SOP_DEBUG must always be 1.
|
yuuji@0
|
44 */
|
yuuji@0
|
45
|
yuuji@0
|
46 #define SOP_DEBUG (long) 1 /* debug protocol negotiations */
|
yuuji@0
|
47 #define SOP_DSN (long) 2 /* DSN requested */
|
yuuji@0
|
48 /* DSN notification, none set mean NEVER */
|
yuuji@0
|
49 #define SOP_DSN_NOTIFY_FAILURE (long) 4
|
yuuji@0
|
50 #define SOP_DSN_NOTIFY_DELAY (long) 8
|
yuuji@0
|
51 #define SOP_DSN_NOTIFY_SUCCESS (long) 16
|
yuuji@0
|
52 /* DSN return full msg vs. header */
|
yuuji@0
|
53
|
yuuji@0
|
54 #define SOP_DSN_RETURN_FULL (long) 32
|
yuuji@0
|
55 #define SOP_8BITMIME (long) 64 /* 8-bit MIME requested */
|
yuuji@0
|
56 #define SOP_SECURE (long) 256 /* don't do non-secure authentication */
|
yuuji@0
|
57 #define SOP_TRYSSL (long) 512 /* try SSL first */
|
yuuji@0
|
58 #define SOP_TRYALT SOP_TRYSSL /* old name */
|
yuuji@0
|
59 /* reserved for application use */
|
yuuji@0
|
60 #define SOP_RESERVED (unsigned long) 0xff000000
|
yuuji@0
|
61
|
yuuji@0
|
62
|
yuuji@0
|
63 /* Compatibility support names */
|
yuuji@0
|
64
|
yuuji@0
|
65 #define smtp_open(hostlist,options) \
|
yuuji@0
|
66 smtp_open_full (NIL,hostlist,"smtp",NIL,options)
|
yuuji@0
|
67
|
yuuji@0
|
68
|
yuuji@0
|
69 /* Function prototypes */
|
yuuji@0
|
70
|
yuuji@0
|
71 void *smtp_parameters (long function,void *value);
|
yuuji@0
|
72 SENDSTREAM *smtp_open_full (NETDRIVER *dv,char **hostlist,char *service,
|
yuuji@0
|
73 unsigned long port,long options);
|
yuuji@0
|
74 SENDSTREAM *smtp_close (SENDSTREAM *stream);
|
yuuji@0
|
75 long smtp_mail (SENDSTREAM *stream,char *type,ENVELOPE *msg,BODY *body);
|
yuuji@0
|
76 long smtp_verbose (SENDSTREAM *stream);
|