summaryrefslogtreecommitdiff
path: root/ham
diff options
context:
space:
mode:
authorwulf <wulf>2006-04-21 02:07:53 +0000
committerwulf <wulf>2006-04-21 02:07:53 +0000
commitafc2de9b6008f0b2f52bb2f765bc2ce4828aefec (patch)
tree2f90b14a663cfcbd94aef93973d8de3422184351 /ham
parentce5b3f0eceff86e9657e526b8624c2a5ce56cb3d (diff)
downloadpkgsrc-afc2de9b6008f0b2f52bb2f765bc2ce4828aefec.tar.gz
Implemented changes for this package to use the REQD_DIR and CONF_FILES
framework for the installation of the configuration files. Fixed compile warning message due to implicit casting
Diffstat (limited to 'ham')
-rw-r--r--ham/dpbox/DEINSTALL17
-rw-r--r--ham/dpbox/Makefile57
-rw-r--r--ham/dpbox/PLIST4
-rw-r--r--ham/dpbox/distinfo22
-rw-r--r--ham/dpbox/files/dpbox.ini2
-rw-r--r--ham/dpbox/patches/patch-aa88
-rw-r--r--ham/dpbox/patches/patch-ag57
-rw-r--r--ham/dpbox/patches/patch-ak65
-rw-r--r--ham/dpbox/patches/patch-an26
-rw-r--r--ham/dpbox/patches/patch-ao26
-rw-r--r--ham/dpbox/patches/patch-aq31
-rw-r--r--ham/dpbox/patches/patch-ar63
-rw-r--r--ham/dpbox/patches/patch-as13
-rw-r--r--ham/dpbox/patches/patch-at56
-rw-r--r--ham/dpbox/patches/patch-au31
-rw-r--r--ham/dpbox/patches/patch-av46
-rw-r--r--ham/dpbox/patches/patch-aw13
-rw-r--r--ham/dpbox/patches/patch-ax24
-rw-r--r--ham/dpbox/patches/patch-ay96
-rw-r--r--ham/dpbox/patches/patch-az12
20 files changed, 676 insertions, 73 deletions
diff --git a/ham/dpbox/DEINSTALL b/ham/dpbox/DEINSTALL
deleted file mode 100644
index 27ef83caf6f..00000000000
--- a/ham/dpbox/DEINSTALL
+++ /dev/null
@@ -1,17 +0,0 @@
-# $NetBSD: DEINSTALL,v 1.1 2001/10/31 21:39:47 zuntum Exp $
-#
-
-case "$2" in
- DEINSTALL) cat <<EOF
-
-=============================================================
-Note that the dpbox configuration and BBS server files in
-(@DPBOX_CONF_DIR@/*) and (@DPBOX_SPOOL_DIR@/*) are
-not removed in the deinstallation process.
-
-You should remove those by hand if you no longer need them.
-=============================================================
-
-EOF
- ;;
-esac
diff --git a/ham/dpbox/Makefile b/ham/dpbox/Makefile
index 689971eddc7..8661c6d9e8d 100644
--- a/ham/dpbox/Makefile
+++ b/ham/dpbox/Makefile
@@ -1,9 +1,9 @@
-# $NetBSD: Makefile,v 1.12 2006/03/14 01:14:29 jlam Exp $
+# $NetBSD: Makefile,v 1.13 2006/04/21 02:07:53 wulf Exp $
#
DISTNAME= dpbox-60000
PKGNAME= dpbox-6.00.00
-PKGREVISION= 1
+PKGREVISION= 2
CATEGORIES= ham
MASTER_SITES= http://home.snafu.de/wahlm/dl8hbs/
@@ -19,12 +19,55 @@ MAKE_ENV+= prefix=${PREFIX:Q}
.include "../../mk/bsd.prefs.mk"
-DPBOX_CONF_DIR= ${PREFIX}/share/dpbox/conf
+PKG_SYSCONFDIR.dpbox=${PREFIX}/share/dpbox/conf
+
+DPBOX_CONF_DIR= ${PKG_SYSCONFDIR}
DPBOX_SPOOL_DIR=/var/spool/dpbox
-FILES_SUBST+= DPBOX_CONF_DIR=${DPBOX_CONF_DIR} \
- DPBOX_SPOOL_DIR=${DPBOX_SPOOL_DIR}
-DEINSTALL_SRC= ${PKGDIR}/DEINSTALL
-INSTALL_SRC= # empty
+FILES_SUBST+= DPBOX_CONF_DIR=${DPBOX_CONF_DIR:Q} \
+ DPBOX_SPOOL_DIR=${DPBOX_SPOOL_DIR:Q}
+EGDIR= ${PREFIX}/share/examples/${PKGBASE}/conf
+
+REQD_DIRS= ${PKG_SYSCONFDIR} \
+ ${PKG_SYSCONFDIR}/sf \
+ ${PKG_SYSCONFDIR}/system \
+ ${DPBOX_SPOOL_DIR}/crawler \
+ ${DPBOX_SPOOL_DIR}/fileserv \
+ ${DPBOX_SPOOL_DIR}/fileserv/incoming \
+ ${DPBOX_SPOOL_DIR}/fileserv/temp7pl \
+ ${DPBOX_SPOOL_DIR}/fileserv/newbin \
+ ${DPBOX_SPOOL_DIR}/indexes \
+ ${DPBOX_SPOOL_DIR}/infofiles \
+ ${DPBOX_SPOOL_DIR}/import \
+ ${DPBOX_SPOOL_DIR}/newmail \
+ ${DPBOX_SPOOL_DIR}/privserv \
+ ${DPBOX_SPOOL_DIR}/privserv/temp7pl \
+ ${DPBOX_SPOOL_DIR}/proto \
+ ${DPBOX_SPOOL_DIR}/save \
+ ${DPBOX_SPOOL_DIR}/server \
+ ${DPBOX_SPOOL_DIR}/stat \
+ ${DPBOX_SPOOL_DIR}/stat/extusers
+
+CONF_FILES= ${EGDIR}/dpbox.ini ${PKG_SYSCONFDIR}/dpbox.ini \
+ ${EGDIR}/crawler/stopwords ${DPBOX_SPOOL_DIR}/crawler/stopwords \
+ ${EGDIR}/sf/db0xyz.sf ${PKG_SYSCONFDIR}/sf/db0xyz.sf \
+ ${EGDIR}/system/badwords.box ${PKG_SYSCONFDIR}/system/badwords.box \
+ ${EGDIR}/system/bcast.box ${PKG_SYSCONFDIR}/system/bcast.box \
+ ${EGDIR}/system/beacon.box ${PKG_SYSCONFDIR}/system/beacon.box \
+ ${EGDIR}/system/commands.box ${PKG_SYSCONFDIR}/system/commands.box \
+ ${EGDIR}/system/config.box ${PKG_SYSCONFDIR}/system/config.box \
+ ${EGDIR}/system/convlt.box ${PKG_SYSCONFDIR}/system/convlt.box \
+ ${EGDIR}/system/convtit.box ${PKG_SYSCONFDIR}/system/convtit.box \
+ ${EGDIR}/system/cookies.doc ${PKG_SYSCONFDIR}/system/cookies.doc \
+ ${EGDIR}/system/digimap.stn ${PKG_SYSCONFDIR}/system/digimap.stn \
+ ${EGDIR}/system/prefix.inf ${PKG_SYSCONFDIR}/system/prefix.inf \
+ ${EGDIR}/system/prefix.sub ${PKG_SYSCONFDIR}/system/prefix.sub \
+ ${EGDIR}/system/prvcalls.box ${PKG_SYSCONFDIR}/system/prvcalls.box \
+ ${EGDIR}/system/reject.box ${PKG_SYSCONFDIR}/system/reject.box \
+ ${EGDIR}/system/rubriken.box ${PKG_SYSCONFDIR}/system/rubriken.box \
+ ${EGDIR}/system/tcpip.box ${PKG_SYSCONFDIR}/system/tcpip.box \
+ ${EGDIR}/system/transfer.box ${PKG_SYSCONFDIR}/system/transfer.box \
+ ${EGDIR}/system/unproto.box ${PKG_SYSCONFDIR}/system/unproto.box \
+ ${EGDIR}/system/whotalks.lan ${PKG_SYSCONFDIR}/system/whotalks.box
post-build:
${SED} -e 's#@prefix@#${PREFIX}#g' \
diff --git a/ham/dpbox/PLIST b/ham/dpbox/PLIST
index 1b8ddb07529..19b96857daa 100644
--- a/ham/dpbox/PLIST
+++ b/ham/dpbox/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.1 2001/10/31 21:39:47 zuntum Exp $
+@comment $NetBSD: PLIST,v 1.2 2006/04/21 02:07:53 wulf Exp $
bin/dpgate
bin/dpcodeconv
bin/dpmybbs
@@ -64,6 +64,7 @@ share/dpbox/language/SP.LAN
share/dpbox/language/SPC.LAN
share/dpbox/language/SW.LAN
share/examples/dpbox/conf/dpbox.ini
+share/examples/dpbox/conf/crawler/stopwords
share/examples/dpbox/conf/sf/db0xyz.sf
share/examples/dpbox/conf/system/badwords.box
share/examples/dpbox/conf/system/bcast.box
@@ -116,6 +117,7 @@ libexec/dpbox/search
@dirrm share/dpbox/language
@dirrm share/examples/dpbox/conf/sf
@dirrm share/examples/dpbox/conf/system
+@dirrm share/examples/dpbox/conf/crawler
@dirrm share/examples/dpbox/conf
@dirrm share/examples/dpbox
@dirrm libexec/dpbox
diff --git a/ham/dpbox/distinfo b/ham/dpbox/distinfo
index e2aad735e38..392f548243b 100644
--- a/ham/dpbox/distinfo
+++ b/ham/dpbox/distinfo
@@ -1,20 +1,30 @@
-$NetBSD: distinfo,v 1.9 2006/01/24 22:27:07 joerg Exp $
+$NetBSD: distinfo,v 1.10 2006/04/21 02:07:53 wulf Exp $
SHA1 (dpbox-60000.tar.gz) = 73a55785f499324f57736c7fb3cc0bd1001facd3
RMD160 (dpbox-60000.tar.gz) = 05a14f7601b531fcdd0bc0252d171eed3bfafb7f
Size (dpbox-60000.tar.gz) = 957010 bytes
-SHA1 (patch-aa) = 8235aa600edffd952c1d932c0ee8011ba0896d08
+SHA1 (patch-aa) = d0ed5ba4118f872a04796d74897e62d42d72e284
SHA1 (patch-ab) = abeee7b86844c8937792ef09a938caf232574fb3
SHA1 (patch-ac) = f81ea8e6441bd3bf95d8d60660cf9b407895a070
SHA1 (patch-ad) = 589a69328b5959f81b86739a6e3c32f6d1d71ffe
SHA1 (patch-ae) = 82c22fd343ab353012c822d84d39c8018b285f83
SHA1 (patch-af) = a875f03b78a1afb444fa9301e24b5718f0f285cc
-SHA1 (patch-ag) = d193fc0245b35f1f897886352ad4c3a6ec5cd438
+SHA1 (patch-ag) = 7f0a7fa59aa48a0aaf940558b4de3498fb00dacd
SHA1 (patch-ah) = 6501eb257f10c4907d875a14d134bfb5fe6736f1
SHA1 (patch-ai) = 9d96b644d0b29a6bfc787202d2c42223570b1ee5
-SHA1 (patch-ak) = 387c0f79590f37329439ba5990e165577855a054
+SHA1 (patch-ak) = be90e11c83d474e8c5b25e2510334a0cb145286b
SHA1 (patch-al) = 79b6a63442336b8824763a95512b87f90550aaff
SHA1 (patch-am) = 510dbc978691543bba8da95be33cc3ba3f2c18fe
-SHA1 (patch-an) = 8b01dcb543e179437dcea32d377af8b06a287cbd
-SHA1 (patch-ao) = b83ff4a2158755c3231bba79496501f7268e4403
+SHA1 (patch-an) = 8f385b6bbaeb16dd5f3206262e9bba00b050d451
+SHA1 (patch-ao) = 6a0b4bcfe08346c44a57edbc049e3ebcff8b668f
SHA1 (patch-ap) = f4bdfc134803f280dfebef013d09d291f0a19e6e
+SHA1 (patch-aq) = 550c726ff658cc5b0b2d0ad2cff00545a5281b3d
+SHA1 (patch-ar) = 8fb3d40c39ff2a4ba83ad563c0389a9e01898e9c
+SHA1 (patch-as) = 0cd800c7bef8b8ab216aedd6eec18177cf16a8c7
+SHA1 (patch-at) = 53ae592225a089e33011cb2ee059e2dc28b637cd
+SHA1 (patch-au) = 170dc7507ed637ae39a30235485c64823817f04c
+SHA1 (patch-av) = d8fd927a763cff03f038150950fc4eeb0f171a88
+SHA1 (patch-aw) = 93607d109698386ad819f32841bab1e197632aab
+SHA1 (patch-ax) = 34c9d90538b94a85a7d36d4a27f3de633e92e807
+SHA1 (patch-ay) = f493bbbf11716a48e3b18363a2dcf4a8522094f3
+SHA1 (patch-az) = 4a2c67f63e62308fb7af36f69df030a5e5e79775
diff --git a/ham/dpbox/files/dpbox.ini b/ham/dpbox/files/dpbox.ini
index 22b49555d52..7b993afd070 100644
--- a/ham/dpbox/files/dpbox.ini
+++ b/ham/dpbox/files/dpbox.ini
@@ -76,3 +76,5 @@ boxprocdir /var/run/
# filename of dpbox-pid-file
# usually, don't change it, except if you plan to start more than one DPBOX...
proc_file dpbox.pid
+@DPBOX_CONF_DIR@
+@DPBOX_SPOOL_DIR@
diff --git a/ham/dpbox/patches/patch-aa b/ham/dpbox/patches/patch-aa
index 19da813167f..65cf3bd9310 100644
--- a/ham/dpbox/patches/patch-aa
+++ b/ham/dpbox/patches/patch-aa
@@ -1,7 +1,7 @@
-$NetBSD: patch-aa,v 1.3 2003/06/07 15:20:31 jmmv Exp $
+$NetBSD: patch-aa,v 1.4 2006/04/21 02:07:54 wulf Exp $
---- Makefile.netbsd.orig 2000-04-27 14:48:57.000000000 +0200
-+++ Makefile.netbsd
+--- Makefile.netbsd.orig 2000-04-27 22:18:57.000000000 +0930
++++ Makefile.netbsd 2006-04-21 10:41:09.000000000 +0930
@@ -1,9 +1,9 @@
###############################################################################
# #
@@ -15,7 +15,7 @@ $NetBSD: patch-aa,v 1.3 2003/06/07 15:20:31 jmmv Exp $
# Author : Berndt Josef Wulf, VK5ABN #
# #
###############################################################################
-@@ -19,11 +19,12 @@ INSTALL_DATA = ${INSTALL} -m 444
+@@ -19,11 +19,12 @@
INSTALL_CONF = ${INSTALL} -m 440
MKDIR = mkdir -p
LN = ln -sf
@@ -30,7 +30,18 @@ $NetBSD: patch-aa,v 1.3 2003/06/07 15:20:31 jmmv Exp $
docdir = $(prefix)/share/doc/dpbox
landir = $(prefix)/share/dpbox/language
spooldir = /var/spool/dpbox
-@@ -100,7 +101,8 @@ install: all
+@@ -63,10 +64,6 @@
+
+ OTHER_SRCS = dpputlinks.c dpcodeconv.c dpgate.c crawler.c dpmybbs.c
+
+-SUBDIRS = indexes infofiles newmail import save crawler \
+- fileserv fileserv/incoming fileserv/temp7pl fileserv/newbin \
+- privserv privserv/temp7pl proto server stat stat/extusers
+-
+ all: dpbox crawler cgi toolbox
+
+ tgz:
+@@ -100,7 +97,8 @@
$(INSTALL_PROGRAM) dpputlinks $(bindir)
$(INSTALL_PROGRAM) dpcodeconv $(bindir)
$(INSTALL_PROGRAM) dpmybbs $(bindir)
@@ -40,20 +51,45 @@ $NetBSD: patch-aa,v 1.3 2003/06/07 15:20:31 jmmv Exp $
$(MKDIR) $(docdir)
$(INSTALL_DATA) ../document/* $(docdir)
-@@ -148,6 +150,9 @@ install: all
- echo "* and manually adjust the configuration files where *"; \
- echo "* necessary. *"; \
- echo "* *"; \
-+ echo "* A number of example configuration files can be found *"; \
-+ echo "* in the ${exampledir} directory. *"; \
-+ echo "* *"; \
- echo "***********************************************************"; \
- else \
- $(MKDIR) $(confdir); \
-@@ -158,24 +163,45 @@ install: all
- $(INSTALL_CONF) ../sf/* $(confdir)/sf; \
- fi
+@@ -123,59 +121,51 @@
+ $(LN) HELP_SYS.DL $(landir)/HELP_SYS.HB
+ $(LN) HELP_SYS.DL $(landir)/HELP_SYS.OE1
+- for i in $(SUBDIRS); \
+- do \
+- $(MKDIR) $(spooldir)/$$i; \
+- done;
+-
+ $(MKDIR) $(prefix)/libexec/dpbox
+ $(INSTALL) -m 555 ../run/* $(prefix)/libexec/dpbox
+ $(INSTALL_PROGRAM) crawler $(prefix)/libexec/dpbox
+- $(INSTALL_DATA) ../crawler/stopwords $(spooldir)/crawler
+
+- @if [ -f ${confdir}/dpbox.ini ]; then \
+- echo "***********************************************************"; \
+- echo "* *"; \
+- echo "* W A R N I N G *"; \
+- echo "* ============= *"; \
+- echo "* *"; \
+- echo "* A previously installed version of DPBOX was dected *"; \
+- echo "* on this system. The installation of the configuration *"; \
+- echo "* files was suspended in order to preserve the *"; \
+- echo "* old configuration. *"; \
+- echo "* *"; \
+- echo "* Please refer to the documentation and CHANGE logfile *"; \
+- echo "* and manually adjust the configuration files where *"; \
+- echo "* necessary. *"; \
+- echo "* *"; \
+- echo "***********************************************************"; \
+- else \
+- $(MKDIR) $(confdir); \
+- $(INSTALL_CONF) ../dpbox.ini $(confdir)/dpbox.ini; \
+- $(MKDIR) $(confdir)/system; \
+- $(INSTALL_CONF) ../system/* $(confdir)/system ; \
+- $(MKDIR) $(confdir)/sf ; \
+- $(INSTALL_CONF) ../sf/* $(confdir)/sf; \
+- fi
+-
- @if [ -e ${cgidir} ]; then \
- echo "installing cgi-scripts"; \
- $(INSTALL) -m 755 ../cgi/cgi/* $(cgidir); \
@@ -72,12 +108,14 @@ $NetBSD: patch-aa,v 1.3 2003/06/07 15:20:31 jmmv Exp $
- @echo
- @echo Now edit the configuration files in $(confdir) and
- @echo $(confdir)/dpbox.ini!!!
-+ $(MKDIR) $(exampledir); \
-+ $(INSTALL_CONF) ../dpbox.ini $(exampledir)/dpbox.ini; \
-+ $(MKDIR) $(exampledir)/system; \
-+ $(INSTALL_CONF) ../system/* $(exampledir)/system ; \
-+ $(MKDIR) $(exampledir)/sf ; \
-+ $(INSTALL_CONF) ../sf/* $(exampledir)/sf; \
++ $(MKDIR) $(exampledir)
++ $(INSTALL_CONF) ../dpbox.ini $(exampledir)/dpbox.ini
++ $(MKDIR) $(exampledir)/crawler
++ $(INSTALL_DATA) ../crawler/stopwords $(exampledir)/crawler
++ $(MKDIR) $(exampledir)/system
++ $(INSTALL_CONF) ../system/* $(exampledir)/system
++ $(MKDIR) $(exampledir)/sf
++ $(INSTALL_CONF) ../sf/* $(exampledir)/sf
+
+ $(MKDIR) $(cgidir)
+ echo "installing cgi-scripts";
@@ -114,7 +152,7 @@ $NetBSD: patch-aa,v 1.3 2003/06/07 15:20:31 jmmv Exp $
clean:
$(RM) *.o *~ .*~ *.orig *.bak *.s *.core
-@@ -193,4 +219,3 @@ dep:
+@@ -193,4 +183,3 @@
ifeq (.depend,$(wildcard .depend))
include .depend
endif
diff --git a/ham/dpbox/patches/patch-ag b/ham/dpbox/patches/patch-ag
index fd04609efdf..97b5b81ce6f 100644
--- a/ham/dpbox/patches/patch-ag
+++ b/ham/dpbox/patches/patch-ag
@@ -1,8 +1,8 @@
-$NetBSD: patch-ag,v 1.1 2006/01/24 22:27:07 joerg Exp $
+$NetBSD: patch-ag,v 1.2 2006/04/21 02:07:54 wulf Exp $
---- tools.c.orig 2000-04-27 12:48:55.000000000 +0000
-+++ tools.c
-@@ -72,12 +72,14 @@ char conv_umlaut_to_local(char code)
+--- tools.c.orig 2000-04-27 22:18:55.000000000 +0930
++++ tools.c 2006-04-14 11:57:42.000000000 +0930
+@@ -72,12 +72,14 @@
void conv_string_from_local(char *s)
{
@@ -19,7 +19,7 @@ $NetBSD: patch-ag,v 1.1 2006/01/24 22:27:07 joerg Exp $
}
boolean conv_file_umlaut(boolean to_local, char *fname)
-@@ -168,7 +170,7 @@ short call_prg(char *prog, char *par, ch
+@@ -168,7 +170,7 @@
#ifdef __macos__
return (status);
#endif
@@ -28,3 +28,50 @@ $NetBSD: patch-ag,v 1.1 2006/01/24 22:27:07 joerg Exp $
return (statusconvert(status));
#endif
}
+@@ -1221,11 +1223,11 @@
+
+ static short iscalpha(char c)
+ {
+- if (isupper(c))
++ if (isupper((u_char) c))
+ return 1;
+- else if (isdigit(c))
++ else if (isdigit((u_char) c))
+ return 0;
+- else if (islower(c))
++ else if (islower((u_char) c))
+ return 1;
+ else
+ return -1;
+@@ -2202,11 +2204,11 @@
+ if (only_numbers) {
+ do {
+ c = dp_randomize(48, 57);
+- } while (!isdigit(c));
++ } while (!isdigit((u_char) c));
+ } else {
+ do {
+ c = dp_randomize(48, 122);
+- } while (!isalnum(c));
++ } while (!isalnum((u_char) c));
+ }
+ sprintf(MDprompt + strlen(MDprompt), "%c", c);
+ }
+@@ -2349,7 +2351,7 @@
+ upper(hs);
+ p = hs;
+ while (*p) {
+- if (!isupper(*p) && !isdigit(*p)) *p = '\0';
++ if (!isupper((u_char) *p) && !isdigit((u_char) *p)) *p = '\0';
+ p++;
+ }
+ s = hs;
+@@ -2840,7 +2842,7 @@
+
+ for (TmpPtr = ConvStr; *OriginStr; TmpPtr++, OriginStr++)
+ {
+- *TmpPtr = tolower(*OriginStr);
++ *TmpPtr = tolower((u_char) *OriginStr);
+ if (*OriginStr < '0') /* Satzzeichen neutralisieren */
+ *TmpPtr = ' ';
+ else
diff --git a/ham/dpbox/patches/patch-ak b/ham/dpbox/patches/patch-ak
index 77d4138bc85..841caddee70 100644
--- a/ham/dpbox/patches/patch-ak
+++ b/ham/dpbox/patches/patch-ak
@@ -1,7 +1,7 @@
-$NetBSD: patch-ak,v 1.1 2006/01/24 22:27:07 joerg Exp $
+$NetBSD: patch-ak,v 1.2 2006/04/21 02:07:54 wulf Exp $
---- pastrix.c.orig 2006-01-24 22:01:20.000000000 +0000
-+++ pastrix.c
+--- pastrix.c.orig 2000-04-27 22:18:55.000000000 +0930
++++ pastrix.c 2006-04-14 11:56:19.000000000 +0930
@@ -19,7 +19,7 @@
#include "boxlocal.h"
#include "tools.h"
@@ -11,7 +11,7 @@ $NetBSD: patch-ak,v 1.1 2006/01/24 22:27:07 joerg Exp $
#include <ctype.h>
#include <sys/time.h>
#include <sys/resource.h>
-@@ -80,7 +80,7 @@ long statclock(void)
+@@ -80,7 +80,7 @@
#endif
}
@@ -20,3 +20,60 @@ $NetBSD: patch-ak,v 1.1 2006/01/24 22:27:07 joerg Exp $
long get_cpuusage(void)
{
+@@ -557,7 +557,7 @@
+ return 129;
+
+ default:
+- return tolower(ch);
++ return tolower((u_char) ch);
+ }
+ }
+
+@@ -576,7 +576,7 @@
+ return 154;
+
+ default:
+- return toupper(ch);
++ return toupper((u_char) ch);
+ }
+ }
+
+@@ -615,7 +615,7 @@
+ if (*s == '\0') return false;
+ }
+ while (*s != '\0') {
+- if (!isdigit(*s++)) {
++ if (!isdigit((u_char) *s++)) {
+ return false;
+ }
+ }
+@@ -633,7 +633,7 @@
+ if (s[1] == '\0')
+ return false;
+ while (*s != '\0') {
+- if (!((*s >= 'a' && *s <= 'f') || (*s >= 'A' && *s <= 'F') || isdigit(*s)))
++ if (!((*s >= 'a' && *s <= 'f') || (*s >= 'A' && *s <= 'F') || isdigit((u_char) *s)))
+ return false;
+ s++;
+ }
+@@ -669,9 +669,9 @@
+
+ digit = false;
+ while (*s != '\0') {
+- if (!(*s == 'e' || *s == 'E' || *s == '+' || *s == '-' || *s == '.' || isdigit(*s)))
++ if (!(*s == 'e' || *s == 'E' || *s == '+' || *s == '-' || *s == '.' || isdigit((u_char) *s)))
+ return false;
+- else if (isdigit(*s))
++ else if (isdigit((u_char) *s))
+ digit = true;
+ }
+
+@@ -702,7 +702,7 @@
+ return c - 87;
+
+ default:
+- if (isdigit(c))
++ if (isdigit((u_char) c))
+ return c - '0';
+ else
+ return 0;
diff --git a/ham/dpbox/patches/patch-an b/ham/dpbox/patches/patch-an
index 2b0a750b8f4..53f437c8c94 100644
--- a/ham/dpbox/patches/patch-an
+++ b/ham/dpbox/patches/patch-an
@@ -1,8 +1,8 @@
-$NetBSD: patch-an,v 1.1 2006/01/24 22:27:07 joerg Exp $
+$NetBSD: patch-an,v 1.2 2006/04/21 02:07:54 wulf Exp $
---- box_sys.c.orig 2006-01-24 22:02:52.000000000 +0000
-+++ box_sys.c
-@@ -1679,6 +1679,14 @@ void show_version(short unr, boolean ext
+--- box_sys.c.orig 2000-04-27 22:18:53.000000000 +0930
++++ box_sys.c 2006-04-14 11:53:42.000000000 +0930
+@@ -1679,6 +1679,14 @@
wlnuser(unr, "NetBSD porting : (c) 1999 Berndt Josef Wulf, VK5ABN");
#define __dp_version_ok
#endif
@@ -17,3 +17,21 @@ $NetBSD: patch-an,v 1.1 2006/01/24 22:27:07 joerg Exp $
#ifndef __dp_version_ok
sprintf(hs, "dpbox v%s%s %s", dp_vnr, dp_vnr_sub, dp_date);
wuser(unr, hs);
+@@ -3123,7 +3131,7 @@
+ for (x = 1; x <= 53; x++) {
+ do {
+ c = dp_randomize(48, 122);
+- } while (!isalnum(c));
++ } while (!isalnum((u_char) c));
+ sprintf(hs + strlen(hs), "%c", c);
+
+ }
+@@ -3174,7 +3182,7 @@
+ for (x = 1; x <= 1620; x++) {
+ do {
+ c = dp_randomize(48, 122);
+- } while (!isalnum(c));
++ } while (!isalnum((u_char) c));
+ sfwrite(k, 1, &c);
+ }
+ sfclose(&k);
diff --git a/ham/dpbox/patches/patch-ao b/ham/dpbox/patches/patch-ao
index b2858c82f10..2e427965c59 100644
--- a/ham/dpbox/patches/patch-ao
+++ b/ham/dpbox/patches/patch-ao
@@ -1,8 +1,26 @@
-$NetBSD: patch-ao,v 1.1 2006/01/24 22:27:07 joerg Exp $
+$NetBSD: patch-ao,v 1.2 2006/04/21 02:07:54 wulf Exp $
---- box.c.orig 2006-01-24 22:12:35.000000000 +0000
-+++ box.c
-@@ -4297,6 +4297,8 @@ void begruessung(short unr)
+--- box.c.orig 2000-04-27 22:18:52.000000000 +0930
++++ box.c 2006-04-14 11:45:42.000000000 +0930
+@@ -2226,7 +2226,7 @@
+ }
+ FORLIM1 = strlen(hs);
+ for (x = 0; x < FORLIM1; x++) {
+- if (!(isupper(hs[x]) || isdigit(hs[x]))) hs[x] = ' ';
++ if (!(isupper((u_char)hs[x]) || isdigit((u_char)hs[x]))) hs[x] = ' ';
+ }
+ wlnuser(unr, hs);
+ rset = false;
+@@ -3609,7 +3609,7 @@
+ x = k + 1;
+ l = strlen(com);
+ while (x <= l && com[x - 1] == ' ') x++;
+- while (x <= l && isdigit(com[x - 1])) {
++ while (x <= l && isdigit((u_char) com[x - 1])) {
+ sprintf(hs + strlen(hs), "%c", com[x - 1]);
+ x++;
+ }
+@@ -4297,6 +4297,8 @@
wlnuser(unr, hs);
#ifdef __NetBSD__
sprintf(w, "dpbox (NetBSD) v%s%s", dp_vnr, dp_vnr_sub);
diff --git a/ham/dpbox/patches/patch-aq b/ham/dpbox/patches/patch-aq
new file mode 100644
index 00000000000..6985a550a8d
--- /dev/null
+++ b/ham/dpbox/patches/patch-aq
@@ -0,0 +1,31 @@
+$NetBSD: patch-aq,v 1.1 2006/04/21 02:07:54 wulf Exp $
+
+--- box_mem.c.orig 2000-04-27 22:18:53.000000000 +0930
++++ box_mem.c 2006-04-14 12:46:08.000000000 +0930
+@@ -334,7 +334,7 @@
+ boxendbusy();
+ }
+
+-#undef bsize;
++#undef bsize
+
+ static long find_bidhash(char *bid)
+ {
+@@ -846,7 +846,7 @@
+ while (ct < k) {
+ ct++;
+ c = zeile[ct - 1];
+- if (!isdigit(c)) {
++ if (!isdigit((u_char) c)) {
+ if (c == '#') {
+ if (ct > 6)
+ return size;
+@@ -894,7 +894,7 @@
+ if (rp1[1] == 'B' && rp1[2] == 'I' && rp1[3] == 'N' && rp1[4] == '#') {
+ i = 4;
+ while (++i <= remainder && i < 16) {
+- if (!isdigit(rp1[i])) {
++ if (!isdigit((u_char) rp1[i])) {
+ if (rp1[i] == '#') {
+ if (i > 5) { /* valid header */
+ binstart = size; /* this is a fallback in case of truncated input buffer */
diff --git a/ham/dpbox/patches/patch-ar b/ham/dpbox/patches/patch-ar
new file mode 100644
index 00000000000..01531e7674f
--- /dev/null
+++ b/ham/dpbox/patches/patch-ar
@@ -0,0 +1,63 @@
+$NetBSD: patch-ar,v 1.1 2006/04/21 02:07:54 wulf Exp $
+
+--- box_scan.c.orig 2006-04-14 12:01:07.000000000 +0930
++++ box_scan.c 2006-04-14 12:03:25.000000000 +0930
+@@ -275,17 +275,17 @@
+ short l;
+
+ if (rdate[6] != '/') {
+- if (rdate[7] == '/' && rdate[0] == '1' && isdigit(rdate[1]) && isdigit(rdate[2])) { /* fbb 5.15 y2k-bug */
++ if (rdate[7] == '/' && rdate[0] == '1' && isdigit((u_char) rdate[1]) && isdigit((u_char) rdate[2])) { /* fbb 5.15 y2k-bug */
+ rdate++;
+ } else {
+ return false;
+ }
+ }
+ l = strlen(rdate);
+- if (l != 11 && (!(l == 12 && isalpha(rdate[11])))) return false;
+- if ( !isdigit(rdate[0]) || !isdigit(rdate[1]) || !isdigit(rdate[2]) || !isdigit(rdate[3])
+- || !isdigit(rdate[4]) || !isdigit(rdate[5]) || !isdigit(rdate[7]) || !isdigit(rdate[8])
+- || !isdigit(rdate[9]) || !isdigit(rdate[10])) return false;
++ if (l != 11 && (!(l == 12 && isalpha((u_char) rdate[11])))) return false;
++ if ( !isdigit((u_char) rdate[0]) || !isdigit((u_char) rdate[1]) || !isdigit((u_char) rdate[2]) || !isdigit((u_char) rdate[3])
++ || !isdigit((u_char) rdate[4]) || !isdigit((u_char) rdate[5]) || !isdigit((u_char) rdate[7]) || !isdigit((u_char) rdate[8])
++ || !isdigit((u_char) rdate[9]) || !isdigit((u_char) rdate[10])) return false;
+ l = double_val(rdate, 0); /* year */
+ if (l < 70 && l > 38) return false;
+ l = double_val(rdate, 2); /* month */
+@@ -313,7 +313,7 @@
+ l = strlen(timestr);
+ if (l < 10 || !check_rdate(&timestr[2])) return 0;
+ /* fbb515 y2k bug? */
+- if (timestr[2] == '1' && isdigit(timestr[3]) && isdigit(timestr[4])) fbby2kbug = 1;
++ if (timestr[2] == '1' && isdigit((u_char) timestr[3]) && isdigit((u_char) timestr[4])) fbby2kbug = 1;
+ if ((l > 13+fbby2kbug) && (timestr[13+fbby2kbug] != ' ') && (upcase_(timestr[13+fbby2kbug]) != 'Z'))
+ only_date = true;
+ if (!only_date) {
+@@ -362,7 +362,7 @@
+ *para = '\0';
+ p = strchr(rline, '@');
+ if (p != NULL) {
+- if (p > rline && isdigit(p[-1])) {
++ if (p > rline && isdigit((u_char) p[-1])) {
+ p++;
+ nstrcpy(para, p, LEN_MBX);
+ del_comment(para, ' ');
+@@ -405,7 +405,7 @@
+ char *p;
+
+ p = s;
+- while (*s) if (isalnum(*s)) *p++ = *s++; else s++;
++ while (*s) if (isalnum((u_char) *s)) *p++ = *s++; else s++;
+ *p = '\0';
+ return p == s;
+ }
+@@ -872,7 +872,7 @@
+ }
+ }
+
+- if (wprotupdate && isxdigit(hs[0]) && isxdigit(hs[1]) && hs[2] == ' ') {
++ if (wprotupdate && isxdigit((u_char) hs[0]) && isxdigit((u_char) hs[1]) && hs[2] == ' ') {
+ if (process_wprotline(hs, actwpfilesender, true) == -2) wprotupdate = false;
+ continue;
+ }
diff --git a/ham/dpbox/patches/patch-as b/ham/dpbox/patches/patch-as
new file mode 100644
index 00000000000..e2abcb20ffd
--- /dev/null
+++ b/ham/dpbox/patches/patch-as
@@ -0,0 +1,13 @@
+$NetBSD: patch-as,v 1.1 2006/04/21 02:07:54 wulf Exp $
+
+--- box_sf.c.orig 2006-04-14 11:49:12.000000000 +0930
++++ box_sf.c 2006-04-14 11:49:40.000000000 +0930
+@@ -3575,7 +3575,7 @@
+
+ case '!': /* send with resume offset */
+ w[0] = '\0';
+- while (strlen(eingabe) > 1 && isdigit(eingabe[1])) {
++ while (strlen(eingabe) > 1 && isdigit((u_char) eingabe[1])) {
+ sprintf(w + strlen(w), "%c", eingabe[1]);
+ strdelete(eingabe, 1, 1);
+ }
diff --git a/ham/dpbox/patches/patch-at b/ham/dpbox/patches/patch-at
new file mode 100644
index 00000000000..6ae4ad53418
--- /dev/null
+++ b/ham/dpbox/patches/patch-at
@@ -0,0 +1,56 @@
+$NetBSD: patch-at,v 1.1 2006/04/21 02:07:54 wulf Exp $
+
+--- box_sub.c.orig 2006-04-14 11:50:30.000000000 +0930
++++ box_sub.c 2006-04-14 11:52:09.000000000 +0930
+@@ -2693,9 +2693,9 @@
+
+ notnum = false;
+ for (x = 0; x < l; x++) {
+- if (!(rubrik[x] == '_' || rubrik[x] == '-' || isupper(rubrik[x]) || isdigit(rubrik[x])))
++ if (!(rubrik[x] == '_' || rubrik[x] == '-' || isupper((u_char) rubrik[x]) || isdigit((u_char) rubrik[x])))
+ return false;
+- else if (isupper(rubrik[x]))
++ else if (isupper((u_char) rubrik[x]))
+ notnum = true;
+ }
+ return notnum;
+@@ -2781,7 +2781,7 @@
+ p = rubrik;
+ p2 = rubrik;
+ while ((c = upcase_(*p++))) {
+- if (c == '_' || c == '-' || isupper(c) || isdigit(c))
++ if (c == '_' || c == '-' || isupper((u_char) c) || isdigit((u_char) c))
+ *p2++ = c;
+ }
+ *p2 = '\0';
+@@ -3347,7 +3347,7 @@
+
+ case '#':
+ if ((unsigned long)strlen(inp) < 32 && /* !!!CHECK */
+- ((1L << strlen(inp)) & 0x1c) != 0 && isdigit(inp[1])) {
++ ((1L << strlen(inp)) & 0x1c) != 0 && isdigit((u_char) inp[1])) {
+ strdelete(inp, 1, 1);
+ strcpy(lt, inp);
+ return true;
+@@ -3692,7 +3692,7 @@
+ *hs = '\0';
+ y = x;
+ y++;
+- while (y <= t && eingabe[y - 1] != ' ' && isdigit(eingabe[y - 1])) {
++ while (y <= t && eingabe[y - 1] != ' ' && isdigit((u_char) eingabe[y - 1])) {
+ sprintf(hs + strlen(hs), "%c", eingabe[y - 1]);
+ y++;
+ }
+@@ -3746,10 +3746,10 @@
+
+ FORLIM = strlen(ein);
+ for (x = 0; x < FORLIM; x++) {
+- if (isdigit(ein[x]))
++ if (isdigit((u_char) ein[x]))
+ numbers = true;
+ if (ein[x] == '_' || (ein[x] & 255) == 158 || (ein[x] & 255) == 154 ||
+- (ein[x] & 255) == 153 || (ein[x] & 255) == 142 || isupper(ein[x]))
++ (ein[x] & 255) == 153 || (ein[x] & 255) == 142 || isupper((u_char) ein[x]))
+ alphab = true;
+ if (ein[x] == '-')
+ slashct++;
diff --git a/ham/dpbox/patches/patch-au b/ham/dpbox/patches/patch-au
new file mode 100644
index 00000000000..ec31a17607c
--- /dev/null
+++ b/ham/dpbox/patches/patch-au
@@ -0,0 +1,31 @@
+$NetBSD: patch-au,v 1.1 2006/04/21 02:07:54 wulf Exp $
+
+--- crawler.c.orig 2006-04-14 12:03:52.000000000 +0930
++++ crawler.c 2006-04-14 12:08:40.000000000 +0930
+@@ -191,7 +191,7 @@
+ return (*wlen > 0);
+ } else {
+ n = p;
+- while ((c = *n++) && isdigit(c));
++ while ((c = *n++) && isdigit((u_char) c));
+ if (!c) {
+ strcpy(--outw, p);
+ *wlen = (--n - *inw) - 1;
+@@ -219,7 +219,7 @@
+ continue;
+
+ wlen++;
+- c = tolower(c);
++ c = tolower((u_char) c);
+
+ switch ((unsigned char)c) {
+
+@@ -259,7 +259,7 @@
+ *outw++ = c;
+ ct++;
+ if (nonum == 0)
+- if (!isdigit(c))
++ if (!isdigit((u_char) c))
+ nonum = 1;
+ break;
+ }
diff --git a/ham/dpbox/patches/patch-av b/ham/dpbox/patches/patch-av
new file mode 100644
index 00000000000..a6a6db31ec5
--- /dev/null
+++ b/ham/dpbox/patches/patch-av
@@ -0,0 +1,46 @@
+$NetBSD: patch-av,v 1.1 2006/04/21 02:07:54 wulf Exp $
+
+--- dpputlinks.c.orig 2006-04-14 12:10:10.000000000 +0930
++++ dpputlinks.c 2006-04-14 12:11:41.000000000 +0930
+@@ -45,11 +45,11 @@
+ *o = '\0';
+ l = strlen(s);
+ if (l > 55 && s[13] == '&' && s[5] == ' ' && s[12] == ' '
+- && s[17] == ' ' && s[30] == ' ' && s[56] == ' ' && isdigit(s[55])
+- && isdigit(s[29])) {
++ && s[17] == ' ' && s[30] == ' ' && s[56] == ' ' && isdigit((u_char) s[55])
++ && isdigit((u_char) s[29])) {
+
+ for (x = 18; x <= 25; x++) {
+- if (s[x] != '.') board[x-18] = toupper(s[x]);
++ if (s[x] != '.') board[x-18] = toupper((u_char) s[x]);
+ else board[x-18] = '\0';
+ }
+ board[8] = '\0';
+@@ -105,8 +105,8 @@
+ if (token != NULL) {
+ token++;token++;
+ for (x = 1; x < 9; x++) {
+- if (isalnum(*token) || *token == '_' || *token == '-' || *token == '/')
+- *t2++ = toupper(*token++);
++ if (isalnum((u_char) *token) || *token == '_' || *token == '-' || *token == '/')
++ *t2++ = toupper((u_char) *token++);
+ else
+ x = 9;
+ }
+@@ -120,12 +120,12 @@
+ *o = '\0';
+ l = strlen(s);
+ if (l > 33 && s[23] == ':' && s[4] == ' ' && s[11] == ' '
+- && s[20] == ' ' && s[26] == ' ' && s[33] == ' ' && isdigit(s[3])
+- && isdigit(s[12])) {
++ && s[20] == ' ' && s[26] == ' ' && s[33] == ' ' && isdigit((u_char) s[3])
++ && isdigit((u_char) s[12])) {
+
+ token = nums;
+ for (x = 0; x <= 3; x++) {
+- if (isdigit(s[x])) *token++ = s[x];
++ if (isdigit((u_char) s[x])) *token++ = s[x];
+ }
+ *token = '\0';
+ num = atoi(nums);
diff --git a/ham/dpbox/patches/patch-aw b/ham/dpbox/patches/patch-aw
new file mode 100644
index 00000000000..c95d0dc6a3d
--- /dev/null
+++ b/ham/dpbox/patches/patch-aw
@@ -0,0 +1,13 @@
+$NetBSD: patch-aw,v 1.1 2006/04/21 02:07:54 wulf Exp $
+
+--- yapp.c.orig 2006-04-14 11:54:19.000000000 +0930
++++ yapp.c 2006-04-14 11:54:42.000000000 +0930
+@@ -505,7 +505,7 @@
+
+ w[0] = '\0';
+ x = 4;
+- while (x <= len && isdigit(yapp->buffer[x])) {
++ while (x <= len && isdigit((u_char) yapp->buffer[x])) {
+ sprintf(w + strlen(w), "%c", yapp->buffer[x]);
+ x++;
+ }
diff --git a/ham/dpbox/patches/patch-ax b/ham/dpbox/patches/patch-ax
new file mode 100644
index 00000000000..e25a74e30f9
--- /dev/null
+++ b/ham/dpbox/patches/patch-ax
@@ -0,0 +1,24 @@
+$NetBSD: patch-ax,v 1.1 2006/04/21 02:07:54 wulf Exp $
+
+--- dpgate.c.orig 2006-04-14 12:12:16.000000000 +0930
++++ dpgate.c 2006-04-14 12:12:45.000000000 +0930
+@@ -155,7 +155,7 @@
+ if (buf[i] == '\r') {
+ putchar('\n');
+ }
+- else if (isprint(buf[i]))
++ else if (isprint((u_char) buf[i]))
+ putchar(buf[i]);
+ else
+ putchar('.');
+@@ -696,8 +696,8 @@
+ while (*i) {
+ if (*i == '%' && strlen(i) > 2 && i[1] != '%') {
+ i++;
+- h[0] = toupper(*i++);
+- h[1] = toupper(*i++);
++ h[0] = toupper((u_char) *i++);
++ h[1] = toupper((u_char) *i++);
+ h[2] = '\0';
+ r = 32;
+ sscanf(h, "%X", &r);
diff --git a/ham/dpbox/patches/patch-ay b/ham/dpbox/patches/patch-ay
new file mode 100644
index 00000000000..d9113250f0a
--- /dev/null
+++ b/ham/dpbox/patches/patch-ay
@@ -0,0 +1,96 @@
+$NetBSD: patch-ay,v 1.1 2006/04/21 02:07:54 wulf Exp $
+
+--- box_wp.c.orig 2006-04-14 11:59:04.000000000 +0930
++++ box_wp.c 2006-04-14 12:00:39.000000000 +0930
+@@ -100,26 +100,26 @@
+
+ get_pquoted(&p, hs); /* version */
+ s = hs;
+- while (*s) if (!isdigit(*s++)) return -1;
++ while (*s) if (!isdigit((u_char) *s++)) return -1;
+ wpb->version = atol(hs);
+ if (!valid_wprot_version(wpb->version)) return -1;
+
+ get_pquoted(&p, hs); /* timestamp */
+ s = hs;
+- while (*s) if (!isdigit(*s++)) return -1;
++ while (*s) if (!isdigit((u_char) *s++)) return -1;
+ wpb->timestamp = atol(hs);
+ if (!valid_wprot_timestamp(wpb->timestamp)) return -1;
+
+ get_pquoted(&p, hs); /* hops */
+ s = hs;
+- while (*s) if (!isdigit(*s++)) return -1;
++ while (*s) if (!isdigit((u_char) *s++)) return -1;
+ wpb->hops = atoi(hs);
+ if (wpb->hops < 1) return -1;
+ if (wpb->hops > MAXWPHOPS) return -1;
+
+ get_pquoted(&p, hs); /* quality */
+ s = hs;
+- while (*s) if (!isdigit(*s++)) return -1;
++ while (*s) if (!isdigit((u_char) *s++)) return -1;
+ wpb->quality = atol(hs);
+
+ get_pquoted(&p, hs); /* must be empty */
+@@ -197,7 +197,7 @@
+
+ get_pquoted(&p, hs); /* version */
+ s = hs;
+- while (*s) if (!isdigit(*s++)) return -1;
++ while (*s) if (!isdigit((u_char) *s++)) return -1;
+ wpb->version = atol(hs);
+ if (!valid_wprot_version(wpb->version)) return -1;
+
+@@ -205,7 +205,7 @@
+ if (!strcmp(hs, "?")) wpb->status = 0;
+ else {
+ s = hs;
+- while (*s) if (!isdigit(*s++)) return -1;
++ while (*s) if (!isdigit((u_char) *s++)) return -1;
+ wpb->status = atoi(hs);
+ }
+
+@@ -223,13 +223,13 @@
+
+ get_pquoted(&p, hs); /* timestamp */
+ s = hs;
+- while (*s) if (!isdigit(*s++)) return -1;
++ while (*s) if (!isdigit((u_char) *s++)) return -1;
+ wpb->timestamp = atol(hs);
+ if (!valid_wprot_timestamp(wpb->timestamp)) return -1;
+
+ get_pquoted(&p, hs); /* hops */
+ s = hs;
+- while (*s) if (!isdigit(*s++)) return -1;
++ while (*s) if (!isdigit((u_char) *s++)) return -1;
+ wpb->hops = atoi(hs);
+ if (wpb->hops < 1) return -1;
+ if (wpb->hops > MAXWPHOPS) return -1;
+@@ -312,7 +312,7 @@
+
+ get_pquoted(&p, hs); /* timestamp */
+ s = hs;
+- while (*s) if (!isdigit(*s++)) {
++ while (*s) if (!isdigit((u_char) *s++)) {
+ debug(5, -1, 228, "invalid digit in timestamp");
+ return -1;
+ }
+@@ -332,7 +332,7 @@
+
+ get_pquoted(&p, hs); /* hops */
+ s = hs;
+- while (*s) if (!isdigit(*s++)) {
++ while (*s) if (!isdigit((u_char) *s++)) {
+ debug(5, -1, 228, "invalid digit in hops");
+ return -1;
+ }
+@@ -435,7 +435,7 @@
+
+ get_pquoted(&p, hs); /* hops */
+ s = hs;
+- while (*s) if (!isdigit(*s++)) return -1;
++ while (*s) if (!isdigit((u_char) *s++)) return -1;
+ wpb->hops = atoi(hs);
+ if (wpb->hops < 1) return -1;
+ if (wpb->hops > MAXWPHOPS) return -1;
diff --git a/ham/dpbox/patches/patch-az b/ham/dpbox/patches/patch-az
new file mode 100644
index 00000000000..290fad4b642
--- /dev/null
+++ b/ham/dpbox/patches/patch-az
@@ -0,0 +1,12 @@
+$NetBSD: patch-az,v 1.1 2006/04/21 02:07:54 wulf Exp $
+--- box_rout.c.orig 2006-04-14 12:46:43.000000000 +0930
++++ box_rout.c 2006-04-14 12:47:09.000000000 +0930
+@@ -1837,7 +1837,7 @@
+ strsub(adesc, hs, i + 1, k - i - 1);
+ strdelete(hs, 1, k);
+ get_word(hs, w1);
+- if (*w1 != '\0' && isalpha(w1[0]))
++ if (*w1 != '\0' && isalpha((u_char) w1[0]))
+ sprintf(adesc + strlen(adesc), " %s", w1);
+ }
+ }