You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by mi...@apache.org on 2001/04/13 17:30:33 UTC
cvs commit: httpd-proxy/module-2.0 proxy_connect.c proxy_ftp.c proxy_http.c
minfrin 01/04/13 08:30:33
Modified: module-2.0 proxy_connect.c proxy_ftp.c proxy_http.c
Log:
Fixed all the APR error codes to make sure they end up in the logfiles
Revision Changes Path
1.37 +11 -13 httpd-proxy/module-2.0/proxy_connect.c
Index: proxy_connect.c
===================================================================
RCS file: /home/cvs/httpd-proxy/module-2.0/proxy_connect.c,v
retrieving revision 1.36
retrieving revision 1.37
diff -u -r1.36 -r1.37
--- proxy_connect.c 2001/04/13 09:34:47 1.36
+++ proxy_connect.c 2001/04/13 15:30:32 1.37
@@ -104,13 +104,11 @@
{
apr_pool_t *p = r->pool;
apr_socket_t *sock;
+ apr_status_t err, rv;
char buffer[HUGE_STRING_LEN];
- int i, err;
+ int i;
apr_size_t nbytes;
-#if 0
- apr_socket_t *client_sock = NULL;
-#endif
apr_pollfd_t *pollfd;
apr_int32_t pollcnt;
apr_int16_t pollevent;
@@ -193,8 +191,8 @@
}
/* create a new socket */
- if ((apr_socket_create(&sock, APR_INET, SOCK_STREAM, r->pool)) != APR_SUCCESS) {
- ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, r,
+ if ((rv = apr_socket_create(&sock, APR_INET, SOCK_STREAM, r->pool)) != APR_SUCCESS) {
+ ap_log_rerror(APLOG_MARK, APLOG_ERR, rv, r,
"proxy: error creating socket");
return HTTP_INTERNAL_SERVER_ERROR;
}
@@ -217,11 +215,11 @@
while (connect_addr) {
/* make the connection out of the socket */
- err = apr_connect(sock, connect_addr);
+ rv = apr_connect(sock, connect_addr);
/* if an error occurred, loop round and try again */
- if (err != APR_SUCCESS) {
- ap_log_error(APLOG_MARK, APLOG_ERR, err, r->server,
+ if (rv != APR_SUCCESS) {
+ ap_log_error(APLOG_MARK, APLOG_ERR, rv, r->server,
"proxy: CONNECT: attempt to connect to %pI (%s) failed", connect_addr, connectname);
connect_addr = connect_addr->next;
continue;
@@ -296,10 +294,10 @@
/* r->sent_bodyct = 1;*/
- if(apr_poll_setup(&pollfd, 2, r->pool) != APR_SUCCESS)
+ if((rv = apr_poll_setup(&pollfd, 2, r->pool)) != APR_SUCCESS)
{
apr_socket_close(sock);
- ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, r,
+ ap_log_rerror(APLOG_MARK, APLOG_ERR, rv, r,
"proxy: CONNECT: error apr_poll_setup()");
return HTTP_INTERNAL_SERVER_ERROR;
}
@@ -312,10 +310,10 @@
while (1) { /* Infinite loop until error (one side closes the connection) */
/* ap_log_error(APLOG_MARK, APLOG_DEBUG|APLOG_NOERRNO, 0, r->server, "proxy: CONNECT: going to sleep (poll)");*/
- if (apr_poll(pollfd, &pollcnt, -1) != APR_SUCCESS)
+ if ((rv = apr_poll(pollfd, &pollcnt, -1)) != APR_SUCCESS)
{
apr_socket_close(sock);
- ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, r, "proxy: CONNECT: error apr_poll()");
+ ap_log_rerror(APLOG_MARK, APLOG_ERR, rv, r, "proxy: CONNECT: error apr_poll()");
return HTTP_INTERNAL_SERVER_ERROR;
}
/* ap_log_error(APLOG_MARK, APLOG_DEBUG|APLOG_NOERRNO, 0, r->server,
1.44 +28 -29 httpd-proxy/module-2.0/proxy_ftp.c
Index: proxy_ftp.c
===================================================================
RCS file: /home/cvs/httpd-proxy/module-2.0/proxy_ftp.c,v
retrieving revision 1.43
retrieving revision 1.44
diff -u -r1.43 -r1.44
--- proxy_ftp.c 2001/04/13 02:30:23 1.43
+++ proxy_ftp.c 2001/04/13 15:30:32 1.44
@@ -633,24 +633,24 @@
}
- if ((apr_socket_create(&sock, APR_INET, SOCK_STREAM, r->pool)) != APR_SUCCESS) {
- ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, r,
+ if ((rv = apr_socket_create(&sock, APR_INET, SOCK_STREAM, r->pool)) != APR_SUCCESS) {
+ ap_log_rerror(APLOG_MARK, APLOG_ERR, rv, r,
"proxy: FTP: error creating socket");
return HTTP_INTERNAL_SERVER_ERROR;
}
#if !defined(TPF) && !defined(BEOS)
if (conf->recv_buffer_size > 0
- && apr_setsocketopt(sock, APR_SO_RCVBUF,
- conf->recv_buffer_size)) {
- ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, r,
+ && (rv = apr_setsocketopt(sock, APR_SO_RCVBUF,
+ conf->recv_buffer_size))) {
+ ap_log_rerror(APLOG_MARK, APLOG_ERR, rv, r,
"setsockopt(SO_RCVBUF): Failed to set ProxyReceiveBufferSize, using default");
}
#endif
- if (apr_setsocketopt(sock, APR_SO_REUSEADDR, one)) {
+ if (APR_SUCCESS != (rv = apr_setsocketopt(sock, APR_SO_REUSEADDR, one))) {
#ifndef _OSD_POSIX /* BS2000 has this option "always on" */
- ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, r,
+ ap_log_rerror(APLOG_MARK, APLOG_ERR, rv, r,
"proxy: FTP: error setting reuseaddr option: setsockopt(SO_REUSEADDR)");
return HTTP_INTERNAL_SERVER_ERROR;
#endif /*_OSD_POSIX*/
@@ -678,11 +678,11 @@
while (connect_addr) {
/* make the connection out of the socket */
- err = apr_connect(sock, connect_addr);
+ rv = apr_connect(sock, connect_addr);
/* if an error occurred, loop round and try again */
- if (err != APR_SUCCESS) {
- ap_log_error(APLOG_MARK, APLOG_ERR, err, r->server,
+ if (rv != APR_SUCCESS) {
+ ap_log_error(APLOG_MARK, APLOG_ERR, rv, r->server,
"proxy: FTP: attempt to connect to %pI (%s) failed", connect_addr, connectname);
connect_addr = connect_addr->next;
continue;
@@ -1131,8 +1131,8 @@
apr_port_t local_port;
unsigned int h0, h1, h2, h3, p0, p1;
- if ((apr_socket_create(&local_sock, APR_INET, SOCK_STREAM, r->pool)) != APR_SUCCESS) {
- ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, r,
+ if ((rv = apr_socket_create(&local_sock, APR_INET, SOCK_STREAM, r->pool)) != APR_SUCCESS) {
+ ap_log_rerror(APLOG_MARK, APLOG_ERR, rv, r,
"proxy: FTP: error creating local socket");
return HTTP_INTERNAL_SERVER_ERROR;
}
@@ -1140,29 +1140,28 @@
apr_sockaddr_port_get(&local_port, local_addr);
apr_sockaddr_ip_get(&local_ip, local_addr);
- if (apr_setsocketopt(local_sock, APR_SO_REUSEADDR, one) != APR_SUCCESS) {
+ if ((rv = apr_setsocketopt(local_sock, APR_SO_REUSEADDR, one)) != APR_SUCCESS) {
#ifndef _OSD_POSIX /* BS2000 has this option "always on" */
- ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, r,
+ ap_log_rerror(APLOG_MARK, APLOG_ERR, rv, r,
"proxy: FTP: error setting reuseaddr option");
return HTTP_INTERNAL_SERVER_ERROR;
#endif /*_OSD_POSIX*/
}
- if (apr_sockaddr_info_get(&local_addr, local_ip, APR_UNSPEC,
- local_port, 0, r->pool) != APR_SUCCESS) {
- ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, r,
- "proxy: FTP: error creating local socket address");
- return HTTP_INTERNAL_SERVER_ERROR;
- }
-
- if (apr_bind(local_sock, local_addr) != APR_SUCCESS) {
- ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, r,
- "proxy: FTP: error binding to ftp data socket %s:%d", local_ip, local_port);
+ apr_sockaddr_info_get(&local_addr, local_ip, APR_UNSPEC, local_port, 0, r->pool);
+
+ if ((rv = apr_bind(local_sock, local_addr)) != APR_SUCCESS) {
+ ap_log_rerror(APLOG_MARK, APLOG_ERR, rv, r,
+ "proxy: FTP: error binding to ftp data socket %pI", local_addr);
return HTTP_INTERNAL_SERVER_ERROR;
}
/* only need a short queue */
- apr_listen(local_sock, 2);
+ if ((rv = apr_listen(local_sock, 2)) != APR_SUCCESS) {
+ ap_log_rerror(APLOG_MARK, APLOG_ERR, rv, r,
+ "proxy: FTP: error listening to ftp data socket %pI", local_addr);
+ return HTTP_INTERNAL_SERVER_ERROR;
+ }
/* FIXME: Sent PORT here */
@@ -1473,8 +1472,8 @@
"proxy: FTP: Content-Length set to %s", size);
}
}
-ap_log_error(APLOG_MARK, APLOG_DEBUG|APLOG_NOERRNO, 0, r->server,
- "proxy: FTP: Content-Type set to %s", r->content_type);
+ ap_log_error(APLOG_MARK, APLOG_DEBUG|APLOG_NOERRNO, 0, r->server,
+ "proxy: FTP: Content-Type set to %s", r->content_type);
if (r->content_encoding != NULL && r->content_encoding[0] != '\0') {
ap_log_error(APLOG_MARK, APLOG_DEBUG|APLOG_NOERRNO, 0, r->server,
"proxy: FTP: Content-Encoding set to %s", r->content_encoding);
@@ -1486,14 +1485,14 @@
for(;;)
{
/* FIXME: this does not return, despite the incoming connection being accepted */
- switch(apr_accept(&remote_sock, local_sock, r->pool))
+ switch(rv = apr_accept(&remote_sock, local_sock, r->pool))
{
case APR_EINTR:
continue;
case APR_SUCCESS:
break;
default:
- ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, r,
+ ap_log_rerror(APLOG_MARK, APLOG_ERR, rv, r,
"proxy: FTP: failed to accept data connection");
return HTTP_BAD_GATEWAY;
}
1.58 +9 -9 httpd-proxy/module-2.0/proxy_http.c
Index: proxy_http.c
===================================================================
RCS file: /home/cvs/httpd-proxy/module-2.0/proxy_http.c,v
retrieving revision 1.57
retrieving revision 1.58
diff -u -r1.57 -r1.58
--- proxy_http.c 2001/04/12 01:57:48 1.57
+++ proxy_http.c 2001/04/13 15:30:32 1.58
@@ -334,16 +334,16 @@
backend->connection = NULL;
/* see memory note above */
- if ((apr_socket_create(&sock, APR_INET, SOCK_STREAM, c->pool)) != APR_SUCCESS) {
- ap_log_error(APLOG_MARK, APLOG_ERR, 0, r->server,
+ if ((rv = apr_socket_create(&sock, APR_INET, SOCK_STREAM, c->pool)) != APR_SUCCESS) {
+ ap_log_error(APLOG_MARK, APLOG_ERR, rv, r->server,
"proxy: error creating socket");
return HTTP_INTERNAL_SERVER_ERROR;
}
#if !defined(TPF) && !defined(BEOS)
- if (conf->recv_buffer_size > 0 && apr_setsocketopt(sock, APR_SO_RCVBUF,
- conf->recv_buffer_size)) {
- ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, r,
+ if (conf->recv_buffer_size > 0 && (rv = apr_setsocketopt(sock, APR_SO_RCVBUF,
+ conf->recv_buffer_size))) {
+ ap_log_rerror(APLOG_MARK, APLOG_ERR, rv, r,
"setsockopt(SO_RCVBUF): Failed to set ProxyReceiveBufferSize, using default");
}
#endif
@@ -368,11 +368,11 @@
while (connect_addr) {
/* make the connection out of the socket */
- err = apr_connect(sock, connect_addr);
+ rv = apr_connect(sock, connect_addr);
/* if an error occurred, loop round and try again */
- if (err != APR_SUCCESS) {
- ap_log_error(APLOG_MARK, APLOG_ERR, err, r->server,
+ if (rv != APR_SUCCESS) {
+ ap_log_error(APLOG_MARK, APLOG_ERR, rv, r->server,
"proxy: attempt to connect to %pI (%s) failed",
connect_addr, connectname);
connect_addr = connect_addr->next;
@@ -590,7 +590,7 @@
if (APR_SUCCESS != (rv = ap_proxy_string_read(origin, bb, buffer, sizeof(buffer), &eos))) {
apr_socket_close(sock);
backend->connection = NULL;
- ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, r,
+ ap_log_rerror(APLOG_MARK, APLOG_ERR, rv, r,
"proxy: error reading status line from remote server %s",
connectname);
return ap_proxyerror(r, HTTP_BAD_GATEWAY,