conserver: update to version 8.3.0

version 8.3.0 (February 2, 2026):
        - Don't use `true` variable (Stanisław Pitucha <stan.pitucha@envato.com>)
        - Add VPATH to Makefile.in (saproj <saproj@gmail.com>)
        - FileUnopen: always return a valid file descriptor (Jeff Moyer <jmoyer@redhat.com>)
        - fix SEGFAULT on early exit with IPv6 enabled (Bjørn Mork <bjorn@mork.no>)
        - In AddrsMatch, keep copies of addrinfos to free. (Darren Tucker <dtucker@dtucker.net>)
        - Increase buffer size for GSSAPI exchanges (Alexander Bokovoy <abokovoy@redhat.com>)
        - Show "(inactive)" rather than an invalid pty device name for ondemand consoles that
          are closed. Show "(inactive)" rather than "(null)" for ondemand consoles that have
          never been opened. (Greg Becker <becker.greg@att.net>)
        - Prevent spy-mode clients from being promoted to the attached/writable state. (Greg Becker <becker.greg@att.net>)
        - autoconf upgrade (Jörg Sommer <joerg@jo-so.de>)
        - reinitcheck allows time units (Jacek Tomasiak <jtomasiak@arista.com>)
        - reduce level of string alloc management debug messages (Greg A. Woods <woods@robohack.ca>)
        - fix bug with parser and "#" lines, fix debug output in ParseFile()
        - Fix clobbering of breaklist and replstring (Anton Lundin <glance@ac2.se>)
        - Use strcmp() rather than strcasecmp() to compare console names when reading the config
          file and creating the list of consoles. (Greg Becker <becker.greg@att.net>)
        - Added passwordfile config option (Jason Ni <jni@hudson-trading.com>)

Drop upstreamed patches:
  002-addrsmatch-freeaddrinfo.patch
  002-fix-SEGFAULT-on-early-exit-with-IPv6-enabled.patch

Signed-off-by: Bjørn Mork <bjorn@mork.no>
This commit is contained in:
Bjørn Mork
2026-02-08 19:21:31 +01:00
committed by Hannu Nyman
parent e058c0dac3
commit 0e11c771a7
4 changed files with 3 additions and 82 deletions

View File

@@ -8,12 +8,12 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=conserver PKG_NAME:=conserver
PKG_VERSION:=8.2.7 PKG_VERSION:=8.3.0
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/conserver/conserver/tar.gz/v$(PKG_VERSION)? PKG_SOURCE_URL:=https://codeload.github.com/conserver/conserver/tar.gz/v$(PKG_VERSION)?
PKG_HASH:=b88f1880f4090b42370e075ca9c8a6062fb553ee33f155b204714c43dc71cef3 PKG_HASH:=0595d202ec6ea3b2fdf51e126cd0094959d06593635f349ba2219566978478f0
PKG_LICENSE:=BSD-3-Clause PKG_LICENSE:=BSD-3-Clause
PKG_LICENSE_FILES:=LICENSE PKG_LICENSE_FILES:=LICENSE

View File

@@ -22,7 +22,7 @@
--- a/console/Makefile.in --- a/console/Makefile.in
+++ b/console/Makefile.in +++ b/console/Makefile.in
@@ -10,7 +10,7 @@ mandir = @mandir@ @@ -11,7 +11,7 @@ mandir = @mandir@
### Installation programs and flags ### Installation programs and flags
INSTALL = @INSTALL@ INSTALL = @INSTALL@

View File

@@ -1,36 +0,0 @@
--- a/conserver/consent.c
+++ b/conserver/consent.c
@@ -1308,7 +1308,7 @@ AddrsMatch(char *addr1, char *addr2)
{
#if USE_IPV6
int error, ret = 0;
- struct addrinfo *ai1, *ai2, hints;
+ struct addrinfo *ai1, *ai2, *rp1, *rp2, hints;
#else
/* so, since we might use inet_addr, we're going to use
* (in_addr_t)(-1) as a sign of an invalid ip address.
@@ -1346,17 +1346,19 @@ AddrsMatch(char *addr1, char *addr2)
goto done;
}
- for (; ai1 != NULL; ai1 = ai1->ai_next) {
- for (; ai2 != NULL; ai2 = ai2->ai_next) {
- if (ai1->ai_addr->sa_family != ai2->ai_addr->sa_family)
+ rp1 = ai1;
+ rp2 = ai2;
+ for (; rp1 != NULL; rp1 = rp1->ai_next) {
+ for (; rp2 != NULL; rp2 = rp2->ai_next) {
+ if (rp1->ai_addr->sa_family != rp2->ai_addr->sa_family)
continue;
if (
# if HAVE_MEMCMP
- memcmp(&ai1->ai_addr, &ai2->ai_addr,
+ memcmp(&rp1->ai_addr, &rp2->ai_addr,
sizeof(struct sockaddr_storage))
# else
- bcmp(&ai1->ai_addr, &ai2->ai_addr,
+ bcmp(&rp1->ai_addr, &rp2->ai_addr,
sizeof(struct sockaddr_storage))
# endif
== 0) {

View File

@@ -1,43 +0,0 @@
From ec846dfedde7931689ff0a56be5ba75a5aefc9ea Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bj=C3=B8rn=20Mork?= <bjorn@mork.no>
Date: Mon, 5 Feb 2024 21:16:51 +0100
Subject: [PATCH] fix SEGFAULT on early exit with IPv6 enabled
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Some command line options, like e.g -V, will cause conserver
to exit before the IPv6 address variables are initialized.
Avoid the calls to freeaddrinfo() in these cases.
Signed-off-by: Bjørn Mork <bjorn@mork.no>
---
conserver/main.c | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
--- a/conserver/main.c
+++ b/conserver/main.c
@@ -53,8 +53,8 @@ int fAll = 0, fNoinit = 0, fVersion = 0,
char *pcConfig = CONFIGFILE;
int cMaxMemb = MAXMEMB;
#if USE_IPV6
-struct addrinfo *bindAddr;
-struct addrinfo *bindBaseAddr;
+struct addrinfo *bindAddr = (struct addrinfo *)0;
+struct addrinfo *bindBaseAddr = (struct addrinfo *)0;
#else
in_addr_t bindAddr = INADDR_ANY;
unsigned short bindPort;
@@ -781,8 +781,10 @@ DestroyDataStructures(void)
#if USE_IPV6
/* clean up addrinfo stucts */
- freeaddrinfo(bindAddr);
- freeaddrinfo(bindBaseAddr);
+ if ((struct addrinfo *)0 != bindAddr)
+ freeaddrinfo(bindAddr);
+ if ((struct addrinfo *)0 != bindBaseAddr)
+ freeaddrinfo(bindBaseAddr);
#else
if (myAddrs != (struct in_addr *)0)
free(myAddrs);