GNU libmicrohttpd 0.9.71
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
81ssize_t
82MHD_send_on_connection_ (struct MHD_Connection *connection,
83 const char *buffer,
84 size_t buffer_size,
85 enum MHD_SendSocketOptions options);
86
87ssize_t
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)
95ssize_t
96MHD_send_sendfile_ (struct MHD_Connection *connection);
97
98#endif
99
100#endif /* MHD_SEND_H */
Methods for managing connections.
Methods for managing connections.
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:241
MHD_SendSocketOptions
Definition: mhd_send.h:60
@ MHD_SSO_HDR_CORK
Definition: mhd_send.h:77
@ MHD_SSO_NO_CORK
Definition: mhd_send.h:64
@ MHD_SSO_MAY_CORK
Definition: mhd_send.h:68
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:389
internal shared structures
platform-specific includes for libmicrohttpd