From: SMTP%"RELAY-INFO-VAX@CRVAX.SRI.COM" 5-AUG-1994 13:27:51.06 To: EVERHART CC: Subj: add lines at fiole start Date: Fri, 5 Aug 1994 11:32:15 -0400 (EDT) From: EVERHART@arisia.gce.com To: INFOVAX@arisia.gce.com Message-Id: <940805113215.62@arisia.gce.com> Subject: add lines at fiole start Adding lines of text or the like at the start of a file normally does mean copying it all. However, depending on what's going on maybe a little kludge is at least possible in principle. If the material to be added occupies an even number of blocks, either by design or padding, then in principle one can append an old file to it by creating a file whose retrieval pointers start with the new file and then have all the pointers for the old one. During this operation one would have two aliases for some disk blocks in one's index file...dangerous, but, hey, if it's YOUR system and you're aware of what's going on maybe it can be dealt with. This requires skill in messing with internals, but could be an efficient way to tack material at the beginning of a file. I suppose that even the double allocation problem could be "solved" (sort of) by creating a header for the first bit, and then turning the old file into an extension header. *I* wouldn't much like to do it this way, though...it is exceedingly ugly and a design that uses such a (mis)feature deserves the opprobrium it will surely get. Nonetheless, there DO arise weird requirements and this might be a way to deal with this one. If you get it wrong, be prepared for lots of file structure rebuilding though, and don't expect all the normal bits to work right with ACLs and the like unless you can really, REALLY, convince VMS that the extension header is one and that the new primary header is really full. In other words, "good luck...you'll need it." Glenn Everhart@Arisia.gce.com