home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1993 #3 / NN_1993_3.iso / spool / vmsnet / sources / 496 < prev    next >
Encoding:
Internet Message Format  |  1993-01-25  |  47.3 KB

  1. Path: sparky!uunet!cs.utexas.edu!usc!news.service.uci.edu!unogate!mvb.saic.com!vmsnet-sources
  2. Newsgroups: vmsnet.sources
  3. From: "Andy, Systems Manager" <UDAA055@ELM.CC.KCL.AC.UK>
  4. Subject: VMS_SHARE V8.2, part 06/09
  5. Message-ID: <10312308@MVB.SAIC.COM>
  6. Date: Mon, 25 Jan 1993 21:34:44 GMT
  7. Lines: 1356
  8. Followup-To: vmsnet.sources.d
  9. Approved: Mark.Berryman@Mvb.Saic.Com
  10.  
  11. Submitted-by: "Andy, Systems Manager" <UDAA055@ELM.CC.KCL.AC.UK>
  12. Posting-number: Volume 4, Issue 50
  13. Archive-name: vms_share/part06
  14. Supersedes: vms_share: Volume 3, Issue 87-89
  15.  
  16. -+-+-+-+-+-+-+-+ START OF PART 6 -+-+-+-+-+-+-+-+
  17. V`20option`20is`20selected,
  18. Xin`20which`20case`20VMS`205.4`20is`20the`20minimum`20release`20needed.
  19. X
  20. X
  21. X
  22. X8.`20PREVIOUS`20RELEASE`20NOTES
  23. X
  24. XRelease`20notes`20for`20previous`20versions`20are`20appended`20at`20the`20end.
  25. V`20These`20give`20
  26. Xdetails`20of`20changes`20and`20bug`20fixes`20for`20those`20versions.
  27. X`0C
  28. X`20`20`20`20`20`20`20`20`09`09`09V`20M`20S`20_`20S`20H`20A`20R`20E
  29. X
  30. X`20`20`20`20`09`09`09`20`20`20R`20E`20L`20E`20A`20S`20E`20`20`20N`20`20O`20T
  31. V`20E`20S
  32. X
  33. X
  34. X`20`20`20`20`09`09`09`09`09`09`09`09Version`208.0
  35. X`20`20`20`20`09`09`09`09`09`09`09`09Sep`201992
  36. X
  37. X
  38. X1.`20INTRODUCTION
  39. X
  40. XVersion`208.0`20of`20VMS_SHARE`20is`20a`20major`20release.`20It`20introduces
  41. V`20some`20new`20features
  42. Xfor`20users`20and`20fixes`20several`20bugs.
  43. X
  44. X
  45. X
  46. X2.`20NEW`20FEATURES
  47. X
  48. XThe`20following`20new`20features`20are`20included.
  49. X
  50. X2.1`20`20Parameters`20and`20Qualifiers`20on`20Command`20Line
  51. X
  52. XMost`20VMS_SHARE`20options`20and`20parameters`20can`20now`20be`20supplied`20di
  53. Vrectly`20on`20the
  54. Xcommand`20line.`20The`20logical`20names`20previously`20used`20to`20modify`20de
  55. Vfaults`20are`20still
  56. Xaccepted`20and`20behave`20as`20before`20but`20the`20use`20of`20a`20command`20l
  57. Vine`20qualifier`20to`20set`20a
  58. Xvalue`20overrides`20that`20set`20by`20the`20logical`20name.
  59. X
  60. XNew`20command`20line`20format:
  61. X
  62. X`20`20$`20VMS_SHARE`20`20files`20`20sharefile`20`5Bqualifiers`5D
  63. X
  64. Xwhere`20qualifiers`20can`20be`20any`20or`20all`20of:
  65. X
  66. X`20`20/COMPRESS`09Turns`20on`20the`20run-length`20compression`20option.`20Shou
  67. Vld`20be`20used
  68. X`09`09with`20caution`20as`20it`20can`20take`20considerably`20longer`20to`20enc
  69. Vode`20the
  70. X`09`09files.`20/NOCOMPRESS`20turns`20off`20compression`20and`20overrides`20the
  71. V
  72. X`09`09new`20SHARE_COMPRESS`20logical`20name.`20See`20the`20separate`20paragrap
  73. Vh
  74. X`09`09on`20this`20below.
  75. X
  76. X`20`20/DEBUG`5B=n`5D`09Turn`20on`20extensive`20debugging`20messages.`20/NODEBU
  77. VG`20turns`20off`20the
  78. X`09`09messages`20and`20overrides`20the`20new`20SHARE_DEBUG`20logical`20name.
  79. V`20See
  80. X`09`09the`20separate`20paragraph`20on`20this`20below.
  81. X
  82. X`20`20/LOG`09`09Turn`20on`20informational`20logging`20messages.`20Note`20that
  83. V`20some`20messages
  84. X`09`09used`20to`20appear`20by`20default.`20This`20is`20no`20longer`20the`20cas
  85. Ve.`20To`20be
  86. X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20consistent`20with`20the`20rest
  87. V`20of`20VMS,`20messages`20are`20off`20by`20default.
  88. X`09`09/NOLOG`20will`20turn`20off`20messages`20and`20override`20the`20SHARE_LOG
  89. V
  90. X`09`09logical`20name.
  91. X
  92. X`20`20/LONGLINES`20`20`20`20Allows`20the`20packaging`20of`20files`20with`20rec
  93. Vords`20longer`20than`20960
  94. X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20characters`20(the`20limit`20in
  95. V`20older`20versions`20of`20TPU).`20However,`20this
  96. X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20is`20only`20allowed`20if`20run
  97. Vning`20on`20a`20version`20of`20VMS`20which`20is`205.4`20or
  98. X`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20`20later.`20/NOLONGLINES`20will
  99. V`20disable`20the`20long`20line`20support`20and
  100. X`09`09override`20the`20new`20SHARE_LONGLINES`20logical`20name.`20See`20the
  101. X`09`09separate`20paragraph`20on`20this`20below.
  102. X
  103. X`20`20/PACKAGE_INDEX`5B=suffix`5D
  104. X`09`09Creates`20a`20package`20file,`20suitable`20for`20use`20by`20file`20serve
  105. Vrs,
  106. X`09`09listing`20the`20filenames`20of`20each`20part`20created.`20/NOPACKAGE_IND
  107. VEX
  108. X`09`09will`20disable`20the`20creation`20of`20this`20file,`20overriding`20the
  109. V`20new
  110. X`09`09SHARE_PACKAGE_INDEX`20logical`20name.`20The`20optional`20suffix`20value
  111. X`09`09specifies`20the`20file`20type`20given`20to`20the`20created`20file.`20See
  112. V`20the
  113. X`09`09separate`20paragraph`20on`20this`20below.
  114. X
  115. X`20`20/PART_SIZE=nn`09Specifies`20the`20part`20size`20to`20be`20generated.`20O
  116. Vverrides`20the
  117. X`09`09SHARE_PART_SIZE`20logical`20name.
  118. X
  119. X
  120. XQualifiers`20may`20appear`20anywhere`20in`20the`20command`20line`20(although,
  121. V`20because`20VMS_SHARE
  122. Xis`20a`20DCL`20procedure,`20they`20may`20not`20appear`20directly`20after`20the
  123. V`20command`20verb!).
  124. X
  125. X
  126. X
  127. X2.2`20Support`20for`20Various`20Record`20Formats
  128. X
  129. XThis`20version`20introduces`20support`20for`20various`20record`20formats,`20in
  130. Vcluding`20VARIABLE
  131. Xlength`20records`20with`20all`20the`20carriage`20control`20options,`20FIXED
  132. V`20length`20records`20of
  133. Xany`20size`20up`20to`20the`20maximum`20supported`20record`20length,`20and`20ea
  134. Vch`20of`20the`20STREAM
  135. Xrecord`20formats.
  136. X
  137. XPrevious`20versions`20have`20supported`20only`20those`20files`20with`20a`20var
  138. Viable`20length`20record
  139. Xformat`20and`20CR`20Carriage`20control`20attributes`20(the`20standard`20file
  140. V`20type`20created`20by
  141. XTPU`20when`20it`20writes`20a`20file).
  142. X
  143. XThis`20mechanism`20is`20implemented`20by`20recording`20the`20file`20attributes
  144. V`20in`20the`20share
  145. Xfile,`20and`20passing`20them`20to`20the`20CONVERT`20utility`20for`20processing
  146. V`20once`20the`20file`20has
  147. Xbeen`20decoded`20and`20written`20out`20in`20its`20normal`20variable`20length
  148. V`20format.
  149. X
  150. XUsing`20this`20facility,`20it`20is`20now`20practical`20to`20directly`20package
  151. V`20.OBJ`20and`20.EXE
  152. Xfiles;`20if`20the`20long`20line`20support`20is`20selected,`20it`20is`20possibl
  153. Ve`20to`20directly`20package
  154. Xbackup`20savesets,`20thus`20allowing`20any`20type`20of`20file`20to`20be`20pack
  155. Vaged.`20`20BACKUP
  156. Xrequires`20a`20minimum`20/BLOCK_SIZE`20specification`20of`202048,`20which`20in
  157. V`20turn`20requires
  158. Xthe`20long`20lines`20support.`20Therefore`20this`20is`20possible`20only`20with
  159. V`20VMS`205.4`20or`20later
  160. Xat`20both`20the`20creation`20and`20the`20unpacking`20ends.`20See`20the`20parag
  161. Vraph`20on`20long`20lines
  162. Xsupport`20below.
  163. X
  164. X`5BThanks`20go`20to`20Mark`20Pizzolato`20-`20mark@infocomm.com`20-`20for`20thi
  165. Vs`20suggestion`5D
  166. X
  167. X
  168. X2.3`20Optional`20Run-Length`20Encoding`20of`20Files
  169. X
  170. XFor`20files`20which`20contain`20long`20runs`20of`20similar`20characters,`20the
  171. V`20new`20run-length
  172. Xencoding`20facility`20may`20be`20of`20help`20in`20reducing`20the`20size`20of
  173. V`20the`20share`20files.`20A
  174. Xsimple`20algorithm`20is`20applied`20to`20the`20files`20so`20that`20runs`20of
  175. V`206`20or`20more`20characters
  176. Xare`20compressed`20to`20a`205`20character`20sequence`20thus:
  177. X
  178. X`20`20`20`20`26nnZZ
  179. X
  180. Xwhere`20"`26"`20is`20a`20new`20flag`20character`20that`20introduces`20a`20run-
  181. Vlength`20compression
  182. Xsequence,`20"nn"`20is`20the`20length`20count`20as`20a`202-digit`20hex`20number
  183. V,`20and`20"ZZ"`20is`20the
  184. X2-digit`20hex`20encoding`20of`20the`20repeated`20character's`20ASCII`20code.
  185. V`20`20Although`20the
  186. Xminimum`20run`20length`20is`206`20before`20compression`20is`20applied,`20a`20s
  187. Vpecial`20check`20is`20made
  188. Xfor`20a`20run`20of`202`20or`20more`20characters`20that`20would`20ordinarily
  189. V`20be`20quoted`20in`20the
  190. Xexisting`20form`20of:
  191. X
  192. X`20`20`20`20`60ZZ
  193. X
  194. Xas`20this`20results`20in`20a`20smaller`20sequence`20of`20characters.
  195. X
  196. XBecause`20this`20feature`20can`20be`20time`20consuming,`20it`20is`20optional.
  197. V`20The`20normal`20default
  198. Xis`20NOCOMPRESS.`20A`20new`20logical`20name`20SHARE_COMPRESS`20may`20be`20defi
  199. Vned`20to`20alter`20the
  200. Xdefault.`20`20The`20/`5BNO`5DCOMPRESS`20qualifier`20on`20the`20command`20line
  201. V`20may`20be`20used`20to
  202. Xoverride`20the`20default.
  203. X
  204. X`5BThanks`20go`20to`20Mark`20Pizzolato`20-`20mark@infocomm.com`20-`20for`20thi
  205. Vs`20suggestion`5D
  206. X
  207. X
  208. X2.4`20Long`20Lines`20Option
  209. X
  210. XVMS_SHARE`20now`20supports`20files`20with`20record`20lengths`20up`20to`2065535
  211. V`20bytes.`20This`20is`20due
  212. Xto`20the`20later`20versions`20of`20TPU`20(since`20VMS`205.4)`20supporting`20mu
  213. Vch`20longer`20records.
  214. XOlder`20versions`20of`20TPU`20restricted`20the`20maximum`20line`20lengths`20to
  215. V`20960`20bytes.
  216. X
  217. XIn`20order`20to`20maintain`20compatibility,`20TPU`20uses`20the`20old`20length
  218. V`20of`20960`20as`20the
  219. Xmaximum`20record`20length`20by`20default.`20The`20new`20/LONGLINES`20qualifier
  220. V`20requests`20that
  221. Xthe`20long`20line`20support`20be`20used,`20allowing`20records`20up`20to`206553
  222. V5`20bytes`20to`20be
  223. Xpackaged.
  224. X
  225. XThe`20use`20of`20/LONGLINES`20has`20some`20caveats`20of`20course.`20Firstly,
  226. V`20it`20can`20only`20be`20used
  227. Xif`20VMS_SHARE`20is`20running`20on`20a`20version`20of`20VMS`205.4`20or`20great
  228. Ver;`20if`20not,`20an`20error
  229. Xmessage`20is`20issued`20if`20long`20line`20support`20is`20selected.`20Secondly
  230. V,`20the`20generated
  231. Xshare`20file`20will`20require`20at`20least`20VMS`205.4`20to`20unpack`20(normal
  232. Vly`20only`20VMS`204.4`20or
  233. Xgreater`20is`20required);`20this`20is`20because`20the`20TPU`20code`20used`20to
  234. V`20unpack`20must`20also
  235. Xhave`20the`20long`20line`20support,`20which`20is`20not`20available`20in`20earl
  236. Vier`20versions.
  237. X
  238. XTo`20summarize:
  239. X
  240. X`20`20Without`20/LONGLINES`20(The`20default):
  241. X`20`20`20`20`20`20`20The`20minimum`20VMS`20required`20to`20run`20is`205.0
  242. X`20`20`20`20`20`20`20Records`20are`20restricted`20to`20960`20characters
  243. X`20`20`20`20`20`20`20The`20minimum`20VMS`20required`20to`20unpack`20is`20VMS
  244. V`204.4
  245. X
  246. X`20`20With`20/LONGLINES:
  247. X`20`20`20`20`20`20`20The`20minimum`20VMS`20required`20to`20run`20is`20VMS`205.
  248. V4`20`20`20
  249. X`20`20`20`20`20`20`20Records`20can`20be`20up`20to`2065535`20characters
  250. X`20`20`20`20`20`20`20The`20minimum`20VMS`20required`20to`20unpack`20is`20VMS
  251. V`205.4
  252. X
  253. X
  254. XLong`20line`20support`20is`20off`20by`20default.`20The`20default`20can`20be
  255. V`20modified`20by`20defining
  256. Xthe`20new`20logical`20name`20SHARE_LONGLINES`20to`20either`20TRUE`20or`20FALSE
  257. V`20as`20appropriate.
  258. XThis`20default`20can`20be`20overridden`20by`20the`20presence`20of`20the`20/LON
  259. VGLINES`20qualifier`20on
  260. Xthe`20VMS_SHARE`20command`20line`20-`20/LONGLINES`20enables`20support,`20/NOLO
  261. VNGLINES`20disables
  262. Xit.
  263. X
  264. X
  265. X2.5`20New`20Logical`20SHARE_EXCLUDE_FILES
  266. X
  267. XIn`20addition`20to`20excluding`20files`20from`20the`20packing`20process`20by
  268. V`20name,`20type`20and
  269. Xdirectory,`20a`20new`20logical`20name`20SHARE_EXCLUDE_FILES`20can`20be`20defin
  270. Ved`20to`20exclude
  271. Xspecific`20filenames`20(I.E.`20combined`20NAME`20and`20TYPE).
  272. X
  273. XFor`20example:
  274. X
  275. X`20`20`20$`20define`20SHARE_EXCLUDE_FILES`20"NAME.TMP,X.DAT"
  276. X`09will`20exclude`20any`20file`20whose`20name`20is`20"NAME.TMP"`20or`20"X.DAT"
  277. V`20in`20any`20of
  278. X`09the`20directories`20which`20VMS_SHARE`20is`20searching.
  279. X
  280. X`5BThanks`20go`20to`20Joe`20Meadows`20-`20JOE@FHCRCVAX.BITNET`20-`20for`20this
  281. V`20suggestion`5D
  282. X
  283. X
  284. X2.6`09New`20Format`20for`20Share`20File`20Part`20Names
  285. X
  286. XTo`20make`20it`20easier`20to`20keep`20track`20of`20the`20parts`20that`20make
  287. V`20up`20a`20share`20file,`20the
  288. Xnaming`20convention`20has`20been`20changed.`20Previously`20it`20was`20"sharefi
  289. Vle'n'"`20where`20"n"
  290. Xwas`20a`20part`20number`20(from`201`20upwards).`20The`20new`20format`20changes
  291. V`20the`20suffix`20to`20be
  292. X"nnn-OF-mmm"`20where`20"nnn"`20is`20a`20part`20number`20and`20"mmm"`20is`20the
  293. V`20total`20number`20of
  294. Xparts`20generated.`20`20Typical`20filename`20might`20be:`20`20SHARE.078-OF-100
  295. V`20`20meaning`20part`2078
  296. Xout`20of`20a`20total`20of`20100`20parts.
  297. X
  298. XThe`20parts`20are`20renamed`20to`20this`20format`20once`20the`20TPU`20packing
  299. V`20code`20has`20completed.
  300. X
  301. X`5BThanks`20to`20Dick`20Munroe`20-`20munroe@dmc.com`20-`20For`20this`20suggest
  302. Vion`5D
  303. X
  304. X
  305. X
  306. X2.7`20Automatic`20Creation`20of`20Share`20Part`20Index`20File
  307. X
  308. XMany`20mail`20based`20file`20servers`20recognize`20a`20`60package'`20file.`20T
  309. Vhis`20is`20a`20file`20which
  310. Xcontains`20the`20names`20of`20other`20files`20to`20be`20sent.`20`20The`20user
  311. V`20can`20specify`20this`20single
  312. Xfile`20and`20receive`20all`20the`20files`20whose`20names`20are`20contained`20i
  313. Vn`20the`20package`20file.
  314. X
  315. XSuch`20a`20package`20file`20can`20now`20be`20created`20automatically.`20`20It
  316. V`20is`20not`20created`20by
  317. Xdefault.`20The`20new`20logical`20name`20SHARE_PACKAGE_INDEX`20can`20be`20defin
  318. Ved`20to`20a`20TRUE`20or
  319. XFALSE`20value`20to`20modify`20the`20default`20(TRUE`20causes`20its`20creation)
  320. V.`20The`20new
  321. X/`5BNO`5DPACKAGE_INDEX`20qualifier`20overrides`20any`20default.
  322. X
  323. XThe`20file`20so`20created`20has`20the`20form:
  324. X
  325. X`20`20`20name.$PACKAGE
  326. X
  327. Xwhere`20`60name'`20is`20the`20NAME`20part`20of`20the`20output`20sharefile`20an
  328. Vd`20`60$PACKAGE'`20is`20the
  329. Xfixed`20file`20extension.`20It`20is`20created`20in`20the`20same`20directory
  330. V`20as`20the`20sharefile
  331. Xparts.`20`20Its`20contents`20are`20a`20list`20of`20the`20individual`20parts
  332. V`20of`20the`20sharefile,`20one
  333. Xper`20line.`20Only`20the`20NAME`20and`20TYPE`20of`20the`20sharefile`20parts
  334. V`20are`20listed.
  335. X
  336. XThe`20suffix`20".$PACKAGE"`20is`20the`20default;`20this`20can`20be`20overridde
  337. Vn`20by`20specifying`20it
  338. Xas`20the`20value`20of`20the`20/PACKAGE_INDEX`20qualifier.`20For`20example:
  339. X
  340. X`20`20/PACKAGE_INDEX=.LIBRARY
  341. X
  342. Xwhich`20would`20change`20the`20default`20from`20".$PACKAGE"`20to`20".LIBRARY".
  343. V
  344. X
  345. XThe`20logical`20name`20SHARE_PACKAGE_INDEX`20can`20also`20be`20defined`20with
  346. V`20a`20suffix`20value,
  347. Xrather`20than`20a`20TRUE`20or`20FALSE`20value,`20and`20this`20will`20modify
  348. V`20the`20default`20to`20be`20that
  349. Xsuffix.
  350. X
  351. X
  352. X2.8`20Debug`20Facility
  353. X
  354. XThe`20debug`20facilities`20have`20been`20revised`20in`20a`20number`20of`20ways
  355. V.`20First,`20debugging`20is
  356. Xnow`20controlled`20via`20a`20qualifier`20on`20the`20command`20line`20or,`20if
  357. V`20not`20specified,`20by`20the
  358. Xsetting`20of`20the`20new`20logical`20name`20SHARE_DEBUG.`20Second,`20several
  359. V`20levels`20of
  360. Xdebugging`20are`20recognized,`20from`200`20(/NODEBUG)`20through`201`20(/DEBUG)
  361. V`20through`20n
  362. X(/DEBUG=n)`20up`20to`20a`20maximum`20n`20of`203.`20Each`20level`20gives`20prog
  363. Vressively`20more
  364. Xdebugging`20information`20and`20includes`20all`20the`20debugging`20output`20fo
  365. Vr`20lower`20levels.
  366. X
  367. XHigher`20levels`20of`20debugging`20(greater`20than`201)`20are`20intended`20for
  368. V`20really`20difficult
  369. Xproblems.
  370. X
  371. XThe`20SHARE_DEBUG`20logical`20can`20be`20defined`20with`20either`20a`20TRUE/FA
  372. VLSE`20value`20or`20an
  373. Xinteger`20value.`20FALSE`20is`20equivalent`20to`20an`20integer`20value`20of
  374. V`200`20and`20specifies`20no
  375. Xdebugging`20(the`20default),`20TRUE`20is`20equivalent`20to`20a`20debugging`20l
  376. Vevel`20of`201.`20Values
  377. Xhigher`20than`203`20are`20treated`20as`203,`20values`20lower`20than`200`20are
  378. V`20treated`20as`200.
  379. X
  380. XFinally,`20debugging`20may`20only`20be`20specified`20if`20the`20user`20has`20S
  381. VYSPRV.`20If`20not,`20the
  382. Xdebugging`20level`20is`20set`20to`200`20regardless`20of`20what`20was`20specifi
  383. Ved.
  384. X
  385. XThe`20debugging`20output`20has`20also`20been`20made`20more`20compact`20(I.E.
  386. V`20less`20verbose)`20than
  387. Xin`20previous`20versions.
  388. X
  389. X
  390. X
  391. X2.9`20New`20logicals`20SHARE_UNPACK_LOG`20and`20SHARE_UNPACK_VERIFY
  392. X
  393. XIn`20previous`20versions,`20the`20SHARE_LOG`20and`20SHARE_VERIFY`20logical`20n
  394. Vames`20affected
  395. Xboth`20the`20VMS_SHARE`20utility`20and`20the`20unpacking`20of`20the`20packaged
  396. V`20share`20file.`20For
  397. Xexample,`20defining`20SHARE_VERIFY`20to`20TRUE`20would`20cause`20both`20to`20b
  398. Ve`20verified`20when
  399. Xrun.
  400. X
  401. XThis`20release`20introduces`20two`20new`20logicals`20which`20affect`20ONLY`20t
  402. Vhe`20unpacking`20of`20the
  403. Xsharefile`20-`20SHARE_UNPACK_VERIFY`20turns`20on/off`20verification`20of`20the
  404. V`20code`20and
  405. XSHARE_UNPACK_LOG`20turns`20on/off`20logging`20of`20each`20file`20unpacked.`20
  406. V`20The`20old`20logicals
  407. XSHARE_LOG`20and`20SHARE_VERIFY`20still`20exist`20but`20affect`20only`20the`20V
  408. VMS_SHARE`20utility
  409. Xitself.
  410. X
  411. XNote:`20`20Because`20logging`20is`20off`20by`20default`20in`20both`20VMS_SHARE
  412. V`20and`20the`20generated
  413. Xshare`20file,`20no`20messages`20will`20be`20produced`20unless`20the`20appropri
  414. Vate`20logical`20is
  415. Xdefined`20to`20be`20TRUE`20(or`20the`20/LOG`20qualifier`20is`20used`20on`20the
  416. V`20VMS_SHARE`20command).
  417. X
  418. X
  419. X
  420. X3.`20BUG`20FIXES
  421. X
  422. XThe`20following`20bugs`20have`20been`20fixed.
  423. X
  424. X
  425. X3.1`20Removal`20of`20Spurious`20Dot`20in`20UNPACKING`20Message
  426. X
  427. XThe`20unpack`20code`20gives`20the`20message`20`60Unpacking`20file`20xxxx.'.
  428. V`20The`20extra`20dot`20at`20the
  429. Xend`20of`20the`20message`20was`20fouling`20attempts`20to`20cut/paste`20the`20f
  430. Vilename`20with`20a`20double
  431. Xclick`20in`20a`20windows`20environment`20and`20has`20been`20removed.
  432. X
  433. X`5BThanks`20go`20to`20Claude`20Barbe`20-`20barbe@sdrvx2.sinet.slb.com`20-`20fo
  434. Vr`20this`20amendment`5D
  435. X
  436. X
  437. X3.2`20Part`20Splitting
  438. X
  439. XThe`20part`20splitting`20algorithm`20has`20been`20modified`20to`20more`20accur
  440. Vately`20compute`20the
  441. Xsize`20of`20a`20part`20written`20to`20disk.`20The`20part`20generating`20code
  442. V`20has`20been`20generally
  443. Xrecoded`20to`20remove`20the`20possibility`20of`20a`20final`20empty`20part`20be
  444. Ving`20created`20when`20the
  445. Xdata`20exactly`20fills`20the`20buffer.
  446. X
  447. X
  448. X3.3`20Coding`20Overhaul
  449. X
  450. XMost`20of`20the`20VMS_SHARE`20code`20has`20been`20extensively`20overhauled`20a
  451. Vnd`20rewritten`20so`20as
  452. Xto`20be`20more`20reliable`20and`20check`20for`20more`20things.`20The`20general
  453. V`20approach`20to`20the
  454. Xproblem`20is`20similar`20to`20previous`20versions`20however.
  455. X
  456. X
  457. X3.4`20Character`20Encoding`20and`20Line`20Wrapping
  458. X
  459. XA`20particular`20area`20of`20concern`20in`20previous`20versions`20has`20been
  460. V`20the`20method`20of
  461. Xencoding`20characters`20such`20that`20intermediate`20lines`20created`20do`20no
  462. Vt`20exceed`20the
  463. Xmaximum`20record`20length`20imposed`20by`20TPU.`20This`20has`20been`20solved
  464. V`20by`20performing`20all
  465. Xencoding`20in`20a`20single`20pass`20over`20the`20buffer`20and`20taking`20whate
  466. Vver`20action`20is
  467. Xnecessary`20as`20each`20character`20is`20examined.`20Decoding`20is`20effected
  468. V`20similarly,`20so
  469. Xthat`20no`20intermediate`20long`20lines`20should`20arise.
  470. X
  471. XA`20side`20effect`20of`20this`20means`20that`20the`20built-in`20SEARCH`20canno
  472. Vt`20be`20effectively`20used
  473. Xand`20buffer`20encoding`20is`20considerably`20slower,`20even`20without`20selec
  474. Vtion`20of`20the
  475. Xrun-length`20compression`20code.`20However,`20the`20benefits`20of`20the`20new
  476. V`20features`20and`20the
  477. Xincreased`20reliability`20should`20compensate`20for`20this.`20Future`20release
  478. Vs`20will`20try`20to
  479. Ximprove`20on`20the`20speed`20of`20packing.
  480. X
  481. X
  482. X
  483. X3.5`20Long`20DCL`20Lines
  484. X
  485. XMost`20of`20the`20lines`20of`20DCL`20created`20in`20the`20share`20file`20are
  486. V`20less`20than`20the`20maximum
  487. Xline`20length`20of`2079`20characters.`20However,`20it`20was`20previously`20pos
  488. Vsible`20for`20the`20CALL
  489. XUNPACK`20line,`20generated`20for`20each`20file,`20to`20extend`20past`20the`20e
  490. Vnd`20of`20this`20maximum.
  491. XThis`20could`20happen`20for`20very`20long`20file`20names`20and,`20with`20the
  492. V`20addition`20of`20file
  493. Xattribute`20recording`20in`20this`20release,`20is`20more`20likely`20to`20occur
  494. V.
  495. X
  496. XTo`20avoid`20the`20problem,`20the`20line`20length`20is`20now`20checked`20betwe
  497. Ven`20each`20parameter`20and
  498. Xa`20DCL`20continuation`20inserted`20if`20necessary.`20`20The`20check`20is`20fa
  499. Virly`20simple`20minded
  500. Xand`20a`20really`20long`20filename`20could`20still`20defeat`20it`20but`20most
  501. V`20files`20should`20pass
  502. Xthrough`20unscathed.
  503. X
  504. X
  505. X3.6`20Verification`20During`20Share`20File`20Unpacking
  506. X
  507. XDue`20to`20a`20coding`20error,`20defining`20the`20SHARE_LOG`20logical`20to`20v
  508. Verify`20the`20unpacking
  509. Xof`20the`20share`20file`20did`20not`20work`20correctly.`20In`20fact,`20definin
  510. Vg`20it`20to`20TRUE`20had`20the
  511. Xopposite`20effect`20of`20turning`20off`20the`20messages`20and`20vice`20versa.
  512. V`20`20The`20default`20action
  513. Xwas`20to`20display`20these`20messages`20and`20this`20worked`20correctly.
  514. X
  515. X
  516. X
  517. X4.`20CHANGES`20IN`20OPERATION
  518. X
  519. XThe`20following`20major`20changes`20in`20operation`20have`20occurred.
  520. X
  521. X
  522. X4.1`20Minimum`20VMS`20Requirements
  523. X
  524. XDue`20to`20the`20use`20of`20a`20number`20of`20features`20of`20DCL`20that`20gav
  525. Ve`20recently`20been
  526. Xintroduced`20(mainly`20the`20block`20IF,`20used`20for`20clarity`20of`20code),
  527. V`20the`20minimum`20version
  528. Xof`20VMS`20required`20to`20encode`20files`20is`20now`20version`205.0.`20Attemp
  529. Vts`20to`20use`20the`20package
  530. Xon`20earlier`20versions`20will`20result`20in`20an`20error`20message.`20However
  531. V`20the`20generated
  532. Xshare`20file`20will`20unpack`20on`20all`20versions`20from`20VMS`204.4`20onward
  533. Vs;`20if`20the`20/LONGLINES
  534. Xqualifier`20is`20used,`20then`20the`20share`20file`20will`20unpack`20only`20on
  535. V`20versions`20of`20VMS`20from
  536. X5.4`20onwards.
  537. X
  538. XIt`20is`20felt`20that`20the`20vast`20majority`20of`20users`20are`20now`20runni
  539. Vng`20at`20least`20VMS`205.0`20and
  540. Xtherefore`20the`20downside`20is`20minimal.`20`20These`20users`20will`20still
  541. V`20be`20able`20to`20unpack
  542. Xshare`20files`20created`20without`20the`20/LONGLINES`20option.
  543. X
  544. X
  545. X4.2`20Encoding`20of`20Space`20characters
  546. X
  547. XIn`20previous`20versions,`20the`20space`20character`20was`20not`20treated`20as
  548. V`20a`20troublesome
  549. Xcharacter.`20In`20practice,`20many`20files`20may`20have`20leading`20or`20trail
  550. Ving`20blanks`20removed
  551. Xor`20added`20on`20their`20journey`20through`20the`20network.`20This`20version
  552. V`20treats`20blanks`20as
  553. Xquotable`20characters`20to`20prevent`20this`20problem.`20As`20a`20consequence,
  554. V`20the`20code`20which
  555. Xused`20to`20quote`20spaces`20if`20they`20appeared`20at`20ends`20of`20lines`20h
  556. Vas`20been`20removed`20and`20the
  557. Xcode`20to`20determine`20where`20to`20split`20lines`20is`20less`20complex;`20th
  558. Vere`20is`20no`20need`20to
  559. Xhunt`20for`20the`20last`20non-blank.
  560. X
  561. XThis`20amendment`20reduces`20the`20complexity`20of`20the`20unpacking`20code
  562. V`20in`20the`20generated
  563. Xsharefile`20as`20there`20is`20no`20need`20for`20an`20additional`20pass`20over
  564. V`20the`20data`20to`20sort`20out
  565. Xany`20trailing`20blanks.`20Any`20blank`20characters`20encountered`20while`20un
  566. Vpacking`20are
  567. Xsimply`20ignored.
  568. X
  569. XShare`20files`20may`20be`20slightly`20longer`20with`20this`20mechanism`20but
  570. V`20choosing`20run-length
  571. Xencoding`20should`20reduce`20the`20size`20due`20to`20long`20runs`20of`20blanks
  572. V`20being`20found`20in`20most
  573. Xtext`20or`20program`20files.
  574. X
  575. X
  576. X4.3`20PAKMAIL`20Updated
  577. X
  578. XThe`20PAKMAIL`20utility,`20supplied`20with`20VMS_SHARE`20to`20mail`20out`20all
  579. V`20the`20parts`20of`20the
  580. Xpackage`20has`20been`20updated`20to`20reflect`20the`20new`20part`20format`20of
  581. V`20nnn-OF-mmm.
  582. X
  583. X
  584. X
  585. X5.`20DOCUMENTATION`20CHANGES
  586. X
  587. XThe`20user`20guide`20and`20help`20file`20have`20both`20been`20updated`20to`20r
  588. Veflect`20the`20new`20support
  589. Xfor`20record`20formats,`20run-length`20compression,`20the`20new`20command-line
  590. V`20parameters,
  591. Xand`20the`20other`20miscellaneous`20enhancements.`20The`20technical`20informat
  592. Vion`20guide`20has
  593. Xbeen`20amended`20slightly`20for`20similar`20reasons.
  594. X
  595. X
  596. X
  597. X6.`20TESTING
  598. X
  599. XThis`20version`20of`20VMS_SHARE`20has`20only`20been`20tested`20on`20VMS`205.5-
  600. V1`20but`20is`20believed`20to
  601. Xwork`20`20on`20all`20versions`20from`20VMS`205.0`20to`20VMS`205.5-1.`20`20Howe
  602. Vver,`20it`20is`20not`20supported`20
  603. Xformally`20on`20any`20version`20of`20VMS`20other`20than`20the`20one`20on`20whi
  604. Vch`20it`20has`20been`20tested.
  605. X
  606. XThe`20share`20files`20generated`20by`20VMS_SHARE`20are`20believed`20to`20unpac
  607. Vk`20correctly`20on`20all
  608. Xversions`20of`20TPU`20from`20VMS`204.4`20onwards`20unless`20the`20/LONGLINES
  609. V`20option`20is`20selected,
  610. Xin`20which`20case`20VMS`205.4`20is`20the`20minimum`20release`20needed.
  611. X
  612. X
  613. X
  614. X7.`20PREVIOUS`20RELEASE`20NOTES
  615. X
  616. XRelease`20notes`20for`20previous`20versions`20are`20appended`20at`20the`20end.
  617. V`20These`20give`20
  618. Xdetails`20of`20changes`20and`20bug`20fixes`20for`20those`20versions.
  619. X`0C
  620. X`20`20`20`20`20`20`20`20`09`09`09V`20M`20S`20_`20S`20H`20A`20R`20E
  621. X
  622. X`20`20`20`20`09`09`09`20`20`20R`20E`20L`20E`20A`20S`20E`20`20`20N`20`20O`20T
  623. V`20E`20S
  624. X
  625. X
  626. X
  627. X`20`20`20`20`09`09`09`09`09`09`09`09Version`207.2-007
  628. X`20`20`20`20`09`09`09`09`09`09`09`09Feb`201990
  629. X
  630. X
  631. X1.`20INTRODUCTION
  632. X
  633. XVersion`207.2-007`20`20of`20VMS_SHARE`20is`20a`20maintenance`20release`20that
  634. V`20merely`20fixes`20a
  635. Xnumber`20of`20known`20bugs.`20It`20introduces`20no`20new`20features`20for`20th
  636. Ve`20user.
  637. X
  638. X
  639. X
  640. X2.`20NEW`20FEATURES
  641. X
  642. XThere`20are`20no`20new`20features`20with`20this`20release
  643. X
  644. X
  645. X
  646. X
  647. X3.`20BUG`20FIXES
  648. X
  649. XThe`20following`20bugs`20have`20been`20fixed.
  650. X
  651. X
  652. X3.1`20Version`20Check`09`09`09`09`09(7.2-001)
  653. X
  654. XBoth`20the`20VMS_SHARE`20code`20and`20the`20created`20share`20file`20include
  655. V`20checks`20on`20the`20
  656. Xversion`20of`20VMS`20under`20which`20they`20run.`20This`20ensures`20that`20att
  657. Vempts`20to`20run`20on`20
  658. Xunsupported`20(ie`20very`20OLD)`20versions`20of`20VMS`20are`20trapped`20with
  659. V`20a`20suitable`20warning.`20
  660. XIn`20previous`20versions,`20this`20check`20was`20not`20altogether`20correct
  661. V`20because`20it`20assumed`20
  662. Xthat`20the`20version`20number`20obtained`20with`20`20f$getsyi("VERSION")`20
  663. V`20started`20with`20the`20
  664. Xletter`20"V".`20`20In`20some`20releases,`20this`20is`20not`20the`20case`20-
  665. V`20there`20are`20"A"`20and`20"B"`20
  666. Xversions`20around`20at`20least!`20Usually`20to`20be`20found`20in`20mixed`20ver
  667. Vsion`20clusters.
  668. X
  669. XThe`20fix`20corrects`20this`20problem`20by`20stripping`20off`20the`20"V"`20and
  670. V`20just`20comparing`20the`20
  671. Xnumeric`20part.
  672. X
  673. X
  674. X3.2`20Use`20of`20/NOLOG`09`09`09`09`09(7.2-002)
  675. X
  676. XWith`20the`20inclusion`20of`20a`20"SET`20SYMBOL/SCOPE=(NOLOCAL,NOGLOBAL)"`20co
  677. Vmmand`20in`20a`20
  678. Xprevious`20release`20of`20VMS_SHARE,`20the`20use`20of`20the`20/NOLOG`20qualifi
  679. Vers`20on`20certain`20
  680. Xcommands`20in`20the`20generated`20share`20file`20is`20redundant.`20`20These
  681. V`20have`20been`20removed`20
  682. Xand`20will`20make`20the`20share`20file`20very`20slightly`20shorter.
  683. X
  684. X
  685. X3.3`20Variable`20names`20in`20the`20share`20file`09`09`09(7.2-003)
  686. X
  687. XThe`20TPU`20unpacking`20code`20placed`20into`20the`20share`20file`20uses`20sev
  688. Veral`20variables`20
  689. Xto`20hold`20relevant`20information.`20To`20save`20space,`20these`20have`20been
  690. V`20changed`20to`20be`20
  691. Xsingle`20letter`20variable`20names`20where`20possible.`20In`20some`20instances
  692. V,`20the`20code`20is`20
  693. Xrestructured`20to`20remove`20the`20variables`20altogether.
  694. X
  695. X
  696. X3.4`20Part`20Separator`20Check`20and`20Infinite`20Looping`20Problems`09(7.2-00
  697. V4)
  698. X
  699. XBecause`20VMS_SHARE`20allows`20the`20share`20file`20to`20be`20created`20in`20m
  700. Vultiple`20parts`20for`20
  701. Xease`20of`20mailing,`20it`20includes`20flags`20to`20allow`20it`20to`20skip`20o
  702. Vver`20any`20intervening`20
  703. X'garbage',`20typically`20mail`20headers`20and`20mail`20signatures.`20`20Two
  704. V`20special`20flag`20lines
  705. Xare`20inserted`20-`20one`20at`20the`20end`20of`20a`20part`20and`20one`20at`20t
  706. Vhe`20start`20of`20a`20part.`20
  707. X
  708. XThe`20unpacking`20code`20however`20did`20not`20fully`20check`20for`20the`20sta
  709. Vrt`20of`20part`20flag`20line`20
  710. Xand`20consequently`20could`20be`20confused`20by`20mail`20headers`20or`20mail
  711. V`20signatures`20that`20
  712. Xlooked`20like`20the`20start`20of`20flag`20lines.`20The`20code`20has`20been`20t
  713. Vightened`20up`20to`20more`20
  714. Xfully`20check`20that`20the`20line`20found`20is`20a`20real`20start`20of`20part.
  715. V`20This`20avoids`20problems`20
  716. Xof`20the`20code`20being`20stuck`20in`20infinite`20CPU`20gobbling`20loops.
  717. X
  718. X
  719. X
  720. X3.5`20Replacement`20of`20EXIT`09`09`09`09`09(7.2-006)
  721. X
  722. XIt`20has`20been`20reported`20that,`20under`20VMS`205.3,`20VMS_SHARE`20runs`20i
  723. Vnto`20problems`20at`20the`20
  724. XTPU`20'EXIT'`20statement.`20`20The`20exact`20problem`20is`20unclear`20but`20se
  725. Vems`20related`20to`20the`20
  726. Xflushing`20of`20buffers.`20To`20circumvent`20the`20problem,`20EXIT`20has`20bee
  727. Vn`20replaced`20by`20
  728. X'QUIT'`20in`20both`20VMS_SHARE`20and`20the`20generated`20share`20file.
  729. X
  730. X
  731. X
  732. X3.6`20Suppression`20of`20TPU`20messages.`09`09`09(7.2-007)
  733. X
  734. XBecause`20TPU`20produces`20unwanted`20informational`20messages`20when`20it`20s
  735. Vtarts,`20the`20code`20
  736. Xdiverts`20these`20to`20NL:`20via`20a`20user`20mode`20logical`20name`20assignme
  737. Vnt.`20`20However`20this`20
  738. Xhas`20the`20side`20effect`20of`20also`20suppressing`20any`20TPU`20error`20mess
  739. Vages.`20`20To`20allow`20
  740. Xthese`20error`20messages`20to`20be`20seen`20if`20something`20is`20wrong,`20the
  741. V`20share`20file`20now`20only`20
  742. Xassigns`20the`20output`20to`20NL:`20if`20verification`20is`20OFF`20(see`20the
  743. V`20logical`20name`20
  744. XSHARE_VERIFY).`20If`20verification`20is`20on,`20all`20output`20comes`20to`20SY
  745. VS$OUTPUT.
  746. X
  747. X
  748. X
  749. X
  750. X
  751. X4.`20CHANGES`20IN`20OPERATION
  752. X
  753. XThe`20following`20major`20changes`20in`20operation`20have`20occurred.
  754. X
  755. X
  756. X4.1`20Encoding`20of`20Special`20Characters`09`09`09(7.2-005)
  757. X
  758. XPrevious`20versions`20encoded`20troublesome`20characters`20using`20a`203`20dig
  759. Vit`20decimal`20
  760. Xrepresentation`20of`20the`20ASCII`20code`20prefixed`20by`20an`20escape`20chara
  761. Vcter.`20`20This`20
  762. Xrelease`20uses`20a`20hex`20encoding`20thus`20saving`201`20byte`20for`20each
  763. V`20escaped`20character.
  764. X
  765. XFor`20small`20files,`20the`20file`20may`20be`20slightly`20longer`20because`20o
  766. Vf`20the`20extra`20code
  767. Xnecessary`20to`20unpack`20hex`20characters.`20For`20long`20files,`20small`20sp
  768. Vace`20savings`20should
  769. Xoccur.`20
  770. X
  771. X
  772. X5.`20DOCUMENTATION`20CHANGES
  773. X
  774. XA`20number`20of`20minor`20changes`20have`20been`20applied`20to`20the`20user
  775. V`20guide`20and`20to`20the`20
  776. Xtechnical`20info`20documents.`20No`20new`20information`20has`20been`20added.
  777. X
  778. X
  779. X
  780. X6.`20TESTING
  781. X
  782. XThis`20version`20of`20VMS_SHARE`20has`20been`20tested`20on`20VMS`205.1-1`20but
  783. V`20is`20believed`20to`20work`20
  784. Xon`20all`20versions`20from`20VMS`204.4`20to`20VMS`205.3.`20`20However,`20it
  785. V`20is`20not`20supported`20
  786. Xformally`20on`20any`20version`20of`20VMS`20other`20than`20the`20one`20on`20whi
  787. Vch`20it`20has`20been`20tested.
  788. X
  789. X
  790. X
  791. X7.`20PREVIOUS`20RELEASE`20NOTES
  792. X
  793. XRelease`20notes`20for`20previous`20versions`20are`20appended`20at`20the`20end.
  794. V`20These`20give`20
  795. Xdetails`20of`20changes`20and`20bug`20fixes`20for`20those`20versions.
  796. X`0C
  797. X`09`09V`20M`20S`20_`20S`20H`20A`20R`20E`20`20`20B`20U`20G`20`20`20F`20I`20X
  798. V`20E`20S
  799. X
  800. X`20`20`20`20`09`09`09`20Version`207.1-004
  801. X
  802. X
  803. X
  804. X
  805. X1.`20INTRODUCTION
  806. X
  807. XThis`20document`20is`20an`20addendum`20to`20the`20main`20release`20notes`20for
  808. V`20VMS_SHARE`20
  809. Xdescribing`20all`20the`20bugs`20fixed`20since`20the`20last`20major`20release
  810. V`207.1-001
  811. X
  812. X
  813. X
  814. X2.`20BUG`20FIX`20DESCRIPTIONS
  815. X
  816. X2.1`20Verification`09`09`09`09`09(7.1-002)
  817. X
  818. XVMS_SHARE`20now`20turns`20verification`20of`20the`20DCL`20code`20on`20or`20off
  819. V`20based`20on`20the`20
  820. Xdefinition`20of`20the`20logical`20name`20SHARE_VERIFY.`20Previously`20no`20att
  821. Vempt`20was`20made`20to`20
  822. Xalter`20the`20verification`20setting.`20The`20environment`20is`20restored`20on
  823. V`20exit.
  824. X
  825. XIf`20SHARE_VERIFY`20is`20defined`20as`20TRUE`20(or`201`20or`20YES`20etc.)`20th
  826. Ven`20verification`20is`20
  827. Xenabled.`20If`20defined`20as`20FALSE`20(or`200`20or`20NO`20etc.)`20or`20is`20n
  828. Vot`20defined`20at`20all,`20
  829. Xverification`20is`20disabled.
  830. X
  831. XNote`20that`20this`20logical`20defines`20verification`20both`20for`20VMS_SHARE
  832. V`20itself`20and`20for`20
  833. Xany`20unpack`20operations`20performed`20on`20the`20created`20archive.
  834. X
  835. XNote`20also`20that`20if`20the`20user`20has`20no`20READ`20access`20to`20the`20p
  836. Vrocedure`20(recommended)`20
  837. Xthen`20verification`20is`20always`20disabled.
  838. X
  839. XThe`20.HLP`20file`20has`20been`20updated`20to`20include`20a`20reference`20to
  840. V`20this`20logical`20and`20its`20
  841. Xdefinitions.
  842. X
  843. XNOTE`20that`20the`20Version`207.1`20release`20notes`20contain`20a`20comment
  844. V`20that`20this`20logical`20
  845. Xname`20has`20been`20removed.`20This`20was`20true`20with`20release`207.1-001
  846. V`20of`20VMS_SHARE`20but`20the`20
  847. Xlogical`20has`20been`20reinstated`20with`20release`207.1-002
  848. X
  849. X
  850. X
  851. X2.2`20Symbol`20Redefinition`09`09`09`09`09(7.1-002)
  852. X
  853. XVMS_SHARE`20now`20uses`20the`20SET`20SYMBOL`20command`20to`20insulate`20itself
  854. V`20from`20any`20symbol`20
  855. Xdefinitions`20made`20by`20the`20user.`20Both`20local`20and`20global`20definiti
  856. Vons`20of`20any`20DCL
  857. Xsymbols`20are`20ignored.`20`20If`20VMS_SHARE`20exits`20normally`20then`20the
  858. V`20original`20setting`20is`20
  859. Xrestored.`20However,`20an`20abnormal`20exit`20may`20cause`20the`20new`20settin
  860. Vgs`20to`20be`20retained.`20
  861. XThis`20may`20cause`20confusion`20if`20a`20user`20is`20unaware`20of`20what`20ha
  862. Vs`20happened.
  863. X
  864. XPreviously`20any`20external`20symbol`20definitions`20matching`20commands`20use
  865. Vd`20internally`20
  866. Xto`20VMS_SHARE`20would`20cause`20unexpected`20actions`20and`20usually`20cause
  867. V`20VMS_SHARE`20to`20
  868. Xfail.
  869. X
  870. X
  871. X
  872. X2.3`20Spurious`20Rejection`20of`20certain`20files`09`09`09(7.1-002)
  873. X
  874. XVMS_SHARE`20contains`20code`20to`20reject`20any`20attempt`20to`20include`20the
  875. V`20output`20files`20in`20
  876. Xthe`20packed`20archive`20on`20the`20grounds`20that`20packing`20an`20archive
  877. V`20into`20itself`20is`20not`20
  878. Xsensible.`20However`20the`20code`20for`20this`20check`20was`20faulty`20due`20t
  879. Vo`20an`20undocumented`20
  880. X'feature'`20of`20the`20f$integer`20lexical`20which`20returns`201`20if`20a`20st
  881. Vring`20starts`20with`20
  882. XT`20or`20Y`20(in`20other`20words,`20does`20a`20conversion`20from`20boolean`20t
  883. Vo`20integer`20where`20T,Y`20=`20
  884. X1`20and`20F,`20N`20=`200).`20This`20caused`20some`20perfectly`20valid`20filena
  885. Vmes`20to`20be`20rejected`20on
  886. Xthe`20grounds`20that`20they`20had`20the`20same`20name`20as`20the`20output`20fi
  887. Vle.
  888. X
  889. XAs`20an`20example,`20if`20the`20output`20file`20is`20specified`20as`20'V'`20th
  890. Ven`20invalid`20input`20files
  891. Xwould`20be`20anything`20starting`20with`20this`20name`20followed`20by`20a`20nu
  892. Vmber,`20such`20as`20'V.1',
  893. X'V.2'`20etc.`20The`20bug`20also`20caused`20files`20'V.T'`20and`20'V.Y'`20to
  894. V`20be`20invalid.`20
  895. X
  896. XThe`20code`20has`20now`20been`20fixed`20by`20avoiding`20the`20use`20of`20f$int
  897. Veger`20until`20the`20string`20
  898. Xhas`20been`20checked`20with`20f$type`20to`20make`20sure`20it`20really`20is`20a
  899. V`20number.
  900. X
  901. X
  902. X
  903. X2.4`20Movement`20Of`20Generated`20CUT`20HERE`20line`09`09`09(7.1-003)
  904. X
  905. XThe`20inclusion`20of`20the`20verification`20option`20(SHARE_VERIFY)`20was`20in
  906. Vadvertently`20
  907. Xplaced`20BEFORE`20rather`20than`20AFTER`20the`20'`20...`20`20`20CUT`20HERE`20
  908. V`20`20...`20'`20line`20in`20the`20
  909. Xgenerated`20share`20file.`20It`20has`20now`20been`20moved`20to`20its`20proper
  910. V`20place`20ensuring`20that`20
  911. Xcutting`20on`20the`20indicated`20line`20does`20not`20remove`20the`20VERIFY`20o
  912. Vption.
  913. X
  914. X
  915. X
  916. X2.5`20Angle`20Brackets`20in`20Directory`20names`09`09`09(7.1-004)
  917. X
  918. XIf`20the`20parameters`20to`20VMS_SHARE,`20or`20the`20current`20default`20direc
  919. Vtory,`20contained`20
  920. Xangle`20brackets`20around`20directory`20specifications`20(For`20example,`20<TE
  921. VST>`20rather`20
  922. Xthan`20the`20more`20normal`20`5BTEST`5D)`20then`20VMS_SHARE`20treated`20each
  923. V`20file`20as`20invalid`20
  924. Xbecause`20it`20was`20not`20designed`20to`20handle`20the`20<>`20notation,`20whi
  925. Vch`20is`20perfectly`20
  926. Xvalid`20VMS`20syntax.
  927. X
  928. XThis`20problem`20has`20been`20cured`20by`20ensuring`20that`20all`20occurrences
  929. V`20of`20<..>`20notation`20
  930. Xare`20translated`20to`20the`20more`20normal`20`5B..`5D`20notation`20before`20p
  931. Vrocessing`20the`20
  932. Xfilenames.`20The`20way`20in`20which`20this`20is`20done`20relys`20on`20a`20litt
  933. Vle`20known`20feature`20of`20
  934. Xthe`20f$parse`20lexical`20function:
  935. X
  936. X`20`20`20f$parse(P1,"`5B`5D")`20`20will`20translate`20any`20<..>`20directory
  937. V`20to`20`5B..`5D
  938. X
  939. X`20`20`20f$parse(P1,"<>")`20`20will`20translate`20any`20`5B..`5D`20directory
  940. V`20to`20<..>
  941. X
  942. XHowever`20if`20P1`20contains`20a`20version`20number`20the`20conversion`20is
  943. V`20not`20done!`20(WHY`20this`20
  944. Xshould`20be`20so`20is`20a`20mystery`20at`20this`20time)
  945. X
  946. X
  947. X
  948. X2.6`20Check`20for`20correct`20VMS`20version`20in`20created`20share`20file`09(7
  949. V.1-004)
  950. X
  951. XThe`20check`20for`20a`20minimum`20revision`20of`20VMS`20was`20incorrect.`20The
  952. V`20current`20version,`20
  953. Xobtained`20with`20f$getsyi("VERSION")`20was`20being`20checked`20against`20"4.4
  954. V"`20instead`20of`20
  955. X"V4.4".
  956. X
  957. X
  958. X
  959. X2.7`20Check`20for`20correct`20VMS`20version`20in`20main`20procedure`09(7.1-004
  960. V)
  961. X
  962. XNo`20check`20was`20made`20in`20the`20main`20VMS_SHARE`20procedure`20for`20the
  963. V`20correct`20minimum`20
  964. Xrevision`20of`20VMS`20required.`20This`20would`20cause`20it`20to`20fail`20if
  965. V`20run`20on`20a`20pre-VMS`204.4`20
  966. Xsystem.`20A`20check`20has`20now`20been`20included.
  967. X
  968. X
  969. X
  970. X2.8`20Information`20on`20errors`20in`20HELP`09`09`09(7.1-004)
  971. X
  972. XExplanations`20of`20the`20error`20codes`20for`20both`20VMS_SHARE`20and`20PAKMA
  973. VIL`20have`20been`20
  974. Xincluded`20into`20the`20HELP`20files`20for`20the`20utilities.`20There`20are
  975. V`20also`20some`20minor`20
  976. Xeditorial`20changes`20to`20the`20help`20text.
  977. X
  978. X
  979. X
  980. X2.9`20User`20Guide`09`09`09`09`09`09(7.1-004)
  981. X
  982. XA`20preliminary`20user`20guide`20is`20issued`20with`20this`20release.`20This
  983. V`20describes`20the`20
  984. Xrationale`20behind`20VMS_SHARE,`20from`20the`20user's`20viewpoint`20and`20deta
  985. Vils`20of`20how`20to`20
  986. Xuse`20both`20VMS_SHARE`20and`20PAKMAIL.`20Details`20of`20unpacking`20share`20f
  987. Viles`20are`20included`20
  988. Xalso.
  989. X
  990. X
  991. X
  992. X2.10`20Location`20of`20Break`20Point`09`09`09`09(7.1-004)
  993. X
  994. XCorrected`20the`20check`20for`20a`20null`20buffer`20in`20the`20routine`20which
  995. V`20locates`20the`20optimum`20
  996. Xbreak`20point`20for`20a`20share`20file`20part.
  997. X
  998. X
  999. X2.11`20Part`20Separator`20Insertion`09`09`09`09(7.1-004)
  1000. X
  1001. XCorrected`20the`20check`20for`20the`20right`20part`20separator,`20GOTO/label
  1002. V`20or`20special`20flag`20
  1003. Xlines,`20by`20only`20checking`20the`20line`20below`20the`20separation`20point
  1004. V`20and`20not`20the`20lines`20
  1005. Xon`20either`20side.`20`20This`20ensures`20that`20the`20GOTO/LABEL`20code`20is
  1006. V`20only`20used`20when`20the`20
  1007. Xsplit`20point`20immediately`20precedes`20DCL`20code.
  1008. X
  1009. X
  1010. X
  1011. X3.`20KNOWN`20PROBLEMS
  1012. X
  1013. XThere`20are`20no`20known`20problems`20at`20this`20time.
  1014. X
  1015. X
  1016. X
  1017. X
  1018. XAndy`20Harper
  1019. X9-AUG-1989
  1020. X`0C
  1021. X`20`20`20`20`20`20`20`20`09`09`09V`20M`20S`20_`20S`20H`20A`20R`20E
  1022. X
  1023. X`20`20`20`20`09`09`09`20`20`20R`20E`20L`20E`20A`20S`20E`20`20`20N`20`20O`20T
  1024. V`20E`20S
  1025. X
  1026. X
  1027. X
  1028. X`20`20`20`20`09`09`09`09`09`09`09`09Version`207.1
  1029. X`20`20`20`20`09`09`09`09`09`09`09`09Aug`201989
  1030. X
  1031. X
  1032. X1.`20INTRODUCTION
  1033. X
  1034. XVersion`207.1`20of`20VMS_SHARE`20has`20been`20completely`20rewritten`20to`20el
  1035. Viminate`20long
  1036. Xstanding`20bugs,`20and`20to`20improve`20performance`20by`20utilising`20new`20a
  1037. Vlgorithms`20for`20the
  1038. Xpacking`20and`20upacking`20of`20files.`20Details`20of`20the`20changes`20from
  1039. V`20the`20previous
  1040. Xversions`20are`20given`20below.
  1041. X
  1042. X
  1043. X
  1044. X2.`20NEW`20FEATURES
  1045. X
  1046. X2.1`20Subdirectories
  1047. X
  1048. XVMS_SHARE`20now`20supports`20subdirectories.`20`20The`20user`20may`20package
  1049. V`20a`20series`20of`20files
  1050. Xexisting`20in`20the`20directory`20tree`20within/below`20the`20current`20direct
  1051. Vory.`20The
  1052. Xdirectory`20structure`20will`20be`20recreated`20at`20the`20unpacking`20stage
  1053. V`20as`20an`20equivalent
  1054. Xtree`20beneath`20the`20current`20directory.`20All`20required`20directories`20a
  1055. Vre`20automatically`20
  1056. Xcreated`20as`20required.
  1057. X
  1058. XFor`20example:
  1059. X
  1060. X`20`20`20`20$`20VMS_SHARE`20`5B.TPU...`5D*.*,`5B.DATA`5D*.*`20PACKAGE.SHAR
  1061. X`20`20`20`20`20`20`20`20Will`20package`20the`20directory`20tree`20beneath`20
  1062. V`5B.TPU`5D`20and`20the`20subdirectory
  1063. X`20`20`20`20`20`20`20`20`5B.DATA`5D.`20`20During`20unpacking,`20these`20subdir
  1064. Vectories`20will`20be`20created
  1065. X`20`20`20`20`20`20`20`20automatically`20below`20the`20current`20directory.
  1066. X
  1067. X
  1068. XIt`20was`20originally`20decided`20to`20make`20the`20directory`20handling`20a
  1069. V`20bit`20like`20BACKUP,`20
  1070. Xallowing`20any`20directory`20to`20be`20packaged`20and`20individual`20items`20t
  1071. Vo`20be`20selected`20at
  1072. Xunpack`20time.`20However`20this`20proved`20to`20be`20extremely`20difficult`20i
  1073. Vn`20DCL`20and`20so`20was
  1074. Xabandoned.`20It`20may`20appear`20in`20a`20future`20release.`20`20In`20order
  1075. V`20to`20prevent`20files
  1076. Xappearing`20in`20essentially`20random`20directories`20it`20was`20decided`20to
  1077. V`20adopt`20the`20above
  1078. Xcompromise.`20It`20retains`20sufficient`20flexibility`20to`20deal`20with`20mos
  1079. Vt`20package`20
  1080. Xstructures`20but`20maintains`20a`20known`20directory`20structure`20that`20will
  1081. V`20avoid`20files`20
  1082. Xbeing`20placed`20randomly`20as`20far`20as`20the`20receiving`20user`20is`20conc
  1083. Verned.
  1084. X
  1085. X
  1086. X
  1087. X2.2`20DEBUG`20code
  1088. X
  1089. XTo`20assist`20those`20who`20enhance`20and`20develop`20VMS_SHARE,`20a`20large
  1090. V`20amount`20of
  1091. Xdebug/trace`20code`20is`20included`20into`20the`20source.`20`20By`20redefining
  1092. V`20a`20simple`20global
  1093. Xconstant`20value,`20this`20debug`20code`20can`20be`20turned`20on`20or`20off
  1094. V`20to`20assist`20in`20tracking
  1095. Xdown`20faults.
  1096. X
  1097. X
  1098. X
  1099. X
  1100. X2.3`20New`20Part`20Splitting`20Algorithms
  1101. X
  1102. XThe`20algorithms`20used`20for`20splitting`20parts`20have`20been`20extensively
  1103. V`20redesigned`20to
  1104. Xensure`20minimal`20use`20of`20memory`20for`20buffers.`20Essentially,`20VMS_SHA
  1105. VRE`20now`20uses`20only
  1106. Xenough`20memory`20to`20hold`20the`20sum`20of`20two`20parts`20and`20the`20large
  1107. Vst`20file.`20We`20read`20a
  1108. Xsingle`20file,`20add`20as`20much`20as`20possible`20to`20the`20part`20buffer
  1109. V`20and`20then`20write`20the
  1110. Xpart`20buffer,`20removing`20the`20equivalent`20info`20from`20the`20original
  1111. V`20file`20buffer.
  1112. X
  1113. XThe`20algorithm`20for`20finding`20the`20optimum`20part`20breakpoint`20now`20us
  1114. Ves`20a`20binary`20search
  1115. Xinstead`20of`20a`20sequential`20search`20for`20speed.
  1116. X
  1117. X
  1118. X
  1119. X
  1120. X2.4`20New`20Unpacking`20Algorithms
  1121. X
  1122. XThe`20algorithm`20used`20to`20unpack`20code,`20embedded`20in`20the`20TPU`20cod
  1123. Ve`20stored`20in`20the
  1124. Xoutput`20share`20file,`20has`20been`20redesigned`20to`20need`20less`20error
  1125. V`20checking`20and`20hence
  1126. Xless`20code.`20`20The`20TPU`20code`20is`20also`20packed`20more`20compactly`20t
  1127. Vhan`20before`20giving
  1128. Ximproved`20compilation`20speed`20as`20well`20as`20execution`20speed.`20
  1129. X
  1130. X
  1131. X
  1132. X
  1133. X2.5`20Error`20and`20Status`20Messages
  1134. X
  1135. XVMS_SHARE`20now`20produces`20messages`20similar`20to`20the`20standard`20VMS
  1136. V`20form.`20Messages`20are
  1137. Xproduced`20to`20keep`20the`20user`20informed`20of`20progress`20(these`20normal
  1138. Vly`20go`20to
  1139. Xsys$output)`20and`20error`20messages`20(which`20normally`20go`20to`20sys$error
  1140. V).
  1141. X
  1142. XInitial`20informational`20messages`20from`20TPU,`20as`20it`20reads`20in`20the
  1143. V`20source,`20are`20also
  1144. Xprinted.`20It`20is`20hoped`20that`20in`20a`20future`20release`20some`20way`20c
  1145. Van`20be`20found`20to`20turn
  1146. Xthis`20off.
  1147. X
  1148. X
  1149. X
  1150. X2.6`20Exclusion`20Files
  1151. X
  1152. XBy`20defining`20certain`20logical`20names,`20it`20is`20possible`20to`20force
  1153. V`20the`20exclusion`20of`20
  1154. Xparticular`20files`20from`20the`20sharefile.`20There`20are`20three`20possibili
  1155. Vties:`20exclusion`20
  1156. Xby`20directory,`20exclusion`20by`20name,`20and`20exclusion`20by`20type.
  1157. X
  1158. XEach`20logical`20name`20may`20be`20defined`20as`20a`20comma`20separated`20list
  1159. V`20of`20items`20(the`20list`20
  1160. XMUST`20be`20enclosed`20within`20quotes).`20Any`20file`20that`20matches`20is
  1161. V`20excluded`20from`20the
  1162. Xsharefile.`20Wildcards`20are`20not`20permitted.`20Each`20must`20be`20a`20fixed
  1163. V`20string.`20
  1164. X
  1165. XThanks`20go`20to`20Joe`20Meadows`20(JOE@BITNET.FHCRCVAX)`20for`20the`20general
  1166. V`20idea`20and`20basic
  1167. Xmechanism.`20
  1168. X
  1169. X
  1170. X
  1171. X2.6.1`20SHARE_EXCLUDE_DIRS
  1172. X
  1173. XThis`20logical`20is`20a`20list`20of`20directory`20names`20(in`20their`20full
  1174. V`20format).`20Any`20file`20
  1175. Xwith`20the`20same`20directory`20name`20is`20automatically`20excluded.
  1176. X
  1177. XFor`20example:
  1178. X
  1179. X`20`20`20DEFINE`20SHARE_EXCLUDE_DIRS`20"`5BX`5D,`5BX.Y`5D,`5BX.Y.Z`5D,`5BTWEET
  1180. VY`5D"
  1181. X
  1182. Xexcludes`20any`20file`20in`20any`20of`20the`20listed`20directories.
  1183. X
  1184. XIf`20this`20logical`20is`20absent,`20then`20no`20files`20are`20excluded`20on
  1185. V`20the`20basis`20of`20their`20
  1186. Xfull`20directory`20name.
  1187. X
  1188. X
  1189. X2.6.2`20SHARE_EXCLUDE_NAMES
  1190. X
  1191. XThis`20logical`20is`20a`20list`20of`20filenames.`20Any`20file`20with`20the`20a
  1192. V`20matching`20NAME`20part`20is
  1193. Xautomatically`20excluded.`20
  1194. X
  1195. XFor`20example:
  1196. X
  1197. X`20`20`20DEFINE`20SHARE_EXCLUDE_NAMES`20"MAIN,TRACE,MAIN_CLD"
  1198. X
  1199. X
  1200. XIf`20this`20logical`20is`20absent,`20then`20no`20files`20are`20excluded`20on
  1201. V`20the`20basis`20of`20their`20
  1202. Xfilename.
  1203. X
  1204. X
  1205. X2.6.3`20SHARE_EXCLUDE_TYPES
  1206. X
  1207. XThis`20logical`20is`20a`20list`20of`20file`20types.`20Any`20file`20with`20a
  1208. V`20matching`20TYPE`20part`20is`20
  1209. Xautomatically`20excluded.`20Files`20with`20a`20type`20of`20.DIR`20are`20automa
  1210. Vtically`20excluded`20
  1211. Xas`20these`20are`20directory`20files`20with`20no`20valid`20contents`20at`20the
  1212. V`20time`20of`20unpacking.
  1213. X
  1214. XFor`20example:
  1215. X
  1216. X`20`20`20DEFINE`20SHARE_EXCLUDE_TYPES`20".OBJ,.EXE"
  1217. X
  1218. Xexcludes`20any`20file`20with`20a`20type`20of`20.OBJ,`20.EXE`20or`20.DIR
  1219. X
  1220. XIf`20this`20logical`20is`20absent,`20then`20no`20files`20are`20excluded`20on
  1221. V`20the`20basis`20of`20their`20
  1222. Xfile`20type`20(except`20.DIR).
  1223. X
  1224. X
  1225. X
  1226. X3.`20BUG`20FIXES
  1227. X
  1228. XA`20number`20of`20long`20standing`20bugs`20have`20been`20fixed.
  1229. X
  1230. X
  1231. X
  1232. X3.1`20Bad`20split`20points
  1233. X
  1234. XOccasionally,`20the`20split`20point`20was`20chosen`20badly`20such`20that`20the
  1235. V`20part`20separators
  1236. Xwere`20wrong.`20In`20particular,`20the`20$GOTO/Label:`20sequence`20could`20app
  1237. Vear`20right`20after
  1238. Xthe`20$COPY`20command`20due`20to`20the`20method`20by`20which`20use`20of`20$GOT
  1239. VO`20was`20decided.`20This
  1240. Xalgorithm`20has`20been`20redesigned`20and`20the`20problem`20should`20no`20long
  1241. Ver`20occur.
  1242. X
  1243. X
  1244. X
  1245. X3.2`20Hangs`20During`20Trailing`20Blank`20Processing
  1246. X
  1247. XWhen`20wrapping`20lines`20containing`20trailing`20blanks,`20the`20code`20would
  1248. V`20sometimes`20hang
  1249. Xin`20an`20infinite`20loop`20or`20fail`20to`20split`20on`20a`20non-blank`20char
  1250. Vacter.`20This`20has`20now
  1251. Xbeen`20fixed.
  1252. X
  1253. X
  1254. X
  1255. X3.3`20Temporary`20Files
  1256. X
  1257. XAll`20temporary`20files`20now`20have`20a`20unique`20name`20derived`20from`20th
  1258. Ve`20PID`20of`20the`20current`20
  1259. Xprocess`20and`20are`20created`20in`20the`20SYS$SCRATCH`20directory`20by`20defa
  1260. Vult.`20The`20choice`20of`20
  1261. Xtemporary`20filename`20and`20location`20may`20be`20overridden`20by`20defining
  1262. V`20the`20logical`20name`20
  1263. XSHARE_TEMP`20to`20whatever`20is`20desired.
  1264. X
  1265. X
  1266. X
  1267. X
  1268. X4.`20CHANGES`20IN`20OPERATION
  1269. X
  1270. XThere`20are`20several`20significant`20changes`20in`20the`20operation`20of`20VM
  1271. VS_SHARE.
  1272. X
  1273. X
  1274. X
  1275. X4.1`20Name`20of`20Share`20File
  1276. X
  1277. XPreviously,`20the`20share`20file`20name`20was`20suffixed`20by`20a`20string`20o
  1278. Vf`20the`20form`20'_n_OF_m'
  1279. Xwhere`20'n'`20was`20the`20part`20number`20and`20'm'`20was`20the`20total`20no
  1280. V`20of`20parts.
  1281. X
  1282. XThe`20share`20file`20name`20is`20now`20suffixed`20only`20by`20the`20'n'`20valu
  1283. Ve`20-`20part`20number.`20This
  1284. Xchange`20is`20a`20consequence`20of`20the`20new`20algorithms`20used`20to`20crea
  1285. Vte`20the`20parts,
  1286. Xwhereby`20the`20total`20number`20of`20parts`20is`20not`20known`20at`20the`20ti
  1287. Vme`20of`20writing`20a
  1288. Xparticular`20part`20to`20a`20file.
  1289. X
  1290. X
  1291. X
  1292. X4.2`20Obsolete`20logical`20names
  1293. X
  1294. XLogical`20names`20supported`20in`20previous`20versions`20of`20VMS_SHARE`20to
  1295. V`20control`20
  1296. Xverification`20of`20the`20operation`20of`20the`20package`20are`20no`20longer
  1297. V`20supported.`20These`20
  1298. Xfunctions`20have`20been`20replaced`20by`20the`20new`20debugging`20code.
  1299. X
  1300. XThese`20logicals`20were`20`20SHARE_VERIFY`20`20and`20`20SHARE_DISPLAY.
  1301. X
  1302. X
  1303. X
  1304. X4.3`20CHECKSUM`20display
  1305. X
  1306. XMessages`20regarding`20checksums`20are`20now`20suppressed`20if`20they`20are
  1307. V`20correct,`20making`20it`20
  1308. Xeasier`20to`20spot`20those`20that`20are`20incorrect.
  1309. X
  1310. X
  1311. X
  1312. X
  1313. X4.4`20Version`20Numbers
  1314. X
  1315. XThe`20original`20version`20numbers`20of`20the`20packaged`20files`20are`20prese
  1316. Vrved`20at`20the`20
  1317. Xunpacking`20stage.`20Previously,`20all`20files`20created`20would`20have`20a
  1318. V`20version`20number`20of`20
  1319. X1.`20This`20change`20allows`20multiple`20versions`20of`20the`20same`20file`20t
  1320. Vo`20be`20packaged`20if`20
  1321. Xrequired.
  1322. X
  1323. X
  1324. X
  1325. X4.5`20Check`20Output`20File`20Existence
  1326. X
  1327. XDuring`20unpacking,`20the`20output`20file`20is`20checked`20to`20see`20if`20it
  1328. V`20already`20exists.`20If`20
  1329. Xit`20does,`20then`20the`20file`20is`20not`20overwritten.`20Instead`20the`20fil
  1330. Ve`20is`20skipped`20and`20a`20
  1331. Xmessage`20written`20to`20that`20effect.`20`20This`20prevents`20the`20previous
  1332. V`20problem`20where`20the`20
  1333. Xexistence`20of`20the`20file`20caused`20the`20new`20version`20to`20be`20ignored
  1334. V`20without`20comment`20and`20
  1335. Xa`20checksum`20failure`20to`20be`20produced.
  1336. X
  1337. X
  1338. X
  1339. X
  1340. X5.0`20TESTING
  1341. X
  1342. XThe`20software`20has`20been`20tested`20under`20VMS`204.7`20and`20VMS`205.1-1.
  1343. V`20It`20should`20be`20noted`20
  1344. Xthat`20this`20version`20of`20VMS_SHARE`20is`20not`20supported`20on`20other`20v
  1345. Versions`20of`20VMS,`20
  1346. Xalthough`20it`20is`20believed`20to`20work`20on`20all`20versions`20between`204.
  1347. V4`20and`205.1-1
  1348. Xinclusive.`20
  1349. $ call unpack VMS_SHARE.RELEASE_NOTES;46 558861127 ""
  1350. $!
  1351. $ create 'f'
  1352. X`20`20`20`20`20`20`20`20`09TECHNICAL`20INFORMATION`20ABOUT`20VMS_SHARE
  1353. X
  1354. X`20`20`20`20`09`09`09`09`09`09`09`09Version`208.2
  1355. X`20`20`20`20`09`09`09`09`09`09`09`09Jan`201993
  1356. X
  1357. X
  1358. X
  1359. X1.`20INTRODUCTION
  1360. X
  1361. XVMS_SHARE`20is`20designed`20to`20package`20a`20series`20of`20files`20into`20a
  1362. V`20form`20that`20can`20be`20
  1363. Xeasily`20mailed`20across`20many`20different`20networks.`20Difficulties`20arise
  1364. V`20with`20doing`20
  1365. Xthis`20because`20of`20the`20many`20and`20varied`20possibilities`20for`20corrup
  1366. +-+-+-+-+-+-+-+-  END  OF PART 6 +-+-+-+-+-+-+-+-
  1367.