[BACK]Return to key.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / ssh

Diff for /src/usr.bin/ssh/Attic/key.c between version 1.19 and 1.20

version 1.19, 2001/03/11 15:03:15 version 1.20, 2001/03/11 15:13:09
Line 236 
Line 236 
         char vowels[] = { 'a', 'e', 'i', 'o', 'u', 'y' };          char vowels[] = { 'a', 'e', 'i', 'o', 'u', 'y' };
         char consonants[] = { 'b', 'c', 'd', 'f', 'g', 'h', 'k', 'l', 'm',          char consonants[] = { 'b', 'c', 'd', 'f', 'g', 'h', 'k', 'l', 'm',
             'n', 'p', 'r', 's', 't', 'v', 'z', 'x' };              'n', 'p', 'r', 's', 't', 'v', 'z', 'x' };
         u_int rounds, idx, retval_idx, seed;          u_int i, j = 0, rounds, seed = 1;
         char *retval;          char *retval;
   
         rounds = (dgst_raw_len / 2) + 1;          rounds = (dgst_raw_len / 2) + 1;
         retval = xmalloc(sizeof(char) * (rounds*6));          retval = xmalloc(sizeof(char) * (rounds*6));
         seed = 1;          retval[j++] = 'x';
         retval_idx = 0;          for (i = 0; i < rounds; i++) {
         retval[retval_idx++] = 'x';  
         for (idx=0;idx<rounds;idx++) {  
                 u_int idx0, idx1, idx2, idx3, idx4;                  u_int idx0, idx1, idx2, idx3, idx4;
                 if ((idx + 1 < rounds) || (dgst_raw_len % 2 != 0)) {                  if ((i + 1 < rounds) || (dgst_raw_len % 2 != 0)) {
                         idx0 = (((((u_int)(dgst_raw[2 * idx])) >> 6) & 3) +                          idx0 = (((((u_int)(dgst_raw[2 * i])) >> 6) & 3) +
                             seed) % 6;                              seed) % 6;
                         idx1 = (((u_int)(dgst_raw[2 * idx])) >> 2) & 15;                          idx1 = (((u_int)(dgst_raw[2 * i])) >> 2) & 15;
                         idx2 = ((((u_int)(dgst_raw[2 * idx])) & 3) +                          idx2 = ((((u_int)(dgst_raw[2 * i])) & 3) +
                             (seed / 6)) % 6;                              (seed / 6)) % 6;
                         retval[retval_idx++] = vowels[idx0];                          retval[j++] = vowels[idx0];
                         retval[retval_idx++] = consonants[idx1];                          retval[j++] = consonants[idx1];
                         retval[retval_idx++] = vowels[idx2];                          retval[j++] = vowels[idx2];
                         if ((idx + 1) < rounds) {                          if ((i + 1) < rounds) {
                                 idx3 = (((u_int)(dgst_raw[(2 * idx) + 1])) >> 4) & 15;                                  idx3 = (((u_int)(dgst_raw[(2 * i) + 1])) >> 4) & 15;
                                 idx4 = (((u_int)(dgst_raw[(2 * idx) + 1]))) & 15;                                  idx4 = (((u_int)(dgst_raw[(2 * i) + 1]))) & 15;
                                 retval[retval_idx++] = consonants[idx3];                                  retval[j++] = consonants[idx3];
                                 retval[retval_idx++] = '-';                                  retval[j++] = '-';
                                 retval[retval_idx++] = consonants[idx4];                                  retval[j++] = consonants[idx4];
                                 seed = ((seed * 5) +                                  seed = ((seed * 5) +
                                     ((((u_int)(dgst_raw[2 * idx])) * 7) +                                      ((((u_int)(dgst_raw[2 * i])) * 7) +
                                     ((u_int)(dgst_raw[(2 * idx) + 1])))) % 36;                                      ((u_int)(dgst_raw[(2 * i) + 1])))) % 36;
                         }                          }
                 } else {                  } else {
                         idx0 = seed % 6;                          idx0 = seed % 6;
                         idx1 = 16;                          idx1 = 16;
                         idx2 = seed / 6;                          idx2 = seed / 6;
                         retval[retval_idx++] = vowels[idx0];                          retval[j++] = vowels[idx0];
                         retval[retval_idx++] = consonants[idx1];                          retval[j++] = consonants[idx1];
                         retval[retval_idx++] = vowels[idx2];                          retval[j++] = vowels[idx2];
                 }                  }
         }          }
         retval[retval_idx++] = 'x';          retval[j++] = 'x';
         retval[retval_idx++] = '\0';          retval[j++] = '\0';
         return retval;          return retval;
 }  }
   

Legend:
Removed from v.1.19  
changed lines
  Added in v.1.20