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
Jose Maria Blasco Comellas <ZCCBJBC@EB0UB011>
Wed, 14 Jan 1987 00:09:31 HOE
text/plain (146 lines)
Marty,
 
>   1.  You  get a  copy  of LISTSERV  FILELIST from  the  LISTSERV 191  mdisk.
>       Do this with a LINK or on LISTSERV.  (Get the REAL file).
 
Although I  myself prefer to  work directly on LISTSERV,  you can also  do that
with  the SF  command,  i.e.  TELL LISTSERV  SF  LISTSERV FILELIST  PW=storepw.
 
>       By the way -  I haven't figured out what the /F/ does  but I left it in
>       since the other entries had it...   ;-(
 
/F/ means  that this file is  a 'true' filelist. LISTSERV  allows storing files
with a  filetype of  FILELIST that  are normal  files, i.e.  they are  not part
of the LISTSERV  file system. So, you must mark  explicitly your FILELISTs with
a /F/ flag if you want them to treated as LISTSERV FILELISTs.
 
Please note  that 'normal'  files, i.e.,  files without  /F/ or  other possible
flags,  should be  shifted three  columns  to the  left to  make them  coincide
with the  header columns.  That's to say,  for normal files  the /F/  flag must
be *deleted*,  not *blanked*. I've seen  other filelists where /F/  was blanked
and  that seems  to work,  but a)  it's ugly,  and b)  it makes  some automatic
FILELIST-browsing programs to crash.
 
>       I  used some  of  the other  FILELIST  files as  models  but I  deleted
>       the *+  lines which seem to  be special definitions. You  add the files
>       you know about to the FILELIST.
 
The '*+'  lines define the  File Authorization Codes  (FACs) that will  be used
later to state  who can access or  update each file. To simplify,  you can code
 
*+ fac= userid@node full name
 
and then set  'fac' (three chars always)  on the GET or PUT  columns. You don't
need to create any FAC if the  standard ones (i.e., ALL and OWN) are sufficient
for you. You can associate a FAC to more than one user, for example
 
*+ ABC= USER1@NODE1 User1
*+ ABC= USER2@NODE2 User2
 
Then if  you code  'ABC' in  the PUT column,  only user1@node1  and user2@node2
will be able to modify the file.
 
You can also associate an entire list with a FAC:
 
*+ ABC= (NAIVE-L)
 
should create a  FAC code satisfied only  by members of NAIVE-L.  If you change
'(NAIVE-L)'  by  'Owner(NAIVE-L)',  you  are meaning  the  owners  of  NAIVE-L.
 
You can code comments into a FAC definition section:
 
*+ ABC= * This is the FAC code for the ABC group
*+ ABC= u1@N1 user1
*+ ABC= (NAIVE-L) Subscribers to list NAIVE-L
 
Those comments  will be  nicely reformatted  when sending  out the  FILELIST as
requested by an INDEX command.
 
Finally,  to store  files into  the filelist  you'll need  a password.  You can
use either a)  the storepw; b) a  personal password defined by  the PWC command
(see LISTMAST MEMO); or  c) define a local password for  use with this filelist
only, via
 
*+ ABC= PW=password
 
The password should apply to all 'members' of the FAC.
 
