I've updated conserver to the newest release, it looks like
there are a few useful fixes and improvements since 8.1.11:

http://www.conserver.com/CHANGES

It passes 'make regress' cleanly on sparc64/amd64/i386, as well as
any comments, I'm particularly interested in test reports for real
use on sparc64 to make sure the unaligned access hasn't crept back
in, and with serial consoles (vs. network accessible consoles) on
any arch.

(discussed with maintainer).


Index: Makefile
===================================================================
RCS file: /cvs/ports/comms/conserver/Makefile,v
retrieving revision 1.30
diff -u -p -u -r1.30 Makefile
--- Makefile    16 Sep 2007 01:37:09 -0000      1.30
+++ Makefile    12 Oct 2007 11:15:11 -0000
@@ -2,8 +2,7 @@
 
 COMMENT=       manage remote serial consoles via TCP/IP
 
-DISTNAME=      conserver-8.1.11
-PKGNAME=       ${DISTNAME}p0
+DISTNAME=      conserver-8.1.16
 CATEGORIES=    comms
 
 MAINTAINER=    Peter Valchev <[EMAIL PROTECTED]>
Index: distinfo
===================================================================
RCS file: /cvs/ports/comms/conserver/distinfo,v
retrieving revision 1.5
diff -u -p -u -r1.5 distinfo
--- distinfo    5 Apr 2007 15:37:47 -0000       1.5
+++ distinfo    12 Oct 2007 11:15:11 -0000
@@ -1,5 +1,5 @@
-MD5 (conserver-8.1.11.tar.gz) = lCWc1x846Us/JHdo47xzHw==
-RMD160 (conserver-8.1.11.tar.gz) = OAOGw/SIeHvxMoCQcbMIvJoAyJ8=
-SHA1 (conserver-8.1.11.tar.gz) = 0w1Mhrdp1WcH9qv61HmSzFnxKNo=
-SHA256 (conserver-8.1.11.tar.gz) = dX4FFsuLOKGoO6VonqEfcGyiTzZRK9WNAeoGw9IIcuo=
-SIZE (conserver-8.1.11.tar.gz) = 299281
+MD5 (conserver-8.1.16.tar.gz) = I2S6VvUgGwdka9+u/t0zCw==
+RMD160 (conserver-8.1.16.tar.gz) = kYgy0h1G9/IM+cEIjAWBkAkzQ6A=
+SHA1 (conserver-8.1.16.tar.gz) = biqYWSeBLMjCU0Y9U5Edw3+zcRE=
+SHA256 (conserver-8.1.16.tar.gz) = Q9ydgbwj12oOwBrNH1T1wna3Ff7rj1K7M7XIHzJaRtg=
+SIZE (conserver-8.1.16.tar.gz) = 311373
Index: patches/patch-configure_in
===================================================================
RCS file: patches/patch-configure_in
diff -N patches/patch-configure_in
--- patches/patch-configure_in  2 Aug 2005 07:25:47 -0000       1.2
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,12 +0,0 @@
-$OpenBSD: patch-configure_in,v 1.2 2005/08/02 07:25:47 pvalchev Exp $
---- configure.in.orig  Thu Jun 23 23:10:15 2005
-+++ configure.in       Thu Jun 23 23:10:59 2005
-@@ -326,7 +326,7 @@ if test "$ac_cv_sys_posix_termios" != "y
-     AC_MSG_ERROR([POSIX termios interface required])
- fi
- 
--AC_CHECK_HEADERS(unistd.h getopt.h sys/vlimit.h sys/resource.h ttyent.h 
sys/ttold.h sys/uio.h sys/ioctl_compat.h usersec.h sys/select.h stropts.h 
sys/audit.h shadow.h sys/time.h crypt.h sysexits.h types.h sys/sockio.h 
sys/param.h)
-+AC_CHECK_HEADERS(unistd.h getopt.h sys/vlimit.h sys/resource.h ttyent.h 
sys/ttold.h sys/uio.h sys/types.h sys/param.h sys/proc.h sys/ioctl_compat.h 
usersec.h sys/select.h stropts.h sys/audit.h shadow.h sys/time.h crypt.h 
sysexits.h types.h)
- dnl sys/proc.h needs sys/param.h on openbsd, apparently
- AC_CHECK_HEADERS(sys/proc.h, [], [],
- [#if HAVE_SYS_PARAM_H
Index: patches/patch-conserver_Makefile_in
===================================================================
RCS file: /cvs/ports/comms/conserver/patches/patch-conserver_Makefile_in,v
retrieving revision 1.2
diff -u -p -u -r1.2 patch-conserver_Makefile_in
--- patches/patch-conserver_Makefile_in 2 Aug 2005 07:25:47 -0000       1.2
+++ patches/patch-conserver_Makefile_in 12 Oct 2007 11:15:11 -0000
@@ -1,7 +1,27 @@
 $OpenBSD: patch-conserver_Makefile_in,v 1.2 2005/08/02 07:25:47 pvalchev Exp $
---- conserver/Makefile.in.orig Tue Feb 10 01:32:28 2004
-+++ conserver/Makefile.in      Sat Jul 30 11:57:23 2005
-@@ -57,11 +57,8 @@ distclean: clean
+--- conserver/Makefile.in.orig Mon Jun  6 16:03:06 2005
++++ conserver/Makefile.in      Fri Oct 12 12:11:24 2007
+@@ -36,7 +36,7 @@ CONSERVER_HDRS = ../config.h $(top_srcdir)/compat.h $(
+                $(srcdir)/group.h $(srcdir)/main.h $(srcdir)/master.h \
+                $(srcdir)/readcfg.h $(srcdir)/version.h
+ 
+-ALL = conserver convert
++ALL = conserver conserver-convert
+ 
+ 
+ all: $(ALL)
+@@ -46,8 +46,8 @@ $(CONSERVER_OBJS): $(CONSERVER_HDRS)
+ conserver: $(CONSERVER_OBJS)
+       $(CC) $(CFLAGS) $(LDFLAGS) -o conserver $(CONSERVER_OBJS) $(LIBS)
+ 
+-convert: convert.o cutil.o
+-      $(CC) $(CFLAGS) $(LDFLAGS) -o convert convert.o cutil.o $(LIBS)
++conserver-convert: convert.o cutil.o
++      $(CC) $(CFLAGS) $(LDFLAGS) -o conserver-convert convert.o cutil.o 
$(LIBS)
+ 
+ .c.o:
+       $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $<
+@@ -59,13 +59,9 @@ distclean: clean
        rm -f Makefile conserver.rc
  
  install: conserver
@@ -11,8 +31,11 @@ $OpenBSD: patch-conserver_Makefile_in,v 
 -      $(INSTALL) conserver.man $(DESTDIR)$(mandir)/man8/conserver.8
 -      $(MKDIR) $(DESTDIR)$(exampledir)
 -      $(INSTALL) conserver.rc $(DESTDIR)$(exampledir)
+-      $(MKDIR) $(DESTDIR)$(pkglibdir)
+-      $(INSTALL) convert $(DESTDIR)$(pkglibdir)/convert
 +      $(BSD_INSTALL_PROGRAM) conserver $(DESTDIR)$(sbindir)
 +      $(BSD_INSTALL_MAN) conserver.man $(DESTDIR)$(mandir)/man8/conserver.8
 +      $(BSD_INSTALL_DATA_DIR) $(DESTDIR)$(exampledir)
++      $(BSD_INSTALL_PROGRAM) conserver-convert $(DESTDIR)$(sbindir)
  
  .PHONY: clean distclean install
Index: patches/patch-conserver_consent_c
===================================================================
RCS file: /cvs/ports/comms/conserver/patches/patch-conserver_consent_c,v
retrieving revision 1.2
diff -u -p -u -r1.2 patch-conserver_consent_c
--- patches/patch-conserver_consent_c   2 Aug 2005 07:25:47 -0000       1.2
+++ patches/patch-conserver_consent_c   12 Oct 2007 11:15:11 -0000
@@ -1,7 +1,7 @@
 $OpenBSD: patch-conserver_consent_c,v 1.2 2005/08/02 07:25:47 pvalchev Exp $
---- conserver/consent.c.orig   Thu Jun 23 23:28:58 2005
-+++ conserver/consent.c        Thu Jun 23 23:30:52 2005
-@@ -528,7 +528,8 @@ VirtDev(pCE)
+--- conserver/consent.c.orig   Mon Apr  9 16:52:28 2007
++++ conserver/consent.c        Fri Oct 12 11:29:17 2007
+@@ -587,7 +587,8 @@ VirtDev(pCE)
        Error("[%s] tcgetattr(0): %s", pCE->server, strerror(errno));
        Bye(EX_OSERR);
      }
@@ -11,7 +11,7 @@ $OpenBSD: patch-conserver_consent_c,v 1.
      n_tio.c_iflag |= ICRNL;
      if (pCE->ixon == FLAGTRUE)
        n_tio.c_iflag |= IXON;
-@@ -536,10 +537,8 @@ VirtDev(pCE)
+@@ -595,10 +596,8 @@ VirtDev(pCE)
        n_tio.c_iflag |= IXANY;
      if (pCE->ixoff == FLAGTRUE)
        n_tio.c_iflag |= IXOFF;
Index: patches/patch-conserver_convert_c
===================================================================
RCS file: patches/patch-conserver_convert_c
diff -N patches/patch-conserver_convert_c
--- patches/patch-conserver_convert_c   2 Aug 2005 07:25:48 -0000       1.1
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,12 +0,0 @@
-$OpenBSD: patch-conserver_convert_c,v 1.1 2005/08/02 07:25:48 pvalchev Exp $
---- conserver/convert.c.orig   Thu May 27 19:08:28 2004
-+++ conserver/convert.c        Tue Aug  2 01:22:59 2005
-@@ -86,7 +86,7 @@ ReadLine2(fp, save, iLine)
-          || peek) {
-       /* If we have a previously saved line, use it instead */
-       if (save->used) {
--          strcpy(buf, save->string);
-+          strlcpy(buf, save->string, sizeof(buf));
-           BuildString((char *)0, save);
-       }
- 
Index: patches/patch-conserver_cutil_c
===================================================================
RCS file: /cvs/ports/comms/conserver/patches/patch-conserver_cutil_c,v
retrieving revision 1.2
diff -u -p -u -r1.2 patch-conserver_cutil_c
--- patches/patch-conserver_cutil_c     15 Jun 2007 11:53:39 -0000      1.2
+++ patches/patch-conserver_cutil_c     12 Oct 2007 11:15:11 -0000
@@ -1,25 +1,7 @@
 $OpenBSD: patch-conserver_cutil_c,v 1.2 2007/06/15 11:53:39 sturm Exp $
---- conserver/cutil.c.orig     Tue Nov  9 09:37:05 2004
-+++ conserver/cutil.c  Thu May 31 14:11:55 2007
-@@ -84,7 +84,7 @@ StrTime(ltime)
-     time_t tyme;
- 
-     tyme = time((time_t *)0);
--    strcpy(curtime, ctime(&tyme));
-+    strlcpy(curtime, ctime(&tyme), sizeof(curtime));
-     curtime[24] = '\000';     /* might need to adjust this at some point */
-     if (ltime != NULL)
-       *ltime = tyme;
-@@ -424,7 +424,7 @@ ReadLine(fp, save, iLine)
-          || peek) {
-       /* If we have a previously saved line, use it instead */
-       if (save->used) {
--          strcpy(buf, save->string);
-+          strlcpy(buf, save->string, sizeof(buf));
-           BuildString((char *)0, save);
-       }
- 
-@@ -2138,7 +2138,7 @@ ProbeInterfaces(bindAddr)
+--- conserver/cutil.c.orig     Tue Dec 26 07:27:34 2006
++++ conserver/cutil.c  Fri Oct 12 11:45:03 2007
+@@ -2189,7 +2189,7 @@ ProbeInterfaces(bindAddr)
  {
  #ifdef SIOCGIFCONF
      struct ifconf ifc;
@@ -28,7 +10,7 @@ $OpenBSD: patch-conserver_cutil_c,v 1.2 
  #ifdef SIOCGIFFLAGS
      struct ifreq ifrcopy;
  #endif
-@@ -2198,7 +2198,7 @@ ProbeInterfaces(bindAddr)
+@@ -2258,7 +2258,7 @@ ProbeInterfaces(bindAddr)
       * than loop through looking for valid interfaces that are up
       * twice, huh?
       */
@@ -37,7 +19,7 @@ $OpenBSD: patch-conserver_cutil_c,v 1.2 
      CONDDEBUG((1, "ProbeInterfaces(): ifc_len==%d max_count==%d",
               ifc.ifc_len, count));
  
-@@ -2217,36 +2217,37 @@ ProbeInterfaces(bindAddr)
+@@ -2277,17 +2277,18 @@ ProbeInterfaces(bindAddr)
  
      for (m = r = 0; r < ifc.ifc_len;) {
        struct sockaddr *sa;
@@ -62,6 +44,8 @@ $OpenBSD: patch-conserver_cutil_c,v 1.2 
  
        if (sa->sa_family == AF_INET) {
            struct sockaddr_in *sin = (struct sockaddr_in *)sa;
+@@ -2308,14 +2309,14 @@ ProbeInterfaces(bindAddr)
+ 
  #ifdef SIOCGIFFLAGS
            /* make sure the interface is up */
 -          ifrcopy = *ifr;
@@ -70,14 +54,16 @@ $OpenBSD: patch-conserver_cutil_c,v 1.2 
                ((ifrcopy.ifr_flags & IFF_UP) == 0))
                continue;
  #endif
+ 
            CONDDEBUG((1, "ProbeInterfaces(): name=%s addr=%s",
 -                     ifr->ifr_name, inet_ntoa(sin->sin_addr)));
 +                     ifr.ifr_name, inet_ntoa(sin->sin_addr)));
+ 
  #if HAVE_MEMCPY
            memcpy(&myAddrs[m], &(sin->sin_addr), sizeof(struct in_addr));
- #else
-           bcopy(&(sin->sin_addr), &myAddrs[m], sizeof(struct in_addr));
+@@ -2324,7 +2325,7 @@ ProbeInterfaces(bindAddr)
  #endif
+ 
            Verbose("interface address %s (%s)", inet_ntoa(myAddrs[m]),
 -                  ifr->ifr_name);
 +                  ifr.ifr_name);
Index: patches/patch-conserver_group_c
===================================================================
RCS file: /cvs/ports/comms/conserver/patches/patch-conserver_group_c,v
retrieving revision 1.2
diff -u -p -u -r1.2 patch-conserver_group_c
--- patches/patch-conserver_group_c     2 Aug 2005 07:25:48 -0000       1.2
+++ patches/patch-conserver_group_c     12 Oct 2007 11:15:11 -0000
@@ -1,7 +1,7 @@
 $OpenBSD: patch-conserver_group_c,v 1.2 2005/08/02 07:25:48 pvalchev Exp $
---- conserver/group.c.orig     Mon Oct 25 01:25:35 2004
-+++ conserver/group.c  Tue Aug  2 01:20:46 2005
-@@ -2409,7 +2409,7 @@ TelOpt(o)
+--- conserver/group.c.orig     Mon Apr  2 19:18:59 2007
++++ conserver/group.c  Fri Oct 12 12:03:25 2007
+@@ -2505,7 +2505,7 @@ TelOpt(o)
      if (o < sizeof(telopts) / sizeof(char *))
        return telopts[o];
      else {
@@ -10,39 +10,17 @@ $OpenBSD: patch-conserver_group_c,v 1.2 
        return opt;
      }
  }
