From 3506f477d557558cf4fd7da26126b8580221d08e Mon Sep 17 00:00:00 2001 From: Michiel Broek Date: Fri, 16 Jul 2004 20:07:46 +0000 Subject: [PATCH] Prepared Add_BBS function for un_attach --- mbfido/Makefile | 2 +- mbfido/addbbs.c | 35 +++++++++++++++++++++++------------ 2 files changed, 24 insertions(+), 13 deletions(-) diff --git a/mbfido/Makefile b/mbfido/Makefile index 14069c13..60e8911c 100644 --- a/mbfido/Makefile +++ b/mbfido/Makefile @@ -124,7 +124,7 @@ depend: # DO NOT DELETE THIS LINE - MAKE DEPEND RELIES ON IT # Dependencies generated by make depend -addbbs.o: ../config.h ../lib/mbselib.h ../lib/users.h ../lib/mbsedb.h tic.h fsort.h addbbs.h +addbbs.o: ../config.h ../lib/mbselib.h ../lib/users.h ../lib/mbsedb.h tic.h fsort.h qualify.h addbbs.h backalias.o: ../config.h ../lib/mbselib.h ../lib/users.h ../lib/mbsedb.h backalias.h flock.o: ../config.h ../lib/mbselib.h flock.h hatch.o: ../config.h ../lib/mbselib.h ../lib/users.h ../lib/mbsedb.h utic.h rollover.h hatch.h diff --git a/mbfido/addbbs.c b/mbfido/addbbs.c index c9a0f982..e36b6a14 100644 --- a/mbfido/addbbs.c +++ b/mbfido/addbbs.c @@ -34,6 +34,7 @@ #include "../lib/mbsedb.h" #include "tic.h" #include "fsort.h" +#include "qualify.h" #include "addbbs.h" @@ -55,6 +56,7 @@ int Add_BBS() char temp1[PATH_MAX], temp2[PATH_MAX], *fname, *lname, *p; fd_list *fdl = NULL; struct _fdbarea *fdb_area = NULL; + qualify *tmpq; /* * First check for an existing record with the same filename, @@ -273,20 +275,29 @@ int Add_BBS() */ if (DidDelete) { if ((fdb_area = mbsedb_OpenFDB(tic.FileArea, 30))) { - while (fread(&fdb, fdbhdr.recsize, 1, fdb_area->fp) == 1) - if (fdb.Deleted) { - sprintf(temp2, "%s/%s", area.Path, fdb.LName); - if (unlink(temp2) != 0) - WriteError("$Can't unlink file %s", temp2); - sprintf(temp2, "%s/%s", area.Path, fdb.Name); - if (unlink(temp2) != 0) - WriteError("$Can't unlink file %s", temp2); - sprintf(temp2, "%s/.%s", area.Path, fdb.Name); - unlink(temp2); /* Thumbnail, no logging if there is an error */ - } + while (fread(&fdb, fdbhdr.recsize, 1, fdb_area->fp) == 1) { + if (fdb.Deleted) { + sprintf(temp2, "%s/%s", area.Path, fdb.LName); + if (unlink(temp2) != 0) + WriteError("$Can't unlink file %s", temp2); + sprintf(temp2, "%s/%s", area.Path, fdb.Name); + /* + * With the path to the 8.3 name, we can check if this file + * is attached for any possible downlink. + * We must get the qualify list passed so we have a quick systems list. + */ + + + + if (unlink(temp2) != 0) + WriteError("$Can't unlink file %s", temp2); + sprintf(temp2, "%s/.%s", area.Path, fdb.Name); + unlink(temp2); /* Thumbnail, no logging if there is an error */ + } mbsedb_PackFDB(fdb_area); mbsedb_CloseFDB(fdb_area); - DidDelete = FALSE; + DidDelete = FALSE; + } } }