>   6.  Next you (or  actually the NAIVE-L list owner probably)  can use LSVPUT
>       with the PUT command to store the files for the list.  Eg.
>            LSVPUT BROOKLYN BRIDGE NAIVE-L (PUT
>       LISTSERV seems to respond with messages and/or mail as an ack.
 
You,  or the  owner of  NAIVE-L, or  whatever person  you have  defined in  the
PUT FACs.
 
>   8.  Now I  get way  out into  left field and  am pretty  sure I  am missing
>       something.  What if  you want  to add  another file?  I was  told there
>       is  a way  to put  a  'generic' entry  in  the filelist  but I  haven't
>       figured it  out. I  have had  to get  a current  copy of  the FILELIST,
>       edit it, and store it, before I could add a file.
 
I can be wrong, but I think there is no 'generic' fileid capability on LISTSERV
right  now.  Anyway,  you  can update  your  installation-customizable  LSV$PUT
EXEC. This  exec gets  control every  time a (LSV)PUT  request is  received for
an undeclared  file; you  can make  a slight  mod to  the NETINFO  exit written
by  Eric to  make LISTSERV  automatically  add an  entry to  the FILELIST  file
each time  you'll receive a put  request for an undefined  file. Anyway, you'll
have to reformat and/or comment the file from time to time.
 
Please note than  the current version of LSVPUT ignores  the filelist parameter
(i.e.,  the  third  one), so  that  by  using  LSVPUT  you cannot  expect  that
your Netinfo exit  copy be able to  recognize the filelist onto  which you want
to put the undeclared  file --> you'll probably have to ressort  to put all the
undefined files on the same filelist.
 
I've written  a command to maintain  *local* filelists which can  be called via
different  synonyms  to  specify  the  destination filelist  (it  can  also  be
separately  specified).  I  have  not  finished   the  docs,  but  I  can  send
it if you want (and to anybody interested, by the way).
 
>       WARNING:  Whenever  you  "GET"  a  copy of  a  LISTSERV  FILELIST  file
>       with  the  GET command,  you  should  DELETE  the "HARDFAC  FILE"  info
>       (lines  between  and  including  the  * ::::::  ...  lines).  It  seems
 
You  should *never*  use GET  to  get a  FILELIST  for storing  it back  later.
You  can use  SF  or modify  directly  from  LISTSERV. Note  that  part of  the
file  *is* important  (i.e., the  FAC section),  and it  gets reformatted  when
it is  sent out as  a result of  GET, so that  you'll loose all  the attributes
and cause probable 'internal errors' later.
 
>       won't  have that  problem. But  I generally  never shut  LISTSERV down.
 
Note  that you  don't have  to  shut down  LISTSERV  to update  files from  it,
you can use the Xedit and CMS commands.
 
>       You  do NOT  have to  update FILEID  if you  want LISTSERV  to generate
>       a  "true  file name"  for  you.  LISTSERV  will automatically  add  the
>       entry.  Eg.  If   you  add  FREE  LUNCHES  to   the  NAIVE-L  FILELIST,
>       put  the FILELIST  file back,  then  LSVPUT FREE  LUNCHES NAIVE-L  (PUT
>       then  LISTSERV  will file  it  as  "00000001  NAIVE-L  L1" and  add  an
>       entry  to  FILEID.  Because  Eric  made  this  automatic  I  figure  he
>       may have easier ways to update NAIVE-L FILELIST too...
 
You  can also  force LISTSERV  to assign  'true filenames',  as you  call them,
identical to  the name of the  file as it  was sent, by modifying  your NAIVE-L
FILEID file in the second line:
 
*DEFAULT* L1 MYEXEC
 
where  MYEXEC is  an exec  which  will be  automatically called  each time  the
file is GET,  PUT, AFDed, etc. Your  exec will receive control  with a parmlist
you can parse with the following instruction:
 
  Parse arg ,reqtype origin filelist xfn xft xfm '*'dataline
 
where  reqtype can  be GET1,  GET2,  PUT1, PUT2  and others,  depending on  the
command beeing processed (there are two versions of almost each command because
your exit  will be  called twice, before  and after the  file has  been stored/
sent/whatever). Your exec will be called after the FACs are validated,
so that you  don't have to worry  about security problems. An  important use of
this  feature  is to  write  a  simple exit  that  contains  only an  'Exit  0'
statement:  this will  force LISTSERV  to store  each file  under the  filename
it  had when  it was  sent, thus  allowing a  direct LINK  to your  L disk  :-)
 
Jose Maria

ATOM RSS1 RSS2