shishi-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

inetutils libinetutils/shishi.c rlogind/rlogind...


From: shishi-commit
Subject: inetutils libinetutils/shishi.c rlogind/rlogind...
Date: Fri, 19 Sep 2003 15:45:30 -0400

CVSROOT:        /cvsroot/shishi
Module name:    inetutils
Branch:         
Changes by:     Nicolas Pouvesle <address@hidden>       03/09/19 15:45:30

Modified files:
        libinetutils   : shishi.c 
        rlogind        : rlogind.c 
        rshd           : rshd.c 
        rlogin         : rlogin.c 
        rsh            : rsh.c 

Log message:
        Fix aes mode.

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/shishi/inetutils/libinetutils/shishi.c.diff?tr1=1.4&tr2=1.5&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/shishi/inetutils/rlogind/rlogind.c.diff?tr1=1.4&tr2=1.5&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/shishi/inetutils/rshd/rshd.c.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/shishi/inetutils/rlogin/rlogin.c.diff?tr1=1.4&tr2=1.5&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/shishi/inetutils/rsh/rsh.c.diff?tr1=1.4&tr2=1.5&r1=text&r2=text

Patches:
Index: inetutils/libinetutils/shishi.c
diff -u inetutils/libinetutils/shishi.c:1.4 inetutils/libinetutils/shishi.c:1.5
--- inetutils/libinetutils/shishi.c:1.4 Thu Sep 18 08:50:39 2003
+++ inetutils/libinetutils/shishi.c     Fri Sep 19 15:45:29 2003
@@ -494,21 +494,34 @@
   blocksize = shishi_cipher_blocksize (enctype);
   hashsize =
     shishi_checksum_cksumlen (shishi_cipher_defaultcksumtype (enctype));
+  
+  switch (enctype)
+    {
+    case SHISHI_AES128_CTS_HMAC_SHA1_96:
+    case SHISHI_AES256_CTS_HMAC_SHA1_96:
+      dlen += 4 + hashsize + blocksize;
+      break;
+    case SHISHI_DES3_CBC_HMAC_SHA1_KD:
+    case SHISHI_ARCFOUR_HMAC:
+    case SHISHI_ARCFOUR_HMAC_EXP:
+      dlen += 2*blocksize - 1;
+      if (proto == 2)
+       dlen += 4;
+      dlen /= blocksize;
+      dlen *= blocksize;
+      dlen += hashsize;
+      break;
+    default:
+      dlen += blocksize - 1;
+      if (proto == 2)
+       dlen += 4;
+      dlen += hashsize;
+      dlen /= blocksize;
+      dlen *= blocksize;
+      break;
+    }
 
-  dlen += blocksize - 1;
-  if (proto == 2)
-    dlen += 4;
-  if (enctype != SHISHI_DES3_CBC_HMAC_SHA1_KD)
-    dlen += hashsize;
-  else
-    dlen += blocksize;
-
-  dlen /= blocksize;
-  dlen *= blocksize;
-
-  if (enctype == SHISHI_DES3_CBC_HMAC_SHA1_KD)
-    dlen += hashsize;
-
+  syslog(LOG_ERR, "vla = %d", dlen);
   /* read encrypted data */
   outbis = (char *)xmalloc (dlen);
   if (outbis == NULL)
Index: inetutils/rlogin/rlogin.c
diff -u inetutils/rlogin/rlogin.c:1.4 inetutils/rlogin/rlogin.c:1.5
--- inetutils/rlogin/rlogin.c:1.4       Thu Sep 18 08:51:54 2003
+++ inetutils/rlogin/rlogin.c   Fri Sep 19 15:45:30 2003
@@ -479,13 +479,14 @@
                    case SHISHI_DES_CBC_NONE:
                    case SHISHI_DES3_CBC_HMAC_SHA1_KD:
                      ivtab[i]->keyusage = SHISHI_KEYUSAGE_KCMD_DES;
+                     ivtab[i]->iv = malloc (ivtab[i]->ivlen);
+                     memset (ivtab[i]->iv, !i, ivtab[i]->ivlen);
                      break;
                    default :  
                      ivtab[i]->keyusage = SHISHI_KEYUSAGE_KCMD_DES + 2 + 4*i;
+                     ivtab[i]->iv = malloc (ivtab[i]->ivlen);
+                     memset (ivtab[i]->iv, 0, ivtab[i]->ivlen);
                    }
