GNU libmicrohttpd  0.9.70
mhd_send.h
Go to the documentation of this file.
1 /*
2  This file is part of libmicrohttpd
3  Copyright (C) 2019 ng0
4 
5  This library is free software; you can redistribute it and/or
6  modify it under the terms of the GNU Lesser General Public
7  License as published by the Free Software Foundation; either
8  version 2.1 of the License, or (at your option) any later version.
9 
10  This library is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13  Lesser General Public License for more details.
14 
15  You should have received a copy of the GNU Lesser General Public
16  License along with this library; if not, write to the Free Software
17  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18 
19 */
20 
27 #ifndef MHD_SEND_H
28 #define MHD_SEND_H
29 
30 #include "platform.h"
31 #include "internal.h"
32 #if defined(HAVE_STDBOOL_H)
33 #include <stdbool.h>
34 #endif /* HAVE_STDBOOL_H */
35 #include <errno.h>
36 #include "mhd_sockets.h"
37 #include "connection.h"
38 #ifdef HTTPS_SUPPORT
39 #include "connection_https.h"
40 #endif
41 
42 #ifdef MHD_LINUX_SOLARIS_SENDFILE
43 #include <sys/sendfile.h>
44 #endif /* MHD_LINUX_SOLARIS_SENDFILE */
45 #if defined(HAVE_FREEBSD_SENDFILE) || defined(HAVE_DARWIN_SENDFILE)
46 #include <sys/types.h>
47 #include <sys/socket.h>
48 #include <sys/uio.h>
49 #endif /* HAVE_FREEBSD_SENDFILE || HAVE_DARWIN_SENDFILE */
50 
51 #ifdef HAVE_SYS_PARAM_H
52 /* For FreeBSD version identification */
53 #include <sys/param.h>
54 #endif /* HAVE_SYS_PARAM_H */
55 
60 {
78 };
79 
80 
81 ssize_t
82 MHD_send_on_connection_ (struct MHD_Connection *connection,
83  const char *buffer,
84  size_t buffer_size,
85  enum MHD_SendSocketOptions options);
86 
87 ssize_t
88 MHD_send_on_connection2_ (struct MHD_Connection *connection,
89  const char *header,
90  size_t header_size,
91  const char *buffer,
92  size_t buffer_size);
93 
94 #if defined(_MHD_HAVE_SENDFILE)
95 ssize_t
96 MHD_send_sendfile_ (struct MHD_Connection *connection);
97 
98 #endif
99 
100 #endif /* MHD_SEND_H */
Methods for managing connections.
platform-specific includes for libmicrohttpd
internal shared structures
Methods for managing connections.
ssize_t MHD_send_on_connection2_(struct MHD_Connection *connection, const char *header, size_t header_size, const char *buffer, size_t buffer_size)
Definition: mhd_send.c:378
MHD_SendSocketOptions
Definition: mhd_send.h:59
ssize_t MHD_send_on_connection_(struct MHD_Connection *connection, const char *buffer, size_t buffer_size, enum MHD_SendSocketOptions options)
Definition: mhd_send.c:233