-@@ -3675,13 +3675,12 @@ DoClientRead(pGE, pCLServing)
+@@ -3839,11 +3839,9 @@ DoClientRead(pGE, pCLServing)
+                                             "failed]\r\n", -1);
                                    continue;
                                }
- #  if !defined(XTABS)         /* XXX hack */
--#   define XTABS   TAB3
-+#   define XTABS   OXTAB3
- #  endif
--                              if (XTABS == (TABDLY & sbuf.c_oflag)) {
+-                              if (TAB3 == (TABDLY & sbuf.c_oflag)) {
 -                                  sbuf.c_oflag &= ~TABDLY;
 -                                  sbuf.c_oflag |= TAB0;
-+                                if (XTABS & sbuf.c_oflag) {
-+                                   sbuf.c_oflag &= ~XTABS;
-+
++                              if (TAB3 & sbuf.c_oflag) {
++                                  sbuf.c_oflag &= ~TAB3;
                                } else {
 -                                  sbuf.c_oflag &= ~TABDLY;
-                                   sbuf.c_oflag |= XTABS;
+                                   sbuf.c_oflag |= TAB3;
                                }
                                if (-1 ==
-@@ -4571,7 +4570,7 @@ Kiddie(pGE, sfd)
-       BuildString("<unknown>@", pCL->acid);
-       BuildString((char *)0, pCL->username);
-       BuildString("<unknown>", pCL->username);
--      strcpy(pCL->actym, StrTime(&(pCL->tym)));
-+      strlcpy(pCL->actym, StrTime(&(pCL->tym)), sizeof(pCL->actym));
-       pCL->typetym = pCL->tym;
- 
-       /* link into the control list for the dummy console
-@@ -4681,7 +4680,7 @@ Spawn(pGE)
-       Error("Spawn(): path to socket too long: %s", portPath->string);
-       Bye(EX_OSERR);
-     }
--    strcpy(lstn_port.sun_path, portPath->string);
-+    strlcpy(lstn_port.sun_path, portPath->string, sizeof(lstn_port.sun_path));
- 
-     /* create a socket to listen on
-      * (prepared by master so he can see the port number of the kid)
Index: patches/patch-console_console_c
===================================================================
RCS file: /cvs/ports/comms/conserver/patches/patch-console_console_c,v
retrieving revision 1.2
diff -u -p -u -r1.2 patch-console_console_c
--- patches/patch-console_console_c     2 Aug 2005 07:25:48 -0000       1.2
+++ patches/patch-console_console_c     12 Oct 2007 11:15:11 -0000
@@ -1,7 +1,7 @@
 $OpenBSD: patch-console_console_c,v 1.2 2005/08/02 07:25:48 pvalchev Exp $
---- console/console.c.orig     Mon Oct 25 09:18:20 2004
-+++ console/console.c  Thu Jun 23 23:33:26 2005
-@@ -570,7 +570,7 @@ C2Raw()
+--- console/console.c.orig     Thu Jun 15 04:01:05 2006
++++ console/console.c  Fri Oct 12 11:29:17 2007
+@@ -577,7 +577,7 @@ C2Raw()
        Bye(EX_UNAVAILABLE);
      }
      n_tios = o_tios;
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/comms/conserver/pkg/PLIST,v
retrieving revision 1.6
diff -u -p -u -r1.6 PLIST
--- pkg/PLIST   9 Aug 2004 16:27:13 -0000       1.6
+++ pkg/PLIST   12 Oct 2007 11:15:11 -0000
@@ -5,6 +5,7 @@ bin/console
 @man man/man5/conserver.passwd.5
 @man man/man8/conserver.8
 sbin/conserver
+sbin/conserver-convert
 share/examples/conserver/
 share/examples/conserver/README.OpenBSD
 share/examples/conserver/conserver.cf

----- End forwarded message -----

Reply via email to