aboutsummaryrefslogtreecommitdiffstats
path: root/include/asterisk
diff options
context:
space:
mode:
authorrussell <russell@f38db490-d61c-443f-a65b-d21fe96a405b>2007-06-29 20:35:09 +0000
committerrussell <russell@f38db490-d61c-443f-a65b-d21fe96a405b>2007-06-29 20:35:09 +0000
commit20e9f5d47c81a1ab3fb3ec4840e6efa35d87e8d9 (patch)
tree9e01621c41fcbbbd3c12d161b63a79ad22099161 /include/asterisk
parent388ee3fa59e4762d9e1ef20978f3d4c55480c128 (diff)
Merge changes from team/russell/http_filetxfer
Handle transferring large files from the built-in http server. Previously, the code attempted to malloc a block as large as the file itself. Now it uses the sendfile() system call so that the file isn't copied into userspace at all if it is available. Otherwise, it just uses a read/write of small chunks at a time. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@72701 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'include/asterisk')
-rw-r--r--include/asterisk/autoconfig.h.in3
-rw-r--r--include/asterisk/http.h2
2 files changed, 4 insertions, 1 deletions
diff --git a/include/asterisk/autoconfig.h.in b/include/asterisk/autoconfig.h.in
index 85618b9e3..3f175ddf0 100644
--- a/include/asterisk/autoconfig.h.in
+++ b/include/asterisk/autoconfig.h.in
@@ -394,6 +394,9 @@
/* Define to 1 if you have the `select' function. */
#undef HAVE_SELECT
+/* Define if your system has the sendfile syscall. */
+#undef HAVE_SENDFILE
+
/* Define to 1 if you have the `setenv' function. */
#undef HAVE_SETENV
diff --git a/include/asterisk/http.h b/include/asterisk/http.h
index 9d92ef5a7..b0215221e 100644
--- a/include/asterisk/http.h
+++ b/include/asterisk/http.h
@@ -147,7 +147,7 @@ int ssl_setup(struct tls_config *cfg);
content is specified)
\endverbatim
*/
-typedef struct ast_str *(*ast_http_callback)(struct sockaddr_in *requestor, const char *uri, struct ast_variable *params, int *status, char **title, int *contentlength);
+typedef struct ast_str *(*ast_http_callback)(struct server_instance *ser, const char *uri, struct ast_variable *params, int *status, char **title, int *contentlength);
/*! \brief Definition of a URI reachable in the embedded HTTP server */
struct ast_http_uri {