Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
T
TLMSP curl
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package registry
Container Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
CYBER - Cyber Security
TS 103 523 MSP
TLMSP
TLMSP curl
Commits
0f4bf77b
Commit
0f4bf77b
authored
11 years ago
by
Steve Holme
Browse files
Options
Downloads
Patches
Plain Diff
examples: Added POP3 TLS example
parent
ecb0dc4c
No related branches found
Branches containing commit
No related tags found
Tags containing commit
No related merge requests found
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
docs/examples/Makefile.inc
+3
-3
3 additions, 3 deletions
docs/examples/Makefile.inc
docs/examples/pop3-ssl.c
+5
-0
5 additions, 0 deletions
docs/examples/pop3-ssl.c
docs/examples/pop3-tls.c
+84
-0
84 additions, 0 deletions
docs/examples/pop3-tls.c
with
92 additions
and
3 deletions
docs/examples/Makefile.inc
+
3
−
3
View file @
0f4bf77b
...
...
@@ -6,9 +6,9 @@ check_PROGRAMS = 10-at-a-time anyauthput cookie_interface debug fileupload \
sendrecv httpcustomheader certinfo chkspeed ftpgetinfo ftp-wildcard
\
smtp-multi smtp-send smtp-ssl smtp-tls smtp-vrfy smtp-expn rtsp
\
externalsocket resolve progressfunc pop3-retr pop3-list pop3-uidl pop3-dele
\
pop3-top pop3-stat pop3-noop pop3-ssl imap-list imap-fetch
imap-store
\
imap-append imap-examine imap-search imap-create imap-delete
imap-copy
\
imap-noop imap-ssl imap-tls url2file sftpget ftpsget postinmemory
pop3-top pop3-stat pop3-noop pop3-ssl
pop3-tls
imap-list imap-fetch
\
imap-store
imap-append imap-examine imap-search imap-create imap-delete
\
imap-copy
imap-noop imap-ssl imap-tls url2file sftpget ftpsget postinmemory
# These examples require external dependencies that may not be commonly
# available on POSIX systems, so don't bother attempting to compile them here.
...
...
This diff is collapsed.
Click to expand it.
docs/examples/pop3-ssl.c
+
5
−
0
View file @
0f4bf77b
...
...
@@ -64,6 +64,11 @@ int main(void)
curl_easy_setopt
(
curl
,
CURLOPT_SSL_VERIFYHOST
,
0L
);
#endif
/* Since the traffic will be encrypted, it is very useful to turn on debug
* information within libcurl to see what is happening during the
* transfer */
curl_easy_setopt
(
curl
,
CURLOPT_VERBOSE
,
1L
);
/* Perform the retr */
res
=
curl_easy_perform
(
curl
);
...
...
This diff is collapsed.
Click to expand it.
docs/examples/pop3-tls.c
0 → 100644
+
84
−
0
View file @
0f4bf77b
/***************************************************************************
* _ _ ____ _
* Project ___| | | | _ \| |
* / __| | | | |_) | |
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
*
* This software is licensed as described in the file COPYING, which
* you should have received as part of this distribution. The terms
* are also available at http://curl.haxx.se/docs/copyright.html.
*
* You may opt to use, copy, modify, merge, publish, distribute and/or sell
* copies of the Software, and permit persons to whom the Software is
* furnished to do so, under the terms of the COPYING file.
*
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
* KIND, either express or implied.
*
***************************************************************************/
#include
<stdio.h>
#include
<curl/curl.h>
/* This is a simple example showing how to retrieve mail using libcurl's POP3
* capabilities. It builds on the pop3-retr.c example adding transport
* security to protect the authentication details from being snooped.
*
* Note that this example requires libcurl 7.20.0 or above.
*/
int
main
(
void
)
{
CURL
*
curl
;
CURLcode
res
=
CURLE_OK
;
curl
=
curl_easy_init
();
if
(
curl
)
{
/* Set username and password */
curl_easy_setopt
(
curl
,
CURLOPT_USERNAME
,
"user"
);
curl_easy_setopt
(
curl
,
CURLOPT_PASSWORD
,
"secret"
);
/* This will retreive message 1 from the user's mailbox */
curl_easy_setopt
(
curl
,
CURLOPT_URL
,
"pop3://pop.example.com/1"
);
/* In this example, we'll start with a plain text connection, and upgrade
* to Transport Layer Security (TLS) using the STLS command. Be careful of
* using CURLUSESSL_TRY here, because if TLS upgrade fails, the transfer
* will continue anyway - see the security discussion in the libcurl
* tutorial for more details. */
curl_easy_setopt
(
curl
,
CURLOPT_USE_SSL
,
(
long
)
CURLUSESSL_ALL
);
/* If your server doesn't have a valid certificate, then you can disable
* part of the Transport Layer Security protection by setting the
* CURLOPT_SSL_VERIFYPEER and CURLOPT_SSL_VERIFYHOST options to 0 (false).
* curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L);
* curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L);
* That is, in general, a bad idea. It is still better than sending your
* authentication details in plain text though.
* Instead, you should get the issuer certificate (or the host certificate
* if the certificate is self-signed) and add it to the set of certificates
* that are known to libcurl using CURLOPT_CAINFO and/or CURLOPT_CAPATH. See
* docs/SSLCERTS for more information. */
curl_easy_setopt
(
curl
,
CURLOPT_CAINFO
,
"/path/to/certificate.pem"
);
/* Since the traffic will be encrypted, it is very useful to turn on debug
* information within libcurl to see what is happening during the
* transfer */
curl_easy_setopt
(
curl
,
CURLOPT_VERBOSE
,
1L
);
/* Perform the retr */
res
=
curl_easy_perform
(
curl
);
/* Check for errors */
if
(
res
!=
CURLE_OK
)
fprintf
(
stderr
,
"curl_easy_perform() failed: %s
\n
"
,
curl_easy_strerror
(
res
));
/* Always cleanup */
curl_easy_cleanup
(
curl
);
}
return
(
int
)
res
;
}
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment