ARC for 4.3BSD (patch for arc)

Paul Lew lew at gsg.UUCP
Wed Mar 30 02:32:42 AEST 1988


emb978 at leah.Albany.Edu (Eric M. Boehm):
> I am looking for arc to run on a SPERRY 7000 under 4.3BSD. The only arc I
> have been able to find via FTP (from iuvax.cs.indiana.edu) is for a VAX
> 11/780 under 4.2BSD. There is VAX specific code that does not work properly
> on the system I am using. Please e-mail responses to:
> 

[My mailer reject: emb978 at leah.Albany.Edu so I post instead.  It might help
 others too.]

I have been using hack-attack 1.3 arc posted to the net on our Vax and Pyramid.
There are some bugs which I had fixed so it will run on the Pyramid.  The
following patch is for hack-attack 1.3 source:

*** arcio.c.old	Tue Jul 28 09:52:25 1987
--- arcio.c	Sat Aug  8 17:05:18 1987
***************
*** 127,132
  FILE *f;                               /* archive to write to */
  {
      unsigned char dummy[28];
  
      fputc(ARCMARK,f);                 /* write out the mark of ARC */
      fputc(hdrver,f);                   /* write out the header version */

--- 127,134 -----
  FILE *f;                               /* archive to write to */
  {
      unsigned char dummy[28];
+     long	longval;
+     INT		INTval;
  
      fputc(ARCMARK,f);                 /* write out the mark of ARC */
      fputc(hdrver,f);                   /* write out the header version */
***************
*** 141,151
   * way HAL does it
   */
      fwrite(hdr->name,1,13,f);
!     fwrite(&hdr->size,sizeof(long),1,f);
!     fwrite(&hdr->date,sizeof(INT),1,f);
!     fwrite(&hdr->time,sizeof(INT),1,f);
!     fwrite(&hdr->crc ,sizeof(INT),1,f);
!     fwrite(&hdr->length,sizeof(long),1,f);
  #endif
  
      /* note the newest file for updating the archive timestamp */

--- 143,167 -----
   * way HAL does it
   */
      fwrite(hdr->name,1,13,f);
!     longval = hdr->size;
! 	fputc ((longval & 0xff), f);
! 	fputc ((longval >>  8) & 0xff, f);
! 	fputc ((longval >> 16) & 0xff, f);
! 	fputc ((longval >> 24) & 0xff, f);
!     INTval = hdr->date;
! 	fputc ((INTval & 0xff), f);
! 	fputc ((INTval >> 8) & 0xff, f);
!     INTval = hdr->time;
! 	fputc ((INTval & 0xff), f);
! 	fputc ((INTval >> 8) & 0xff, f);
!     INTval = hdr->crc;
! 	fputc ((INTval & 0xff), f);
! 	fputc ((INTval >> 8) & 0xff, f);
!     longval = hdr->length;
! 	fputc ((longval & 0xff), f);
! 	fputc ((longval >>  8) & 0xff, f);
! 	fputc ((longval >> 16) & 0xff, f);
! 	fputc ((longval >> 24) & 0xff, f);
  #endif
  
      /* note the newest file for updating the archive timestamp */

-- 
Paul Lew			{oliveb,harvard,decvax}!gsg!lew	(UUCP)
General Systems Group, 5 Manor Parkway, Salem, NH 03079	(603) 893-1000



More information about the Comp.sources.bugs mailing list