You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by st...@locus.apache.org on 2000/02/18 19:05:19 UTC
cvs commit: apache-2.0/src/main buff.c
stoddard 00/02/18 10:05:19
Modified: src/include ap_iol.h
src/lib/apr aprlib.def
src/lib/apr/file_io/win32 readwrite.c
src/lib/apr/include apr_file_io.h
src/main buff.c
Log:
Pass ap_iovec_t on writev calls.
Revision Changes Path
1.10 +1 -1 apache-2.0/src/include/ap_iol.h
Index: ap_iol.h
===================================================================
RCS file: /home/cvs/apache-2.0/src/include/ap_iol.h,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- ap_iol.h 2000/01/26 05:56:33 1.9
+++ ap_iol.h 2000/02/18 18:05:15 1.10
@@ -106,7 +106,7 @@
ap_status_t (*close)(ap_iol *fd);
ap_status_t (*write)(ap_iol *fd, const char *buf, ap_size_t len,
ap_ssize_t *nbytes);
- ap_status_t (*writev)(ap_iol *fd, const struct iovec *vec, int nvec,
+ ap_status_t (*writev)(ap_iol *fd, const ap_iovec_t *vec, int nvec,
ap_ssize_t *nbytes);
ap_status_t (*read)(ap_iol *fd, char *buf, ap_size_t len,
ap_ssize_t *nbytes);
1.10 +1 -1 apache-2.0/src/lib/apr/aprlib.def
Index: aprlib.def
===================================================================
RCS file: /home/cvs/apache-2.0/src/lib/apr/aprlib.def,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- aprlib.def 2000/01/26 05:56:36 1.9
+++ aprlib.def 2000/02/18 18:05:16 1.10
@@ -20,7 +20,7 @@
; ap_get_filesize @12
; ap_get_fileatime @13
; ap_get_filectime @14
-; ap_get_filemtime @15
+ ap_make_iov @15
ap_dupfile @16
ap_getfileinfo @17
ap_open @18
1.12 +11 -0 apache-2.0/src/lib/apr/file_io/win32/readwrite.c
Index: readwrite.c
===================================================================
RCS file: /home/cvs/apache-2.0/src/lib/apr/file_io/win32/readwrite.c,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- readwrite.c 2000/02/18 02:53:11 1.11
+++ readwrite.c 2000/02/18 18:05:17 1.12
@@ -63,6 +63,17 @@
#define GetFilePointer(hfile) SetFilePointer(hfile,0,NULL, FILE_CURRENT)
+ap_status_t ap_make_iov(struct iovec_t **new, const struct iovec *iova, ap_context_t *cntxt)
+{
+ (*new) = ap_palloc(cntxt, sizeof(struct iovec_t));
+ if ((*new) == NULL) {
+ return APR_ENOMEM;
+ }
+ (*new)->cntxt = cntxt;
+ (*new)->theiov = iova;
+ return APR_SUCCESS;
+}
+
ap_status_t ap_read(struct file_t *thefile, void *buf, ap_ssize_t *nbytes)
{
DWORD bread;
1.30 +1 -1 apache-2.0/src/lib/apr/include/apr_file_io.h
Index: apr_file_io.h
===================================================================
RCS file: /home/cvs/apache-2.0/src/lib/apr/include/apr_file_io.h,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -r1.29 -r1.30
--- apr_file_io.h 2000/02/18 02:53:11 1.29
+++ apr_file_io.h 2000/02/18 18:05:18 1.30
@@ -146,7 +146,7 @@
API_EXPORT(int) ap_fprintf(ap_file_t *fptr, const char *format, ...)
__attribute__((format(printf,2,3)));
-ap_status_t ap_make_iov(ap_iovec_t **, struct iovec *, ap_context_t *);
+ap_status_t ap_make_iov(ap_iovec_t **, const struct iovec *, ap_context_t *);
ap_status_t ap_dupfile(ap_file_t **, ap_file_t *);
ap_status_t ap_getfileinfo(ap_finfo_t *finfo, ap_file_t *thefile);
ap_status_t ap_stat(ap_finfo_t *finfo, const char *fname, ap_context_t *cont);
1.30 +3 -2 apache-2.0/src/main/buff.c
Index: buff.c
===================================================================
RCS file: /home/cvs/apache-2.0/src/main/buff.c,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -r1.29 -r1.30
--- buff.c 2000/01/28 18:00:58 1.29
+++ buff.c 2000/02/18 18:05:19 1.30
@@ -555,8 +555,9 @@
int nvec, ap_ssize_t *bytes_written)
{
ap_status_t rv;
-
- rv = iol_writev(fb->iol, vec, nvec, bytes_written);
+ ap_iovec_t *iov;
+ ap_make_iov(&iov, vec, fb->pool);
+ rv = iol_writev(fb->iol, iov, nvec, bytes_written);
if (rv != APR_SUCCESS) {
fb->saved_errno = rv;
if (rv != APR_EAGAIN) {