SUMMARY: Making crack v4.1 run under OSF/1 v3.2 (Follow-Up)

From: Patrick Furlong <pfurlong_at_cycor.ca>
Date: Wed, 25 Oct 1995 12:41:24 -0300 (ADT)

Because of the immense number of requests for the patch needed to allow
you to run Crack 4.1 under OSF/1 v3.2, I have decided to post the patch.
It is quite short, so size shouldn't be a problem.

ufc-crypt must be installed before running this patch.

Patrick
--
Patrick Furlong - pfurlong_at_cycor.ca, (902) 629-2493
Programmer Analyst
=========================================================================
                       Cycor Communications Inc.
          "Canada's Coast to Coast Internet Service Provider"
                      URL: http://www.cycor.ca/
                       Voice:  1 (800) AT-CYCOR
                        Fax: 1 (902) 629-2456
=========================================================================
---Cut Here---
*** ufc-crypt/ufc-crypt.h.dist	Thu Mar 19 21:24:09 1992
--- ufc-crypt/ufc-crypt.h	Wed Nov 25 08:52:18 1992
***************
*** 53,58 ****
--- 53,64 ----
  #define _UFC_64_
  #endif
  
+ #ifdef __alpha
+ typedef unsigned long ufc_long;
+ typedef unsigned long long64;
+ #define _UFC_64_
+ #endif
+ 
  /*
   * For debugging 64 bit code etc with 'gcc'
   */
*** Sources/bytesex.c.dist	Thu Mar 19 21:13:46 1992
--- Sources/bytesex.c	Tue Feb 23 17:26:25 1993
***************
*** 4,9 ****
--- 4,10 ----
  {
      char *p;
      long int l;
+     int endian = 0;    /* 1 = big, -1 = little */
  
      l = 'a' << 24 | 'b' << 16 | 'c' << 8 | 'd';
      p = (char *) &l;
***************
*** 23,32 ****
      }
      if (!strncmp (p, "abcd", 4))
      {
! 	puts ("-DBIG_ENDIAN");
      } else if (!strncmp (p, "dcba", 4))
      {
! 	puts ("-DLITTLE_ENDIAN");
      }
      exit (0);
  }
--- 24,56 ----
      }
      if (!strncmp (p, "abcd", 4))
      {
!         endian = 1;
      } else if (!strncmp (p, "dcba", 4))
      {
!         endian = -1;
      }
+     if (endian == 0) {               /* try again after shifting l back 32 */
+         l >>= 32;
+         if (!strncmp (p, "abcd", 4))
+         {
+             endian = 1;
+         } else if (!strncmp (p, "dcba", 4))
+         {
+             endian = -1;
+         }
+     }
+     switch (endian)
+     {
+     case 0:
+         fprintf (stderr, "bytesex: Can't figure out endian of this system!\n");
+         exit(1);
+     case 1:
+         puts ("-DBIG_ENDIAN");
+ 	break;
+     case -1:
+         puts ("-DLITTLE_ENDIAN");
+     }
+ 
+ 
      exit (0);
  }
*** Sources/crack-supp.c.dist	Thu Mar 19 21:13:47 1992
--- Sources/crack-supp.c	Fri Nov 27 17:46:18 1992
***************
*** 44,53 ****
      char *fmt;
      long int a, b, c, d, e, f, g, h, i, j;
  {
!     long t;
  
      time (&t);
!     printf ("pwc: %-15.15s ", ctime (&t) + 4);
      printf (fmt, a, b, c, d, e, f, g, h, i, j);
      fflush (stdout);
  }
--- 44,53 ----
      char *fmt;
      long int a, b, c, d, e, f, g, h, i, j;
  {
!     time_t t;
  
      time (&t);
!     printf ("pwc: %-15.15s ", (char *) ctime (&t) + 4);
      printf (fmt, a, b, c, d, e, f, g, h, i, j);
      fflush (stdout);
  }
Received on Wed Oct 25 1995 - 17:11:16 NZDT

This archive was generated by hypermail 2.4.0 : Wed Nov 08 2023 - 11:53:46 NZDT