sendf.h
Go to the documentation of this file.
00001 #ifndef HEADER_CURL_SENDF_H
00002 #define HEADER_CURL_SENDF_H
00003 /***************************************************************************
00004  *                                  _   _ ____  _
00005  *  Project                     ___| | | |  _ \| |
00006  *                             / __| | | | |_) | |
00007  *                            | (__| |_| |  _ <| |___
00008  *                             \___|\___/|_| \_\_____|
00009  *
00010  * Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
00011  *
00012  * This software is licensed as described in the file COPYING, which
00013  * you should have received as part of this distribution. The terms
00014  * are also available at https://curl.haxx.se/docs/copyright.html.
00015  *
00016  * You may opt to use, copy, modify, merge, publish, distribute and/or sell
00017  * copies of the Software, and permit persons to whom the Software is
00018  * furnished to do so, under the terms of the COPYING file.
00019  *
00020  * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
00021  * KIND, either express or implied.
00022  *
00023  ***************************************************************************/
00024 
00025 #include "curl_setup.h"
00026 
00027 CURLcode Curl_sendf(curl_socket_t sockfd, struct connectdata *,
00028                     const char *fmt, ...);
00029 void Curl_infof(struct Curl_easy *, const char *fmt, ...);
00030 void Curl_failf(struct Curl_easy *, const char *fmt, ...);
00031 
00032 #if defined(CURL_DISABLE_VERBOSE_STRINGS)
00033 
00034 #if defined(HAVE_VARIADIC_MACROS_C99)
00035 #define infof(...)  Curl_nop_stmt
00036 #elif defined(HAVE_VARIADIC_MACROS_GCC)
00037 #define infof(x...)  Curl_nop_stmt
00038 #else
00039 #define infof (void)
00040 #endif
00041 
00042 #else /* CURL_DISABLE_VERBOSE_STRINGS */
00043 
00044 #define infof Curl_infof
00045 
00046 #endif /* CURL_DISABLE_VERBOSE_STRINGS */
00047 
00048 #define failf Curl_failf
00049 
00050 #define CLIENTWRITE_BODY   (1<<0)
00051 #define CLIENTWRITE_HEADER (1<<1)
00052 #define CLIENTWRITE_BOTH   (CLIENTWRITE_BODY|CLIENTWRITE_HEADER)
00053 
00054 CURLcode Curl_client_chop_write(struct connectdata *conn, int type, char *ptr,
00055                                 size_t len) WARN_UNUSED_RESULT;
00056 CURLcode Curl_client_write(struct connectdata *conn, int type, char *ptr,
00057                            size_t len) WARN_UNUSED_RESULT;
00058 
00059 bool Curl_recv_has_postponed_data(struct connectdata *conn, int sockindex);
00060 
00061 /* internal read-function, does plain socket only */
00062 CURLcode Curl_read_plain(curl_socket_t sockfd,
00063                          char *buf,
00064                          size_t bytesfromsocket,
00065                          ssize_t *n);
00066 
00067 ssize_t Curl_recv_plain(struct connectdata *conn, int num, char *buf,
00068                         size_t len, CURLcode *code);
00069 ssize_t Curl_send_plain(struct connectdata *conn, int num,
00070                         const void *mem, size_t len, CURLcode *code);
00071 
00072 /* internal read-function, does plain socket, SSL and krb4 */
00073 CURLcode Curl_read(struct connectdata *conn, curl_socket_t sockfd,
00074                    char *buf, size_t buffersize,
00075                    ssize_t *n);
00076 /* internal write-function, does plain socket, SSL, SCP, SFTP and krb4 */
00077 CURLcode Curl_write(struct connectdata *conn,
00078                     curl_socket_t sockfd,
00079                     const void *mem, size_t len,
00080                     ssize_t *written);
00081 
00082 /* internal write-function, does plain sockets ONLY */
00083 CURLcode Curl_write_plain(struct connectdata *conn,
00084                           curl_socket_t sockfd,
00085                           const void *mem, size_t len,
00086                           ssize_t *written);
00087 
00088 /* the function used to output verbose information */
00089 int Curl_debug(struct Curl_easy *handle, curl_infotype type,
00090                char *data, size_t size,
00091                struct connectdata *conn);
00092 
00093 
00094 #endif /* HEADER_CURL_SENDF_H */


rc_visard_driver
Author(s): Heiko Hirschmueller , Christian Emmerich , Felix Ruess
autogenerated on Thu Jun 6 2019 20:43:06