summaryrefslogtreecommitdiff
path: root/news
diff options
context:
space:
mode:
authortron <tron@pkgsrc.org>2001-03-10 22:05:53 +0000
committertron <tron@pkgsrc.org>2001-03-10 22:05:53 +0000
commita56d0d5a5ffc3062c583659429c1ad667fda8ef1 (patch)
tree94afc1277f8cd7c03d5ce00580f76780cae96eeb /news
parentd43a634d60bf7779b7e730192193aae84c418045 (diff)
downloadpkgsrc-a56d0d5a5ffc3062c583659429c1ad667fda8ef1.tar.gz
Further improvement of IPv6 patches:
- Make IPv6 addresses (not names) work. You still need to specify the port number explicitly in this case. - Fix bug in connection loop which caused PR pkg/12329. The version number is bumped to "1.0nb5".
Diffstat (limited to 'news')
-rw-r--r--news/knews/Makefile4
-rw-r--r--news/knews/files/patch-sum60
-rw-r--r--news/knews/patches/patch-ag4
-rw-r--r--news/knews/patches/patch-ai59
4 files changed, 80 insertions, 47 deletions
diff --git a/news/knews/Makefile b/news/knews/Makefile
index ae35047b56f..edbcaef8039 100644
--- a/news/knews/Makefile
+++ b/news/knews/Makefile
@@ -1,7 +1,7 @@
-# $NetBSD: Makefile,v 1.31 2001/03/04 09:06:17 tron Exp $
+# $NetBSD: Makefile,v 1.32 2001/03/10 22:05:53 tron Exp $
DISTNAME= knews-1.0b.1
-PKGNAME= knews-1.0nb4
+PKGNAME= knews-1.0nb5
CATEGORIES= news x11
MASTER_SITES= http://www.matematik.su.se/~kjj/
diff --git a/news/knews/files/patch-sum b/news/knews/files/patch-sum
index b2f211e6a53..ba210afc160 100644
--- a/news/knews/files/patch-sum
+++ b/news/knews/files/patch-sum
@@ -1,31 +1,31 @@
-$NetBSD: patch-sum,v 1.7 2001/02/25 11:10:13 tron Exp $
+$NetBSD: patch-sum,v 1.8 2001/03/10 22:05:54 tron Exp $
-MD5 (patch-aa) = 95cd0655c3bc770d6450343e204ecf97
-MD5 (patch-ab) = a7803c0d155e79576a8f0d4e94933786
-MD5 (patch-ac) = b377e050b3aad321de2ef795395a1ac8
-MD5 (patch-ad) = 42f9dd9fdfdca698de9b849f4a8dea54
-MD5 (patch-ae) = 166cf61034320c7f90c68f7db4bfad1c
-MD5 (patch-af) = f6f7662ff65939090971bf1cbbe1765b
-MD5 (patch-ag) = 81db2b27e60ee1b2a4900e82287387ee
-MD5 (patch-ah) = bcf7cb17cd26e3fb086726355748da55
-MD5 (patch-ai) = 57e430776251a08ff279f8cdcf8f11e7
-MD5 (patch-aj) = 1728399cf60b4c9c1bda9d3790edf6e8
-MD5 (patch-ak) = 2d1dd4096bbbff6a4f75afda3a454537
-MD5 (patch-al) = d01ee21b4c0c6ca45c9b8ab8bd79bb43
-MD5 (patch-am) = 5b1a893cc22d5605fb6988a731d441f4
-MD5 (patch-an) = a46f948233a4220d7323d92366cc1827
-MD5 (patch-ao) = 7bce0ab56cbba3dcac936a1286a26c02
-MD5 (patch-ap) = 8eb9283da5a1cabacc8a444d55afe6b5
-MD5 (patch-aq) = 609bc8fbb5255911f101de2c9d929383
-MD5 (patch-ar) = 2cb0b541f00859e920bc91a4b5e150a6
-MD5 (patch-as) = 78b489aada6b25742fd685d0adfd153b
-MD5 (patch-at) = fe938fc99e11a8edc69479732dd5b139
-MD5 (patch-au) = bf672aeb3a681403aab002f02a9dff15
-MD5 (patch-av) = 1ad60c13cf058f5562f032764cf6e3a3
-MD5 (patch-aw) = b0728c15c68f1089a29eca121c9a5a7e
-MD5 (patch-ax) = f997987639dfd9b61db0e6251cdd1e69
-MD5 (patch-ay) = 04af83f040d847826c6950308487c8ca
-MD5 (patch-az) = 450fb148f632c7555deec0d0440c0b93
-MD5 (patch-ba) = 59029d5338552d2da44f8e0a6c2ef048
-MD5 (patch-bb) = afb2b68cdf08bd757a2543a055a764a6
-MD5 (patch-bc) = cad8d9172dce5eeb1675320254928948
+SHA1 (patch-aa) = b125c5b5078e809dd0483a17d83fd0f055604639
+SHA1 (patch-ab) = c91ef1a71a9bd63a64d87e59a0a441386dc3d3c0
+SHA1 (patch-ac) = 8e087270e5b0be25b161b2462b61fcdce6edea42
+SHA1 (patch-ad) = 99bf250c156e7a4e1ea27953e5e52974373e2c27
+SHA1 (patch-ae) = 5048f46e187abb84822702de2aab486f707ea185
+SHA1 (patch-af) = 44698e8579f2ce6779a2959803ec8c2abf45c83d
+SHA1 (patch-ag) = c40ecd5f97542e968b21b340e65552be06142b43
+SHA1 (patch-ah) = b971332d24fe400c30fb46e44be9e5317166898f
+SHA1 (patch-ai) = 23a087b084321a022cf7d7abfcd491b63bdc8b6c
+SHA1 (patch-aj) = e19750ae0c64cf65dd5c52cc8e1a4798a6c69c0a
+SHA1 (patch-ak) = 45aa66d4d30cb5d5bfa5ce407472ec663481faa6
+SHA1 (patch-al) = 2988f9b41d0f22b4395ee8213f94ca47032a3f23
+SHA1 (patch-am) = e8f182e5f089e04e7a8b2e8ee260c254791bbb40
+SHA1 (patch-an) = a21c78baefa94ef2e8c6aa7310890d12337fbc65
+SHA1 (patch-ao) = 377bd3cdf11fac50c622113fea840179e7823200
+SHA1 (patch-ap) = e215b15ddc87fcc57d57387beda95565077bcc6a
+SHA1 (patch-aq) = c0adbcb8c7baf8bd20275acebdf6cb9378bfff29
+SHA1 (patch-ar) = b6f2cb066d124c9fec7bafc71cb76276613527e4
+SHA1 (patch-as) = eb0a693428e57f8aec90ce3594fb7940dfff6c34
+SHA1 (patch-at) = 08a2f2bbcef800df6f8f312a002a0b65b764ba26
+SHA1 (patch-au) = 5280d94ba94a520c1458cb018d65b30fe6ebbf67
+SHA1 (patch-av) = 28231ab867fb61a881c519a9e1bc0f4e4aad4ded
+SHA1 (patch-aw) = 474de717f637c76066cc7e580b840e8ffb66020f
+SHA1 (patch-ax) = 210e3b9a3185c7cc503a47923cf54d3d62a5e0d7
+SHA1 (patch-ay) = a636d73a4d6bc930dbf66abec5e342e2f00547ed
+SHA1 (patch-az) = 1d91236b5f1dd59e54e9d8b02f31090abe70b67b
+SHA1 (patch-ba) = a46041cc02ec99379d1c7a69534ca4574a1d8b77
+SHA1 (patch-bb) = 05963335420741b8ce5658ad43cbfa83379fe289
+SHA1 (patch-bc) = 74b0c0ee543f3753886dc75ea7d32a61256eb5b5
diff --git a/news/knews/patches/patch-ag b/news/knews/patches/patch-ag
index aa808b74119..cc198d555b2 100644
--- a/news/knews/patches/patch-ag
+++ b/news/knews/patches/patch-ag
@@ -1,4 +1,4 @@
-$NetBSD: patch-ag,v 1.4 2001/02/24 22:40:40 tron Exp $
+$NetBSD: patch-ag,v 1.5 2001/03/10 22:05:54 tron Exp $
--- src/sysdeps.c.orig Tue Dec 29 11:46:52 1998
+++ src/sysdeps.c Sat Feb 24 23:31:43 2001
@@ -44,7 +44,7 @@ $NetBSD: patch-ag,v 1.4 2001/02/24 22:40:40 tron Exp $
+ struct addrinfo hints, *res;
+
+ port = 0;
-+ c = strchr(host, ':');
++ c = strrchr(host, ':');
+ if (c) {
+ *c = '\0';
+ if (c[1] >= '0' && c[1] <= '9')
diff --git a/news/knews/patches/patch-ai b/news/knews/patches/patch-ai
index af1e2e71b40..5a8a9768cd4 100644
--- a/news/knews/patches/patch-ai
+++ b/news/knews/patches/patch-ai
@@ -1,7 +1,7 @@
-$NetBSD: patch-ai,v 1.3 2001/02/25 11:10:13 tron Exp $
+$NetBSD: patch-ai,v 1.4 2001/03/10 22:05:54 tron Exp $
--- src/server.c.orig Fri Jan 9 18:16:22 1998
-+++ src/server.c Sun Feb 25 12:07:35 2001
++++ src/server.c Sat Mar 10 23:00:44 2001
@@ -2,19 +2,21 @@
* Copyright (C) 1995, 1996 Karl-Johan Johnsson.
*/
@@ -26,23 +26,23 @@ $NetBSD: patch-ai,v 1.3 2001/02/25 11:10:13 tron Exp $
struct SERVER {
int fd;
char *buffer;
-@@ -128,30 +130,39 @@
+@@ -128,37 +130,68 @@
* tell != 0 means tell about errors
* tell > 1 means say what you're doing
*/
-int server_open(SERVER *server, struct SERV_ADDR *addr, int tell)
+int server_open(SERVER *server, SERV_ADDR *addr, int tell)
{
- long tmp;
+- long tmp;
++ int tmp;
-- server_close(server);
+ server_close(server);
- server->fd = open_socket();
- if (server->fd < 0) {
- set_message("Error: Failed to create socket!", True);
- return -1;
- }
+ while (addr) {
-+ server_close(server);
+ server->fd = open_socket(addr);
+ if (server->fd < 0) {
+ set_message("Error: Failed to create socket!", True);
@@ -55,7 +55,8 @@ $NetBSD: patch-ai,v 1.3 2001/02/25 11:10:13 tron Exp $
+ set_message("Server contacted, waiting for response...", False);
- tmp = connect_socket(server->fd, addr);
-+ tmp = connect_socket(server->fd, addr);
++ if (connect_socket(server->fd, addr) == 0)
++ break;
- if (tmp < 0 && would_block(server->fd, errno)) {
- if (tell == 0)
@@ -65,22 +66,54 @@ $NetBSD: patch-ai,v 1.3 2001/02/25 11:10:13 tron Exp $
- do_wait(&server->fd, True, server->quit_func, server);
- if (server->fd < 0)
- return -1;
-+ if (tmp < 0 && would_block(server->fd, errno)) {
++ if (would_block(server->fd, errno)) {
+ if (tell == 0)
+ return 0; /* don't block */
+
-+ tmp = 0;
+ do_wait(&server->fd, True, server->quit_func, server);
-+ if (server->fd >= 0)
-+ break;
++ if (server->fd >= 0) {
++#ifdef __NetBSD__
++ socklen_t length;
++ int error;
++#else
++ int length, error;
++#endif
++ length = sizeof(error);
++ if (getsockopt(server->fd, SOL_SOCKET, SO_ERROR,
++ (char *)&error, &length) == 0) {
++ if (error == 0)
++ break;
++ else
++ errno = error;
++ }
++ }
+ }
+
++ server_close(server);
+ addr = next_addr(addr);
+ }
+
-+ if (!addr) {
-+ server_close(server);
++ if (server->fd < 0) {
++ if (tell) {
++ char message[128];
++ char *tmp = error_string(errno);
++
++ if (!tmp)
++ tmp = "Connection failed";
++ sprintf(message, "Error: %s!", tmp);
++ set_message(message, True);
++ }
+ return -1;
}
server->buffer[0] = '\0';
+- if (tmp >= 0)
+- do {
+- tmp = read(server->fd, server->buffer, server->len);
+- } while (tmp < 0 && errno == EINTR);
++ do {
++ tmp = read(server->fd, server->buffer, server->len);
++ } while (tmp < 0 && errno == EINTR);
+
+ if (tmp >= 0) {
+ server->buffer[tmp] = '\0';