typo in ftp-proxy.8

2017-01-14 Thread Sebastien Marie
Hi,

The user of ftp-proxy(8) for privdrop is _ftp_proxy. The man page has
a typo in the username mentionned.

src/usr.sbin/ftp-proxy/ftp-proxy.c
54
55  #define CHROOT_DIR  "/var/empty"
56  #define NOPRIV_USER "_ftp_proxy"
57

Thanks.
-- 
Sebastien Marie

Index: ftp-proxy.8
===
RCS file: /cvs/src/usr.sbin/ftp-proxy/ftp-proxy.8,v
retrieving revision 1.22
diff -u -p -r1.22 ftp-proxy.8
--- ftp-proxy.8 4 Jan 2016 18:03:09 -   1.22
+++ ftp-proxy.8 15 Jan 2017 06:10:02 -
@@ -82,7 +82,7 @@ pass out from $client to $server port $p
 .Ed
 .Pp
 .Nm
-chroots to "/var/empty" and changes to user "_ftp-proxy" to drop privileges.
+chroots to "/var/empty" and changes to user "_ftp_proxy" to drop privileges.
 .Pp
 The options are as follows:
 .Bl -tag -width Ds



pflow(4): allow changing sender ip

2017-01-14 Thread Florian Obser
... without changing the address family at the same time

Easier to read with diff -b.

This + previous fixes the ``ifconfig'' pflow regress test.

OK?

diff --git if_pflow.c if_pflow.c
index 80758b60bd5..2933df9b444 100644
--- if_pflow.c
+++ if_pflow.c
@@ -372,46 +372,37 @@ pflow_set(struct pflow_softc *sc, struct pflowreq *pflowr)
}
 
if (pflowr->addrmask & PFLOW_MASK_SRCIP) {
-   if (sc->sc_flowsrc != NULL &&
-   sc->sc_flowsrc->sa_family != pflowr->flowsrc.ss_family) {
+   if (sc->sc_flowsrc != NULL)
free(sc->sc_flowsrc, M_DEVBUF, sc->sc_flowsrc->sa_len);
-   sc->sc_flowsrc = NULL;
-   if (sc->so != NULL) {
-   soclose(sc->so);
-   sc->so = NULL;
-   }
-   }
-
-   if (sc->sc_flowsrc == NULL) {
-   switch(pflowr->flowsrc.ss_family) {
-   case AF_INET:
-   if ((sc->sc_flowsrc = malloc(
-   sizeof(struct sockaddr_in),
-   M_DEVBUF, M_NOWAIT)) == NULL)
-   return (ENOMEM);
-   memcpy(sc->sc_flowsrc, &pflowr->flowsrc,
-   sizeof(struct sockaddr_in));
-   sc->sc_flowsrc->sa_len = sizeof(struct
-   sockaddr_in);
-   break;
-   case AF_INET6:
-   if ((sc->sc_flowsrc = malloc(
-   sizeof(struct sockaddr_in6),
-   M_DEVBUF, M_NOWAIT)) == NULL)
-   return (ENOMEM);
-   memcpy(sc->sc_flowsrc, &pflowr->flowsrc,
-   sizeof(struct sockaddr_in6));
-   sc->sc_flowsrc->sa_len = sizeof(struct
-   sockaddr_in6);
-   break;
-   default:
-   break;
-   }
-   }
+   sc->sc_flowsrc = NULL;
if (sc->so != NULL) {
soclose(sc->so);
sc->so = NULL;
}
+   switch(pflowr->flowsrc.ss_family) {
+   case AF_INET:
+   if ((sc->sc_flowsrc = malloc(
+   sizeof(struct sockaddr_in),
+   M_DEVBUF, M_NOWAIT)) == NULL)
+   return (ENOMEM);
+   memcpy(sc->sc_flowsrc, &pflowr->flowsrc,
+   sizeof(struct sockaddr_in));
+   sc->sc_flowsrc->sa_len = sizeof(struct
+   sockaddr_in);
+   break;
+   case AF_INET6:
+   if ((sc->sc_flowsrc = malloc(
+   sizeof(struct sockaddr_in6),
+   M_DEVBUF, M_NOWAIT)) == NULL)
+   return (ENOMEM);
+   memcpy(sc->sc_flowsrc, &pflowr->flowsrc,
+   sizeof(struct sockaddr_in6));
+   sc->sc_flowsrc->sa_len = sizeof(struct
+   sockaddr_in6);
+   break;
+   default:
+   break;
+   }
}
 
