Annotation of embedaddon/curl/tests/data/test1406, revision 1.1.1.1
1.1 misho 1: <testcase>
2: # Based on test900
3: # N.B. --libcurl output not sufficient to deal with uploaded files.
4: <info>
5: <keywords>
6: SMTP
7: --libcurl
8: </keywords>
9: </info>
10:
11: #
12: # Server-side
13: <reply>
14: <servercmd>
15: CAPA SIZE
16: </servercmd>
17: </reply>
18:
19: #
20: # Client-side
21: <client>
22: <server>
23: smtp
24: </server>
25: <name>
26: --libcurl for SMTP
27: </name>
28: <setenv>
29: SSL_CERT_FILE=
30: </setenv>
31: <file name="log/test1406.eml">
32: From: different
33: To: another
34:
35: body
36: </file>
37: <command>
38: smtp://%HOSTIP:%SMTPPORT/1406 --mail-rcpt recipient.one@example.com --mail-rcpt recipient.two@example.com --mail-from sender@example.com -T log/test1406.eml --libcurl log/test1406.c
39: </command>
40: </client>
41:
42: #
43: # Verify data after the test has been "shot"
44: <verify>
45: <protocol>
46: EHLO 1406
47: MAIL FROM:<sender@example.com> SIZE=38
48: RCPT TO:<recipient.one@example.com>
49: RCPT TO:<recipient.two@example.com>
50: DATA
51: QUIT
52: </protocol>
53: <upload>
54: From: different
55: To: another
56:
57: body
58: .
59: </upload>
60: <file name="log/test1406.c" mode="text">
61: /********* Sample code generated by the curl command line tool **********
62: * All curl_easy_setopt() options are documented at:
63: * https://curl.haxx.se/libcurl/c/curl_easy_setopt.html
64: ************************************************************************/
65: #include <curl/curl.h>
66:
67: int main(int argc, char *argv[])
68: {
69: CURLcode ret;
70: CURL *hnd;
71: struct curl_slist *slist1;
72:
73: slist1 = NULL;
74: slist1 = curl_slist_append(slist1, "recipient.one@example.com");
75: slist1 = curl_slist_append(slist1, "recipient.two@example.com");
76:
77: hnd = curl_easy_init();
78: curl_easy_setopt(hnd, CURLOPT_BUFFERSIZE, 102400L);
79: curl_easy_setopt(hnd, CURLOPT_URL, "smtp://%HOSTIP:%SMTPPORT/1406");
80: curl_easy_setopt(hnd, CURLOPT_UPLOAD, 1L);
81: curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L);
82: curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);
83: curl_easy_setopt(hnd, CURLOPT_MAIL_FROM, "sender@example.com");
84: curl_easy_setopt(hnd, CURLOPT_MAIL_RCPT, slist1);
85: curl_easy_setopt(hnd, CURLOPT_INFILESIZE_LARGE, (curl_off_t)38);
86:
87: /* Here is a list of options the curl code used that cannot get generated
88: as source easily. You may select to either not use them or implement
89: them yourself.
90:
91: CURLOPT_WRITEDATA set to a objectpointer
92: CURLOPT_WRITEFUNCTION set to a functionpointer
93: CURLOPT_READDATA set to a objectpointer
94: CURLOPT_READFUNCTION set to a functionpointer
95: CURLOPT_SEEKDATA set to a objectpointer
96: CURLOPT_SEEKFUNCTION set to a functionpointer
97: CURLOPT_ERRORBUFFER set to a objectpointer
98: CURLOPT_STDERR set to a objectpointer
99: CURLOPT_DEBUGFUNCTION set to a functionpointer
100: CURLOPT_DEBUGDATA set to a objectpointer
101: CURLOPT_HEADERFUNCTION set to a functionpointer
102: CURLOPT_HEADERDATA set to a objectpointer
103:
104: */
105:
106: ret = curl_easy_perform(hnd);
107:
108: curl_easy_cleanup(hnd);
109: hnd = NULL;
110: curl_slist_free_all(slist1);
111: slist1 = NULL;
112:
113: return (int)ret;
114: }
115: /**** End of sample code ****/
116: </file>
117: <stripfile>
118: # These options vary with configurations - just ignore them
119: # CURLOPT_INTERLEAVEDATA requires RTSP (HTTP) protocol
120: $_ = '' if /CURLOPT_USERAGENT/
121: $_ = '' if /CURLOPT_MAXREDIRS/
122: $_ = '' if /CURLOPT_SSL_VERIFYPEER/
123: $_ = '' if /CURLOPT_SSH_KNOWNHOSTS/
124: $_ = '' if /CURLOPT_HTTP_VERSION/
125: $_ = '' if /CURLOPT_HTTP09_ALLOWED/
126: $_ = '' if /CURLOPT_INTERLEAVEDATA/
127: </stripfile>
128: </verify>
129: </testcase>
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>