-                   
-                 ivtab[i]->iv = malloc (ivtab[i]->ivlen);
-                 memset (ivtab[i]->iv, !i, ivtab[i]->ivlen);
                }
            }
        }
Index: inetutils/rlogind/rlogind.c
diff -u inetutils/rlogind/rlogind.c:1.4 inetutils/rlogind/rlogind.c:1.5
--- inetutils/rlogind/rlogind.c:1.4     Wed Sep 17 16:34:10 2003
+++ inetutils/rlogind/rlogind.c Fri Sep 19 15:45:29 2003
@@ -1040,13 +1040,14 @@
            case SHISHI_DES_CBC_NONE:
            case SHISHI_DES3_CBC_HMAC_SHA1_KD:
              ad->ivtab[i]->keyusage = SHISHI_KEYUSAGE_KCMD_DES;
+             ad->ivtab[i]->iv = malloc (ad->ivtab[i]->ivlen);
+             memset (ad->ivtab[i]->iv, i, ad->ivtab[i]->ivlen);
              break;
            default :  
              ad->ivtab[i]->keyusage = SHISHI_KEYUSAGE_KCMD_DES + 6 - 4*i;
-           }
-           
-         ad->ivtab[i]->iv = malloc (ad->ivtab[i]->ivlen);
-         memset (ad->ivtab[i]->iv, i, ad->ivtab[i]->ivlen);
+             ad->ivtab[i]->iv = malloc (ad->ivtab[i]->ivlen);
+             memset (ad->ivtab[i]->iv, 0, ad->ivtab[i]->ivlen);
+           }       
        }
     }
 #endif
Index: inetutils/rsh/rsh.c
diff -u inetutils/rsh/rsh.c:1.4 inetutils/rsh/rsh.c:1.5
--- inetutils/rsh/rsh.c:1.4     Thu Sep 18 08:52:16 2003
+++ inetutils/rsh/rsh.c Fri Sep 19 15:45:30 2003
@@ -450,13 +450,14 @@
                    case SHISHI_DES_CBC_NONE:
                    case SHISHI_DES3_CBC_HMAC_SHA1_KD:
                      ivtab[i]->keyusage = SHISHI_KEYUSAGE_KCMD_DES;
+                     ivtab[i]->iv = malloc (ivtab[i]->ivlen);
+                     memset (ivtab[i]->iv, 2*i + 1*(i<2) - 4*(i>=2), 
ivtab[i]->ivlen);
                      break;
                    default :  
                      ivtab[i]->keyusage = SHISHI_KEYUSAGE_KCMD_DES + 2 + 4*i;
-                   }
-                   
-                 ivtab[i]->iv = malloc (ivtab[i]->ivlen);
-                 memset (ivtab[i]->iv, 2*i + 1*(i<2) - 4*(i>=2), 
ivtab[i]->ivlen);
+                     ivtab[i]->iv = malloc (ivtab[i]->ivlen);
+                     memset (ivtab[i]->iv, 0, ivtab[i]->ivlen);
+                   }               
                }
            }
          free (term);
Index: inetutils/rshd/rshd.c
diff -u inetutils/rshd/rshd.c:1.3 inetutils/rshd/rshd.c:1.4
--- inetutils/rshd/rshd.c:1.3   Wed Sep 17 09:19:00 2003
+++ inetutils/rshd/rshd.c       Fri Sep 19 15:45:29 2003
@@ -617,13 +617,14 @@
               case SHISHI_DES_CBC_NONE:
               case SHISHI_DES3_CBC_HMAC_SHA1_KD:
                 ivtab[i]->keyusage = SHISHI_KEYUSAGE_KCMD_DES;
+                ivtab[i]->iv = malloc (ivtab[i]->ivlen);
+                memset (ivtab[i]->iv, 2*i -3*(i>=2), ivtab[i]->ivlen);
                 break;
               default :  
                 ivtab[i]->keyusage = SHISHI_KEYUSAGE_KCMD_DES + 4*(i<2) + 2 + 
2*(i%2);
+                ivtab[i]->iv = malloc (ivtab[i]->ivlen);
+                memset (ivtab[i]->iv, 0, ivtab[i]->ivlen);
               }
-           
-            ivtab[i]->iv = malloc (ivtab[i]->ivlen);
-            memset (ivtab[i]->iv, 2*i -3*(i>=2), ivtab[i]->ivlen);
           }
 
        }




reply via email to

[Prev in Thread] Current Thread [Next in Thread]