Bug#1033449: unblock: fbb/7.011-2
Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock
X-Debbugs-Cc: fbb@packages.debian.org, Debian Hamradio Maintainers <debian-hams@lists.debian.org>
Control: affects -1 + src:fbb
Please unblock package fbb. The new version fixes a segfault when
listing subdirectories. (Closes: #1032223)
The diff is unfortunately quite noisy since different quilt flags were
used when refreshing the patch where the bug was in. The effective
interdiff is this:
+Index: fbb-7.011/src/ibm.c
+===================================================================
+--- fbb-7.011.orig/src/ibm.c
++++ fbb-7.011/src/ibm.c
-@@ -205,13 +204,10 @@
+@@ -205,13 +204,13 @@ void format_ffblk (struct ffblk *blk, st
else
sprintf (filename, "%s/%s", blk->ff_base, dir->d_name);
- ret = lstat (filename, &st);
--
++ lstat (filename, &st);
+
if (S_ISLNK (st.st_mode))
{
/* printf ("link\n"); */
blk->ff_attrib |= FA_LINK;
- ret = stat (filename, &st);
++ stat (filename, &st);
if (S_ISDIR (st.st_mode))
{
blk->ff_attrib |= FA_DIREC;
I.e. the original patch mistakenly removed lstat, and the new patch
restores it to the original place. "ret" is dropped since the code
doesn't use it.
[ Checklist ]
[x] all changes are documented in the d/changelog
[x] I reviewed all changes and I approve them
[x] attach git diff against the package in testing
unblock fbb/7.011-2
Christoph
diff --git a/debian/changelog b/debian/changelog
index 313edc3..4620c2c 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,11 @@
+fbb (7.011-2) unstable; urgency=medium
+
+ * Team upload.
+ * Address segfault when listing subdirectories (Closes: #1032223)
+ Thank you to Mike Quin for the bug report and patch.
+
+ -- tony mancill <tmancill@debian.org> Sun, 05 Mar 2023 09:53:13 -0800
+
fbb (7.011-1) unstable; urgency=medium
* Team upload.
diff --git a/debian/patches/05-fix-compile-warnings b/debian/patches/05-fix-compile-warnings
index 485541e..0e87f45 100644
--- a/debian/patches/05-fix-compile-warnings
+++ b/debian/patches/05-fix-compile-warnings
@@ -1,9 +1,14 @@
-Fix trivial compiler warnings, mostly unused vars
+Description: Fix trivial compiler warnings, mostly unused vars
+ Thank you to Mike Quin for patching the patch.
+ See: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1032223
Author: Colin Tuckley colint@debian.org
+Last-Update: 2023-03-02
---- a/src/console.c
-+++ b/src/console.c
-@@ -254,7 +254,6 @@
+Index: fbb-7.011/src/console.c
+===================================================================
+--- fbb-7.011.orig/src/console.c
++++ fbb-7.011/src/console.c
+@@ -254,7 +254,6 @@ void connect_fen (void)
void winputs (int voie, int attr, char *ptr)
{
@@ -11,7 +16,7 @@ Author: Colin Tuckley colint@debian.org
int header;
if (attr == -1)
-@@ -265,7 +264,6 @@
+@@ -265,7 +264,6 @@ void winputs (int voie, int attr, char *
else
header = 0;
@@ -19,9 +24,11 @@ Author: Colin Tuckley colint@debian.org
window_write (voie, ptr, strlen (ptr), attr, header);
}
---- a/src/drv_mod.c
-+++ b/src/drv_mod.c
-@@ -575,11 +575,6 @@
+Index: fbb-7.011/src/drv_mod.c
+===================================================================
+--- fbb-7.011.orig/src/drv_mod.c
++++ fbb-7.011/src/drv_mod.c
+@@ -575,11 +575,6 @@ int lit_port_modem (int port)
ioctl (ptrcom->comfd, TIOCMGET, &mcs);
con = (mcs & TIOCM_CAR) ? 1 : 0;
@@ -33,7 +40,7 @@ Author: Colin Tuckley colint@debian.org
if ((svoie[voie]->sta.connect > 1) && (svoie[voie]->sta.connect < 17) && (!con))
{
md_no_echo (voie);
-@@ -851,10 +846,12 @@
+@@ -851,10 +846,12 @@ int lit_port_modem (int port)
con = (nstat & 0x80) ? 1 : 0;
#endif
@@ -46,9 +53,11 @@ Author: Colin Tuckley colint@debian.org
if ((svoie[voie]->sta.connect > 1) && (svoie[voie]->sta.connect < 17) && (!con))
{
---- a/src/fwdovl5.c
-+++ b/src/fwdovl5.c
-@@ -737,14 +737,9 @@
+Index: fbb-7.011/src/fwdovl5.c
+===================================================================
+--- fbb-7.011.orig/src/fwdovl5.c
++++ fbb-7.011/src/fwdovl5.c
+@@ -737,14 +737,9 @@ void init_part (void)
}
else
{
@@ -63,9 +72,11 @@ Author: Colin Tuckley colint@debian.org
if (jour < 0)
jour += 31;
if (jour > 15)
---- a/src/ibm.c
-+++ b/src/ibm.c
-@@ -190,7 +190,6 @@
+Index: fbb-7.011/src/ibm.c
+===================================================================
+--- fbb-7.011.orig/src/ibm.c
++++ fbb-7.011/src/ibm.c
+@@ -190,7 +190,6 @@ int getftime (int fd, struct ftime *ft)
void format_ffblk (struct ffblk *blk, struct dirent *dir)
{
@@ -73,23 +84,27 @@ Author: Colin Tuckley colint@debian.org
int year;
struct stat st;
struct tm *tm;
-@@ -205,13 +204,10 @@
+@@ -205,13 +204,13 @@ void format_ffblk (struct ffblk *blk, st
else
sprintf (filename, "%s/%s", blk->ff_base, dir->d_name);
- ret = lstat (filename, &st);
--
++ lstat (filename, &st);
+
if (S_ISLNK (st.st_mode))
{
/* printf ("link\n"); */
blk->ff_attrib |= FA_LINK;
- ret = stat (filename, &st);
++ stat (filename, &st);
if (S_ISDIR (st.st_mode))
{
blk->ff_attrib |= FA_DIREC;
---- a/src/init_tnc.c
-+++ b/src/init_tnc.c
-@@ -26,7 +26,7 @@
+Index: fbb-7.011/src/init_tnc.c
+===================================================================
+--- fbb-7.011.orig/src/init_tnc.c
++++ fbb-7.011/src/init_tnc.c
+@@ -26,7 +26,7 @@ int inittnc (void)
{
FILE *fpinit;
char s[80];
@@ -98,7 +113,7 @@ Author: Colin Tuckley colint@debian.org
int d_init;
int lig, col, i, ok;
int ok_init[NBPORT];
-@@ -223,7 +223,6 @@
+@@ -223,7 +223,6 @@ int inittnc (void)
#endif
while (1)
{
@@ -106,9 +121,11 @@ Author: Colin Tuckley colint@debian.org
tncstr (port, "*", 0);
sleep_ (1);
tncstr (port, "\021\030\003", 0);
---- a/src/k_tasks.c
-+++ b/src/k_tasks.c
-@@ -422,7 +422,7 @@
+Index: fbb-7.011/src/k_tasks.c
+===================================================================
+--- fbb-7.011.orig/src/k_tasks.c
++++ fbb-7.011/src/k_tasks.c
+@@ -422,7 +422,7 @@ static void fbb_timer (void)
static long bprec = -1;
long bt;
FbbTimer *tt;
@@ -117,7 +134,7 @@ Author: Colin Tuckley colint@debian.org
long delta;
bt = btime ();
-@@ -434,7 +434,7 @@
+@@ -434,7 +434,7 @@ static void fbb_timer (void)
bprec = bt;
tt = timer_head;
@@ -126,7 +143,7 @@ Author: Colin Tuckley colint@debian.org
while (tt)
{
-@@ -460,7 +460,7 @@
+@@ -460,7 +460,7 @@ static void fbb_timer (void)
}
else
{
@@ -135,9 +152,11 @@ Author: Colin Tuckley colint@debian.org
tt = tt->next;
}
}
---- a/src/mbl_impo.c
-+++ b/src/mbl_impo.c
-@@ -550,10 +550,7 @@
+Index: fbb-7.011/src/mbl_impo.c
+===================================================================
+--- fbb-7.011.orig/src/mbl_impo.c
++++ fbb-7.011/src/mbl_impo.c
+@@ -550,10 +550,7 @@ int copy_mess (long numero, char *chaine
}
else
{
@@ -148,9 +167,11 @@ Author: Colin Tuckley colint@debian.org
sprintf (temp, "%s\r\rOriginal to %s@%s\r\r%c",
last_header, pbul->desti, pbul->bbsv, car_fin);
---- a/src/mbl_read.c
-+++ b/src/mbl_read.c
-@@ -804,13 +804,11 @@
+Index: fbb-7.011/src/mbl_read.c
+===================================================================
+--- fbb-7.011.orig/src/mbl_read.c
++++ fbb-7.011/src/mbl_read.c
+@@ -804,13 +804,11 @@ static void trans_header (char *ptr, cha
static char *read_headers(long date)
{
@@ -164,9 +185,11 @@ Author: Colin Tuckley colint@debian.org
*bbs = '\0';
if ((fptr = ouvre_mess (O_TEXT, ptemp->nmess, '\0')) != NULL)
---- a/src/mbl_sys.c
-+++ b/src/mbl_sys.c
-@@ -260,7 +260,7 @@
+Index: fbb-7.011/src/mbl_sys.c
+===================================================================
+--- fbb-7.011.orig/src/mbl_sys.c
++++ fbb-7.011/src/mbl_sys.c
+@@ -260,7 +260,7 @@ char *snd_passwd (char *chaine)
unsigned ds, dss;
char indic[80];
char buffer[300];
@@ -175,7 +198,7 @@ Author: Colin Tuckley colint@debian.org
FILE *fptr;
int first = 1;
-@@ -270,7 +270,6 @@
+@@ -270,7 +270,6 @@ char *snd_passwd (char *chaine)
{
while (fgets (buffer, 300, fptr))
{
@@ -183,9 +206,11 @@ Author: Colin Tuckley colint@debian.org
ptr = buffer;
if ((!isgraph (*buffer)) || (*buffer == '#'))
continue;
---- a/src/mbl_user.c
-+++ b/src/mbl_user.c
-@@ -397,7 +397,7 @@
+Index: fbb-7.011/src/mbl_user.c
+===================================================================
+--- fbb-7.011.orig/src/mbl_user.c
++++ fbb-7.011/src/mbl_user.c
+@@ -397,7 +397,7 @@ int page_connect (char port, FILE * fptr
{
#define TBUF 20
long pos, nbc = MAXSTAT;
@@ -194,7 +219,7 @@ Author: Colin Tuckley colint@debian.org
unsigned char valport;
statis buffstat[TBUF];
char valcall[8];
-@@ -429,7 +429,6 @@
+@@ -429,7 +429,6 @@ int page_connect (char port, FILE * fptr
}
--nbrec;
pvoie->noenr_menu -= (long) sizeof (statis);
@@ -202,9 +227,11 @@ Author: Colin Tuckley colint@debian.org
if (strmatch (buffstat[nbrec].indcnx, pvoie->ch_temp))
{
/* test de la validite du port */
---- a/src/pacsat.c
-+++ b/src/pacsat.c
-@@ -453,7 +453,6 @@
+Index: fbb-7.011/src/pacsat.c
+===================================================================
+--- fbb-7.011.orig/src/pacsat.c
++++ fbb-7.011/src/pacsat.c
+@@ -453,7 +453,6 @@ static uchar send_pfh (int dirent, int b
*/
static int req_dir (char *callsign)
{
@@ -212,7 +239,7 @@ Author: Colin Tuckley colint@debian.org
ushort block_size;
struct stuser *user;
struct sthole *hole;
-@@ -461,7 +460,6 @@
+@@ -461,7 +460,6 @@ static int req_dir (char *callsign)
int i;
i = HDRSIZE;
@@ -220,7 +247,7 @@ Author: Colin Tuckley colint@debian.org
i += 1;
memcpy (&block_size, &rkss[i], 2);
i += 2;
-@@ -1162,7 +1160,7 @@
+@@ -1162,7 +1160,7 @@ static int pfh_msg (FILE * fpth, long nu
FILE *fptm;
int fd_msg;
int fd_pfh;
@@ -229,7 +256,7 @@ Author: Colin Tuckley colint@debian.org
uchar buf[4096];
if (fpth)
-@@ -1182,7 +1180,6 @@
+@@ -1182,7 +1180,6 @@ static int pfh_msg (FILE * fpth, long nu
crc = 0;
tot = 0;
@@ -237,7 +264,7 @@ Author: Colin Tuckley colint@debian.org
lgbuf = sizeof (buf);
for (;;)
-@@ -1191,7 +1188,7 @@
+@@ -1191,7 +1188,7 @@ static int pfh_msg (FILE * fpth, long nu
if (nb <= 0)
break;
if (fd_pfh)
@@ -246,9 +273,11 @@ Author: Colin Tuckley colint@debian.org
for (i = 0; i < nb; i++)
{
crc += buf[i];
---- a/src/xmodem.c
-+++ b/src/xmodem.c
-@@ -644,13 +644,11 @@
+Index: fbb-7.011/src/xmodem.c
+===================================================================
+--- fbb-7.011.orig/src/xmodem.c
++++ fbb-7.011/src/xmodem.c
+@@ -644,13 +644,11 @@ void kill_rzsz (int voie)
static void sig_child (int sig)
{
@@ -262,9 +291,11 @@ Author: Colin Tuckley colint@debian.org
for (voie = 0; voie < NBVOIES; voie++)
{
---- a/src/xfbbd.c
-+++ b/src/xfbbd.c
-@@ -355,13 +355,12 @@
+Index: fbb-7.011/src/xfbbd.c
+===================================================================
+--- fbb-7.011.orig/src/xfbbd.c
++++ fbb-7.011/src/xfbbd.c
+@@ -356,13 +356,12 @@ void InfoMessage (int temps, char *texte
void WinDebug (char *fmt,...)
{
va_list argptr;
@@ -279,9 +310,11 @@ Author: Colin Tuckley colint@debian.org
va_end (argptr);
}
/*
---- a/src/gesfic.c
-+++ b/src/gesfic.c
-@@ -40,6 +40,8 @@
+Index: fbb-7.011/src/gesfic.c
+===================================================================
+--- fbb-7.011.orig/src/gesfic.c
++++ fbb-7.011/src/gesfic.c
+@@ -40,6 +40,8 @@ extern unsigned int _openfd[];
int fbb_open (char *filename, int acces, unsigned mode);
Reply to: