LSTSRV-L Archives

LISTSERV Site Administrators' Forum

LSTSRV-L

Options: Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Topic: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Bill Gruber <[log in to unmask]>
Mon, 14 Aug 1995 19:10:23 EDT
text/plain (84 lines)
OK, assuming VM, as you said:
On Mon, 14 Aug 1995 17:42:54 EDT David M. Rosenberg said:
 
>Assuming that notebooks were turned on during the testing period, how could
>they be wiped out so that no one can retrieve either the notebooks (via GET)
>or the individual postings (via the database facility)?
 
You just have to erase them.  LSVPUT <listname> LOGnnnn (DELETE
will accomplish that rather nicely - will even refresh the database.
 
>Complicating things a bit more, assume that a list is current in service and
>an inappropriate message (e.g. an undetected spam) is posted. How could the
>list owner (or, if necessary, the local LISTSERV postmaster) ...
 
>1. Prevent that message from appearing in the current digest (assuming the
>that no digest has been sent out since the inappropriate message was posted?
 
Very tricky.  You need to have write access to the <listname> DIGEST file.
The only reasonable way for the list owner to do this is to have the digest
on the Shared File System, since SFS allows concurrent write accesses.  The
good thing is that the list header can specify the location of the digests,
so perhaps a special area can be set up for you.
 
In that case, you would:
 
- TELL LISTSERV HOLD <listname>     (prevent digest/index updates attempts
  while you are editing)
 
- ACCESS the SFS directory.
 
- Edit out the offending message CAREFULLY (i.e. make sure the lines that
  separate messages are correct) from the <listname> DIGEST file.
  If the unwanted message is the ONLY thing in the digest, just erase the
  file.
 
- File the digest file back.
 
- Edit <listname> INDEX file.  Remove the single line in question.
  If it's the only thing in the index file, just erase the index file.
  Don't touch anything else in there - there are unprintables in this file!
 
- File the index file back.
 
- TELL LISTSERV FREE <listname>
 
If the list's digest is on an mdisk, or even worse, on an mdisk used for
other things too, like (shudder) LISTSERV's 191, hokey things can be done
like defining the DIGEST and INDEX file in the filelist with owner access,
or even nutty EXECs which LISTSERV can run for you, but you had better have
a *really* cooperative LISTSERV maintainer and really know what you are
doing.
 
(Just to be complete:
Technically there's an entry made in DIGESTS FILE on LISTSERV's 191 disk
when LISTSERV detects a new digest has started.  List owners can't change
that file, but LISTSERV seems smart enough to ignore thet entry if no digest
is found to distribute when the time comes.  There is a potential problem
however, if you totally erase a digest/index and LISTSERV tries to start a
new digest before the old one would have been distributed.  In that case the
DIGESTS FILE has a duplicate entry causing somewhat unpredictable results.
So just don't say I didn't warn you :-))
 
>2. Prevent that message from appearing in the current index ...
 
Same procedure as #1 above.
 
>3. Remove that message from the notebook in which it appears?
 
- HOLD the list if it's the current period's notebook.
- GET the notebook in question.
- Edit it out of the notebook.
- LSVPUT it back
- FREE the list
 
>4. Prevent that message from being found or retrieved through the database
>facility?
 
Same procedure as in #3 above.
LISTSERV refreshes the database for you when you LSVPUT the notebook back.
 
Bill Gruber
LISTSERV maintainer
City University of New York Computer Center

ATOM RSS1 RSS2