if (sc->so == NULL) {


-- 
I'm not entirely sure you are real.



pflow(4): allow changing receiver ip

2017-01-14 Thread Florian Obser
... without changing the address family at the same time

Easier to see with diff -b

OK?

diff --git if_pflow.c if_pflow.c
index 8e95aaf753f..80758b60bd5 100644
--- if_pflow.c
+++ if_pflow.c
@@ -335,32 +335,35 @@ pflow_set(struct pflow_softc *sc, struct pflowreq *pflowr)
}
}
 
-   if (sc->sc_flowdst == NULL) {
-   switch (pflowr->flowdst.ss_family) {
-   case AF_INET:
+   switch (pflowr->flowdst.ss_family) {
+   case AF_INET:
+   if (sc->sc_flowdst == NULL) {
if ((sc->sc_flowdst = malloc(
sizeof(struct sockaddr_in),
M_DEVBUF,  M_NOWAIT)) == NULL)
return (ENOMEM);
-   memcpy(sc->sc_flowdst, &pflowr->flowdst,
-   sizeof(struct sockaddr_in));
-   sc->sc_flowdst->sa_len = sizeof(struct
-   sockaddr_in);
-   break;
-   case AF_INET6:
+   }
+   memcpy(sc->sc_flowdst, &pflowr->flowdst,
+   sizeof(struct sockaddr_in));
+   sc->sc_flowdst->sa_len = sizeof(struct
+   sockaddr_in);
+   break;
+   case AF_INET6:
+   if (sc->sc_flowdst == NULL) {
if ((sc->sc_flowdst = malloc(
sizeof(struct sockaddr_in6),
M_DEVBUF, M_NOWAIT)) == NULL)
return (ENOMEM);
-   memcpy(sc->sc_flowdst, &pflowr->flowdst,
-   sizeof(struct sockaddr_in6));
-   sc->sc_flowdst->sa_len = sizeof(struct
-   sockaddr_in6);
-   break;
-   default:
-   break;
}
+   memcpy(sc->sc_flowdst, &pflowr->flowdst,
+   sizeof(struct sockaddr_in6));
+   sc->sc_flowdst->sa_len = sizeof(struct
+   sockaddr_in6);
+   break;
+   default:
+   break;
}
+
if (sc->sc_flowdst != NULL) {
sc->send_nam->m_len = sc->sc_flowdst->sa_len;
sa = mtod(sc->send_nam, struct sockaddr *);


-- 
I'm not entirely sure you are real.



Harmonize frame buffer drivers information display

2017-01-14 Thread Frederic Cambus
Hi tech@,

Harmonize the way frame buffer drivers display resolution and color
depth when attaching.

Comments? OK?

Index: sys/arch/alpha/tc/cfb.c
===
RCS file: /cvs/src/sys/arch/alpha/tc/cfb.c,v
retrieving revision 1.23
diff -u -p -r1.23 cfb.c
--- sys/arch/alpha/tc/cfb.c 20 Oct 2013 20:07:22 -  1.23
+++ sys/arch/alpha/tc/cfb.c 12 Jan 2017 15:26:42 -
@@ -215,7 +215,7 @@ cfbattach(parent, self, aux)
printf(": can't map mem space\n");
return;
}
-   printf(": %d x %d, %dbpp\n", sc->sc_dc->dc_wid, sc->sc_dc->dc_ht,
+   printf(": %dx%d, %dbpp\n", sc->sc_dc->dc_wid, sc->sc_dc->dc_ht,
sc->sc_dc->dc_depth);
 
/* Establish an interrupt handler, and clear any pending interrupts */
Index: sys/arch/alpha/tc/sfb.c
===
RCS file: /cvs/src/sys/arch/alpha/tc/sfb.c,v
retrieving revision 1.21
diff -u -p -r1.21 sfb.c
--- sys/arch/alpha/tc/sfb.c 20 Oct 2013 20:07:22 -  1.21
+++ sys/arch/alpha/tc/sfb.c 12 Jan 2017 15:26:42 -
@@ -255,7 +255,7 @@ sfbattach(parent, self, aux)
printf(": can't map mem space\n");
return;
}
-   printf(": %d x %d, %dbpp\n", sc->sc_dc->dc_wid, sc->sc_dc->dc_ht,
+   printf(": %dx%d, %dbpp\n", sc->sc_dc->dc_wid, sc->sc_dc->dc_ht,
sc->sc_dc->dc_depth);
 
 #if 0
Index: sys/arch/loongson/dev/radeonfb.c
===
RCS file: /cvs/src/sys/arch/loongson/dev/radeonfb.c,v
retrieving revision 1.1
diff -u -p -r1.1 radeonfb.c
--- sys/arch/loongson/dev/radeonfb.c7 Oct 2016 04:08:30 -   1.1
+++ sys/arch/loongson/dev/radeonfb.c12 Jan 2017 15:26:42 -
@@ -229,7 +229,7 @@ radeonfb_attach(struct device *parent, s
}
}
 
-   printf(": %dx%dx%d frame buffer\n",
+   printf(": %dx%d, %dbpp\n",
fb->ri.ri_width, fb->ri.ri_height, fb->ri.ri_depth);
 
sc->sc_scrlist[0] = &fb->wsd;
Index: sys/arch/loongson/dev/sisfb.c
===
RCS file: /cvs/src/sys/arch/loongson/dev/sisfb.c,v
retrieving revision 1.4
diff -u -p -r1.4 sisfb.c
--- sys/arch/loongson/dev/sisfb.c   21 Oct 2013 10:36:14 -  1.4
+++ sys/arch/loongson/dev/sisfb.c   12 Jan 2017 15:26:42 -
@@ -240,7 +240,7 @@ sisfb_attach(struct device *parent, stru
}
}
 
-   printf(": %dx%dx%d frame buffer\n",
+   printf(": %dx%d, %dbpp\n",
fb->ri.ri_width, fb->ri.ri_height, fb->ri.ri_depth);
 
sc->sc_scrlist[0] = &fb->wsd;
Index: sys/arch/luna88k/dev/lunafb.c
===
RCS file: /cvs/src/sys/arch/luna88k/dev/lunafb.c,v
retrieving revision 1.22
diff -u -p -r1.22 lunafb.c
--- sys/arch/luna88k/dev/lunafb.c   22 Jul 2014 13:39:16 -  1.22
+++ sys/arch/luna88k/dev/lunafb.c   12 Jan 2017 15:26:42 -
@@ -200,7 +200,7 @@ omfbattach(struct device *parent, struct
M_WAITOK | M_ZERO);
omfb_getdevconfig(OMFB_FB_WADDR, sc->sc_dc);
}
-   printf(": %d x %d, %dbpp\n", sc->sc_dc->dc_wid, sc->sc_dc->dc_ht,
+   printf(": %dx%d, %dbpp\n", sc->sc_dc->dc_wid, sc->sc_dc->dc_ht,
hwplanebits);
 
waa.console = omfb_console;
Index: sys/arch/sgi/gio/grtwo.c
===
RCS file: /cvs/src/sys/arch/sgi/gio/grtwo.c,v
retrieving revision 1.12
diff -u -p -r1.12 grtwo.c
--- sys/arch/sgi/gio/grtwo.c8 Sep 2015 10:21:50 -   1.12
+++ sys/arch/sgi/gio/grtwo.c12 Jan 2017 15:26:42 -
@@ -424,7 +424,7 @@ grtwo_attach(struct device *parent, stru
dc->dc_sc = sc;
 
printf(", revision %d, monitor sense %d\n", dc->boardrev, dc->monitor);
-   printf("%s: %dx%d %d-bit frame buffer\n",
+   printf("%s: %dx%d, %dbpp\n",
self->dv_xname, GRTWO_WIDTH, GRTWO_HEIGHT, dc->depth);
 
sc->sc_scrlist[0] = &dc->dc_wsd;
Index: sys/arch/sgi/gio/light.c
===
RCS file: /cvs/src/sys/arch/sgi/gio/light.c,v
retrieving revision 1.7
diff -u -p -r1.7 light.c
--- sys/arch/sgi/gio/light.c7 Dec 2014 17:15:56 -   1.7
+++ sys/arch/sgi/gio/light.c12 Jan 2017 15:26:42 -
@@ -417,7 +417,7 @@ light_attach(struct device *parent, stru
printf(": LG%dMC\n",
LIGHT_IS_LG1(sc->sc_dc->dc_boardrev) ? 1 : 2);
printf(", revision %d\n", dc->dc_boardrev);
-   printf("%s: %dx%d %d-bit frame buffer\n", self->dv_xname,
+   printf("%s: %dx%d, %dbpp\n", self->dv_xname,
dc->dc_ri.ri_width, dc->dc_ri.ri_height, dc->dc_ri.ri_depth);
 
sc->sc_scrlist[0] = &dc->dc_wsd;
Index: sys/arch/sgi/gio/newport.c
===

Re: 11n support for athn(4)

2017-01-14 Thread Stefan Sperling
On Sat, Jan 14, 2017 at 12:42:09PM +, Peter Kay wrote:
> On 14 January 2017 at 12:02, Stefan Sperling  wrote:
> > On Sat, Jan 14, 2017 at 11:31:00AM +, Peter Kay wrote:
> >> On 14 January 2017 at 11:23, Stefan Sperling  wrote:
> 
> > If one of your clients says it cannot authenticate, then this client may be
> > trying to use TKIP/WPA1. You can enable wpa1 explicitly for such clients:
> >   ifconfig athn0 wpaprotos wpa1,wpa2
> > But understand that you'll be running broken WEP-grade crypto if you do 
> > this.
> I'll upgrade to the latest snapshot. It's not a TKIP/WPA1 issue as a
> reboot fixes it.

A reboot is very drastic and won't help with narrowing down the
cause of your issue.

Can you find a better way to unwedge the AP when it runs into problems?
Does 'ifconfig iwn0 scan' on the client help?
Does 'ifconfig athn0 down up' on the AP help?



Re: 11n support for athn(4)

2017-01-14 Thread Peter Kay
On 14 January 2017 at 12:02, Stefan Sperling  wrote:
> On Sat, Jan 14, 2017 at 11:31:00AM +, Peter Kay wrote:
>> On 14 January 2017 at 11:23, Stefan Sperling  wrote:

> If one of your clients says it cannot authenticate, then this client may be
> trying to use TKIP/WPA1. You can enable wpa1 explicitly for such clients:
>   ifconfig athn0 wpaprotos wpa1,wpa2
> But understand that you'll be running broken WEP-grade crypto if you do this.
I'll upgrade to the latest snapshot. It's not a TKIP/WPA1 issue as a
reboot fixes it.



Re: 11n support for athn(4)

2017-01-14 Thread Stefan Sperling
On Sat, Jan 14, 2017 at 11:31:00AM +, Peter Kay wrote:
> On 14 January 2017 at 11:23, Stefan Sperling  wrote:
> > On Sat, Jan 14, 2017 at 11:03:24AM +, Peter Kay wrote:
> >> On 12 January 2017 at 15:06, Stefan Sperling  wrote:
> 
> > So your first test might not have had 11n enabled since the first two
> > versions of my patch had a bug where 11n was left disabled on 2GHz only
> > devices. Please check with 'ifconfig media athn0' whether 11n mode is
> > actually supported.
> 'bad value' regardless of what interface I run this on?
> 
> > What does your /etc/hostname.athn0 file look like?
> > Please specify 'mode 11n' in your /etc/hostname.athn0, and also fix the
> > channel with a line such as 'chan 1'. There are known problems otherwise.
> > For reference, this is what I am using:
> >
> >   media autoselect mode 11n mediaopt hostap chan 10
> >   nwid stsp.name wpakey xxx
> >   up
> inet 1.1.1.1 255.255.255.0 1.1.1.255 description "802.11b/g wireless"
> media autoselect mode 11n mediaopt hostap chan 9 nwid "myap" wpakey
> "ultrasecurepassword" wpaprotos "wpa2"
> 
> I'll try applying the latest patch if it will make a difference,

Please upgrade to the latest snapshot instead. It should have all the changes.

> but the clients did think they had a carrier at greater than g speeds.

If you upgraded from 6.0 to -current to test the 11n patches, note
also that we recently disabled the TKIP pairwise cipher in -current:
https://marc.info/?l=openbsd-cvs&m=148224048415556&w=2

If one of your clients says it cannot authenticate, then this client may be
trying to use TKIP/WPA1. You can enable wpa1 explicitly for such clients:
  ifconfig athn0 wpaprotos wpa1,wpa2
But understand that you'll be running broken WEP-grade crypto if you do this.



Re: 11n support for athn(4)

2017-01-14 Thread Peter Kay
On 14 January 2017 at 11:23, Stefan Sperling  wrote:
> On Sat, Jan 14, 2017 at 11:03:24AM +, Peter Kay wrote:
>> On 12 January 2017 at 15:06, Stefan Sperling  wrote:

> So your first test might not have had 11n enabled since the first two
> versions of my patch had a bug where 11n was left disabled on 2GHz only
> devices. Please check with 'ifconfig media athn0' whether 11n mode is
> actually supported.
'bad value' regardless of what interface I run this on?

> What does your /etc/hostname.athn0 file look like?
> Please specify 'mode 11n' in your /etc/hostname.athn0, and also fix the
> channel with a line such as 'chan 1'. There are known problems otherwise.
> For reference, this is what I am using:
>
>   media autoselect mode 11n mediaopt hostap chan 10
>   nwid stsp.name wpakey xxx
>   up
inet 1.1.1.1 255.255.255.0 1.1.1.255 description "802.11b/g wireless"
media autoselect mode 11n mediaopt hostap chan 9 nwid "myap" wpakey
"ultrasecurepassword" wpaprotos "wpa2"

I'll try applying the latest patch if it will make a difference, but
the clients did think they had a carrier at greater than g speeds.



Re: 11n support for athn(4)

2017-01-14 Thread Stefan Sperling
On Sat, Jan 14, 2017 at 11:03:24AM +, Peter Kay wrote:
> On 12 January 2017 at 15:06, Stefan Sperling  wrote:
> > On Tue, Jan 10, 2017 at 12:27:47AM +0100, Stefan Sperling wrote:
> >> On Mon, Jan 09, 2017 at 01:54:55PM +0100, Stefan Sperling wrote:
> >> > This diff adds 11n support to the athn(4) driver.
> >> > Requires -current net80211 code from today.
> >>
> I'm now getting some very odd issues that did not previously exist
> with my hostap before upgrading to the snapshot and applying the
> patch.

It seems you have a 2GHz only card according to
https://wikidevi.com/wiki/Atheros
and what you wrote earlier:

 "Hardware MAC AR5416 rev 2, RF AR2133 (3T2R), ROM rev 5 (PCI adapter)"

So your first test might not have had 11n enabled since the first two
versions of my patch had a bug where 11n was left disabled on 2GHz only
devices. Please check with 'ifconfig media athn0' whether 11n mode is
actually supported.

> Phone complains about an 'authentication problem', iwn laptop with
> issues about buffer space and then associates with a different ap.
> There's nothing in the logs and a reboot is required.
> 
> At first I thought it was a clock problem, because I found my firewall
> clock was somehow a month ahead, but after correcting that the second
> time it occurred the time was ok.
> 
> Going to have to revert to snapshot without the 11n patches and see if
> the issue persists. Unfortunately it takes a while to manifest itself.

What does your /etc/hostname.athn0 file look like?
Please specify 'mode 11n' in your /etc/hostname.athn0, and also fix the
channel with a line such as 'chan 1'. There are known problems otherwise.
For reference, this is what I am using:

  media autoselect mode 11n mediaopt hostap chan 10
  nwid stsp.name wpakey xxx
  up

(There is no line configuring an IP since my athn0 is part of a bridge.)

Apart from that there are known performance issues on 2GHz.
I have always had bad performance from athn(4) on 2GHz, even in 11g mode.
Currently my 2GHz AP effectively transmits no more than 500Kbit/s.
But is runs stable apart from that.

It is unclear where this problem is coming from. Until now I wasn't sure
whether this is problem is specific to my environment or not (there are
a lot of 2GHz networks around here). It does not seems to be the case
since by now several people have reported this problem.
It seems the driver works a lot better with 5 GHz devices and lacks
something specific to the 2GHz ones.



Re: 11n support for athn(4)

2017-01-14 Thread Peter Kay
On 12 January 2017 at 15:06, Stefan Sperling  wrote:
> On Tue, Jan 10, 2017 at 12:27:47AM +0100, Stefan Sperling wrote:
>> On Mon, Jan 09, 2017 at 01:54:55PM +0100, Stefan Sperling wrote:
>> > This diff adds 11n support to the athn(4) driver.
>> > Requires -current net80211 code from today.
>>
I'm now getting some very odd issues that did not previously exist
with my hostap before upgrading to the snapshot and applying the
patch.

Phone complains about an 'authentication problem', iwn laptop with
issues about buffer space and then associates with a different ap.
There's nothing in the logs and a reboot is required.

At first I thought it was a clock problem, because I found my firewall
clock was somehow a month ahead, but after correcting that the second
time it occurred the time was ok.

Going to have to revert to snapshot without the 11n patches and see if
the issue persists. Unfortunately it takes a while to manifest itself.

PK



nsd 4.1.14

2017-01-14 Thread Florian Obser
tests, OKs?

diff --git configlexer.lex configlexer.lex
index e6b26f947e1..42dbd152f16 100644
--- configlexer.lex
+++ configlexer.lex
@@ -66,15 +66,6 @@ static void config_start_include(const char* filename)
c_error_msg("include %s: malloc failure", filename);
return;
}
-   if (cfg_parser->chroot) {
-   int l = strlen(cfg_parser->chroot); /* chroot has trailing 
slash */
-   if (strncmp(cfg_parser->chroot, filename, l) != 0) {
-   c_error_msg("include file '%s' is not relative to 
chroot '%s'",
-   filename, cfg_parser->chroot);
-   return;
-   }
-   filename += l - 1; /* strip chroot without trailing slash */
-   }
nm = strdup(filename);
if(!nm) {
c_error_msg("include %s: strdup failure", filename);
@@ -103,12 +94,23 @@ static void config_start_include(const char* filename)
 
 static void config_start_include_glob(const char* filename)
 {
-/* check for wildcards */
+   /* check for wildcards */
 #ifdef HAVE_GLOB
-glob_t g;
-size_t i;
-int r, flags;
-if(!(!strchr(filename, '*') && !strchr(filename, '?') &&
+   glob_t g;
+   size_t i;
+   int r, flags;
+#endif /* HAVE_GLOB */
+   if (cfg_parser->chroot) {
+   int l = strlen(cfg_parser->chroot); /* chroot has trailing 
slash */
+   if (strncmp(cfg_parser->chroot, filename, l) != 0) {
+   c_error_msg("include file '%s' is not relative to 
chroot '%s'",
+   filename, cfg_parser->chroot);
+   return;
+   }
+   filename += l - 1; /* strip chroot without trailing slash */
+   }
+#ifdef HAVE_GLOB
+   if(!(!strchr(filename, '*') && !strchr(filename, '?') &&
 !strchr(filename, '[') && !strchr(filename, '{') &&
 !strchr(filename, '~'))) {
 flags = 0
@@ -141,9 +143,9 @@ static void config_start_include_glob(const char* filename)
}
globfree(&g);
return;
-}
+   }
 #endif /* HAVE_GLOB */
-config_start_include(filename);
+   config_start_include(filename);
 }
 
 static void config_end_include(void)
diff --git configure configure
index 41bb666a9fc..7d220882e2f 100644
--- configure
+++ configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for NSD 4.1.13.
+# Generated by GNU Autoconf 2.69 for NSD 4.1.14.
 #
 # Report bugs to .
 #
@@ -580,8 +580,8 @@ MAKEFLAGS=
 # Identity of this package.
 PACKAGE_NAME='NSD'
 PACKAGE_TARNAME='nsd'
-PACKAGE_VERSION='4.1.13'
-PACKAGE_STRING='NSD 4.1.13'
+PACKAGE_VERSION='4.1.14'
+PACKAGE_STRING='NSD 4.1.14'
 PACKAGE_BUGREPORT='nsd-b...@nlnetlabs.nl'
 PACKAGE_URL=''
 
@@ -1284,7 +1284,7 @@ if test "$ac_init_help" = "long"; then
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures NSD 4.1.13 to adapt to many kinds of systems.
+\`configure' configures NSD 4.1.14 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1345,7 +1345,7 @@ fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
- short | recursive ) echo "Configuration of NSD 4.1.13:";;
+ short | recursive ) echo "Configuration of NSD 4.1.14:";;
esac
   cat <<\_ACEOF
 
@@ -1491,7 +1491,7 @@ fi
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-NSD configure 4.1.13
+NSD configure 4.1.14
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2200,7 +2200,7 @@ cat >config.log <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by NSD $as_me 4.1.13, which was
+It was created by NSD $as_me 4.1.14, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -9717,7 +9717,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by NSD $as_me 4.1.13, which was
+This file was extended by NSD $as_me 4.1.14, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES= $CONFIG_FILES
@@ -9779,7 +9779,7 @@ _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; 
s/[\\""\`\$]/&/g'`"
 ac_cs_version="\\
-NSD config.status 4.1.13
+NSD config.status 4.1.14
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
diff --git configure.ac configure.ac
index e2aca4d531e..029193574f0 100644
--- config