Radish alpha
H
rad:z3QDZAW2FAfuLvihrhiyDC9fAD8G9
HardenedBSD Package Manager
Radicle
Git
libfetch: Add ifdef checks for constants that might not be available
Alex Richardson committed 5 years ago
commit eb651f4c5792f12fb818dcce7e9fcb2bde53ef2f
parent 873430a
2 files changed +8 -0
modified external/libfetch/ftp.c
@@ -803,10 +803,12 @@ ftp_transfer(conn_t *conn, const char *oper, const char *file,
			break;
		case AF_INET:
			((struct sockaddr_in *)&sa)->sin_port = 0;
+
#ifdef IP_PORTRANGE
			arg = low ? IP_PORTRANGE_DEFAULT : IP_PORTRANGE_HIGH;
			if (setsockopt(sd, IPPROTO_IP, IP_PORTRANGE,
				(char *)&arg, sizeof(arg)) == -1)
				goto sysouch;
+
#endif
			break;
		}
		if (verbose)
modified external/libfetch/http.c
@@ -325,9 +325,11 @@ http_closefn(void *v)
		setsockopt(io->conn->sd, IPPROTO_TCP, TCP_NODELAY, &val,
		    sizeof(val));
		fetch_cache_put(io->conn, fetch_close);
+
#ifdef TCP_NOPUSH
		val = 1;
		setsockopt(io->conn->sd, IPPROTO_TCP, TCP_NOPUSH, &val,
		    sizeof(val));
+
#endif
		r = 0;
	} else {
		r = fetch_close(io->conn);
@@ -1465,8 +1467,10 @@ http_connect(struct url *URL, struct url *purl, const char *flags, int *cached)
		goto ouch;
	}

+
#ifdef TCP_NOPUSH
	val = 1;
	setsockopt(conn->sd, IPPROTO_TCP, TCP_NOPUSH, &val, sizeof(val));
+
#endif

	clean_http_headerbuf(&headerbuf);
	return (conn);
@@ -1768,9 +1772,11 @@ http_request_body(struct url *URL, const char *op, struct url_stat *us,
		 * be compatible with such configurations, fiddle with socket
		 * options to force the pending data to be written.
		 */
+
#ifdef TCP_NOPUSH
		val = 0;
		setsockopt(conn->sd, IPPROTO_TCP, TCP_NOPUSH, &val,
			   sizeof(val));
+
#endif
		val = 1;
		setsockopt(conn->sd, IPPROTO_TCP, TCP_NODELAY, &val,
			   sizeof(val));